Location Class


Location Class

Provides location functionality for all elements.
Inheritance Hierarchy

Namespace: Autodesk.Revit.DB
Assembly: RevitAPI (in RevitAPI.dll) Version: 25.0.0.0 (25.0.0.0)
Syntax
public class Location : APIObject

The Location type exposes the following members.

Properties
Name Description
Public property Code example IsReadOnly Identifies if the object is read-only or modifiable.
(Inherited from APIObject )
Top
Methods
Name Description
Public method Dispose Causes the object to release immediately any resources it may be utilizing.
(Inherited from APIObject )
Public method Equals Determines whether the specified object is equal to the current object.
(Inherited from Object )
Public method GetHashCode Serves as the default hash function.
(Inherited from Object )
Public method GetType Gets the Type of the current instance.
(Inherited from Object )
Public method Code example Move Move the element within the project by a specified vector.
Public method Code example Rotate Rotate the element within the project by a specified angle around a given axis.
Public method ToString Returns a string that represents the current object.
(Inherited from Object )
Top
Remarks
The location object provides the ability to translate and rotate elements. More detailed location information and control can be found by using the derivatives of this object, such as LocationPoint or LocationCurve.
Example
void ShowLocationUsage(Autodesk.Revit.ApplicationServices.Application application, Wall wall)
{
    // Get the location instance.
    Autodesk.Revit.DB.Location position = wall.Location;

    // Check whether the wall is pinned.
    if (wall.Pinned)
    {
        throw new Exception("The wall has been pinned.");
    }

    // Move the wall location, it provides same function as Move method of Document class.
    XYZ direction = new XYZ(10, 0, 0);
    bool result = position.Move(direction);
    if (!result)
    {
        throw new Exception("Move wall location failed.");
    }

    // Rotate the wall location, it provides same function as Rotate method of Document class.
    XYZ axisStart = new XYZ(0, 0, 0);
    XYZ axisEnd = new XYZ(0, 0, 1);
    Line axis = Line.CreateUnbound(axisStart, axisEnd);
    result = position.Rotate(axis, 30);
    if (!result)
    {
        throw new Exception("Rotate wall location failed.");
    }
}
See Also