Creates a mirrored copy of an element about a given plane.
Namespace: Autodesk.Revit.DB
Assembly: RevitAPI (in RevitAPI.dll) Version: 26.1.0.0 (26.1.0.34)
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; // get one of the wall's major side faces UV bboxMin = face.GetBoundingBox().Min; Plane plane = Plane.CreateByNormalAndOrigin(face.ComputeNormal(bboxMin), face.Evaluate(bboxMin).Add(new XYZ(10, 10, 0))); // create a plane based on this side face with an offset of 10 in the X & Y directions 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) ' get one of the wall's major side faces 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))) ' create a plane based on this side face with an offset of 10 in the X & Y directions ElementTransformUtils.MirrorElement(document, wall.Id, plane) End Sub