The Z projection option.
Namespace: Autodesk.Revit.DB.StructureAssembly: RevitAPI (in RevitAPI.dll) Version: 21.0.0.0 (21.1.1.109)
Since: 2015
Syntax
C# |
---|
public SurfaceElementProjectionZ ProjectionZ { get; set; } |
Visual Basic |
---|
Public Property ProjectionZ As SurfaceElementProjectionZ Get Set |
Visual C++ |
---|
public: property SurfaceElementProjectionZ ProjectionZ { SurfaceElementProjectionZ get (); void set (SurfaceElementProjectionZ value); } |
Remarks
Retrieves and set analytical model projection information for Z direction.
To set projection to level, grid or plane use ProjectionPlaneZ property.
Examples

/// <summary> /// Change the Z projection for all surface elements to BottomOrExterior /// </summary> public void ChangeSurfaceProjections(Document document) { FilteredElementCollector collector = new FilteredElementCollector(document); IList<Element> elements = collector.WherePasses(new ElementClassFilter(typeof(AnalyticalModelSurface))).WhereElementIsNotElementType().ToElements(); if (elements.Count > 0) { using (Transaction tran = new Transaction(document, "Change Surface Projections")) { tran.Start(); foreach (AnalyticalModelSurface ams in elements) { SurfaceElementProjectionZ orgEndProj = ams.ProjectionZ; SurfaceElementProjectionZ newEndProj = SurfaceElementProjectionZ.BottomOrExterior; ams.ProjectionZ = newEndProj; } tran.Commit(); } } }

''' <summary> ''' Change the Z projection for all surface elements to BottomOrExterior ''' </summary> Public Sub ChangeSurfaceProjections(document As Document) Dim collector As New FilteredElementCollector(document) Dim elements As IList(Of Element) = collector.WherePasses(New ElementClassFilter(GetType(AnalyticalModelSurface))).WhereElementIsNotElementType().ToElements() If elements.Count > 0 Then Using tran As New Transaction(document, "Change Surface Projections") tran.Start() For Each ams As AnalyticalModelSurface In elements Dim orgEndProj As SurfaceElementProjectionZ = ams.ProjectionZ Dim newEndProj As SurfaceElementProjectionZ = SurfaceElementProjectionZ.BottomOrExterior ams.ProjectionZ = newEndProj Next tran.Commit() End Using End If End Sub
Exceptions
Exception | Condition |
---|---|
Autodesk.Revit.Exceptions..::..ArgumentOutOfRangeException | When setting this property: A value passed for an enumeration argument is not a member of that enumeration |