Creates a mirrored copy of an element about a given plane.
Namespace: Autodesk.Revit.DBAssembly: RevitAPI (in RevitAPI.dll) Version: 26.4.0.0 (26.4.0.0)
Syntax
C#
public static void MirrorElement(
Document document,
ElementId elementToMirror,
Plane plane
)
Parameters
- document Document
-
The document that owns the element.
- elementToMirror ElementId
-
The element to mirror.
- plane Plane
-
The mirror plane.
Exceptions
| Exception | Condition |
|---|
| ArgumentException |
elementToMirror cannot be mirrored.
-or-
The element elementToMirror does not exist in the document
-or-
The input element is a Sketch member and there is no Sketch in the edit mode to place this element in.
|
| ArgumentNullException |
A non-optional argument was null
|
Example
C#
public void MirrorWall(Autodesk.Revit.DB.Document document, Wall wall)
{
Reference reference = HostObjectUtils.GetSideFaces(wall, ShellLayerType.Exterior).First();
Face face = wall.GetGeometryObjectFromReference(reference) as Face;
UV bboxMin = face.GetBoundingBox().Min;
Plane plane = Plane.CreateByNormalAndOrigin(face.ComputeNormal(bboxMin), face.Evaluate(bboxMin).Add(new XYZ(10, 10, 0)));
ElementTransformUtils.MirrorElement(document, wall.Id, plane);
}
VB
Public Sub MirrorWall(document As Autodesk.Revit.DB.Document, wall As Wall)
Dim reference As Reference = HostObjectUtils.GetSideFaces(wall, ShellLayerType.Exterior).First()
Dim face As Face = TryCast(wall.GetGeometryObjectFromReference(reference), Face)
Dim bboxMin As UV = face.GetBoundingBox().Min
Dim plane As Plane = Autodesk.Revit.DB.Plane.CreateByNormalAndOrigin(face.ComputeNormal(bboxMin), face.Evaluate(bboxMin).Add(New XYZ(10, 10, 0)))
ElementTransformUtils.MirrorElement(document, wall.Id, plane)
End Sub
See Also
Reference