Share

ElementTransformUtils.MoveElement Method

Moves one element by a given transformation.


Namespace: Autodesk.Revit.DB
Assembly: RevitAPI (in RevitAPI.dll) Version: 26.1.0.0 (26.1.0.34)

Syntax

C#

public static void MoveElement(
	Document document,
	ElementId elementToMove,
	XYZ translation
)

Parameters

document  Document
The document that owns the elements.
elementToMove  ElementId
The id of the element to move.
translation  XYZ
The translation vector for the elements.

Exceptions

ExceptionCondition
ArgumentException The element elementToMove does not exist in the document
ArgumentNullException A non-optional argument was null
InvalidOperationException If we are not able to move the element (for example, if it is pinned). -or- Move operation failed.

Example

C#

public void MoveColumn(Autodesk.Revit.DB.Document document, FamilyInstance column)
{
    // get the column current location
    LocationPoint columnLocation = column.Location as LocationPoint;

    XYZ oldPlace = columnLocation.Point;

    // Move the column to new location.
    XYZ newPlace = new XYZ(10, 20, 30);
    ElementTransformUtils.MoveElement(document, column.Id, newPlace);

    // now get the column's new location
    columnLocation = column.Location as LocationPoint;
    XYZ newActual = columnLocation.Point;

    string info = "Original Z location: " + oldPlace.Z +
                  "\nNew Z location: " + newActual.Z;

    TaskDialog.Show("Revit",info);
}

VB

Public Sub MoveColumn(document As Autodesk.Revit.DB.Document, column As FamilyInstance)
    ' get the column current location
    Dim columnLocation As LocationPoint = TryCast(column.Location, LocationPoint)

    Dim oldPlace As XYZ = columnLocation.Point

    ' Move the column to new location.
    Dim newPlace As New XYZ(10, 20, 30)
    ElementTransformUtils.MoveElement(document, column.Id, newPlace)

    ' now get the column's new location
    columnLocation = TryCast(column.Location, LocationPoint)
    Dim newActual As XYZ = columnLocation.Point

    Dim info As String = ("Original Z location: " + oldPlace.Z & vbLf & "New Z location: ") + newActual.Z

    TaskDialog.Show("Revit", info)
End Sub

See Also

Reference

Was this information helpful?