Solid Class |
The Solid type exposes the following members.
Name | Description | |
---|---|---|
![]() | Edges | The edges that belong to the solid. |
![]() ![]() | Faces | The faces that belong to the solid. |
![]() ![]() | GraphicsStyleId | The ElementId of the GeometryObject's GraphicsStyle (Inherited from GeometryObject) |
![]() | Id | A unique integer identifying the GeometryObject in its associated non view-specific GeometryElement. (Inherited from GeometryObject) |
![]() | IsElementGeometry | Indicates whether this geometry is obtained directly from an Element. (Inherited from GeometryObject) |
![]() ![]() | IsReadOnly | Identifies if the object is read-only or modifiable. (Inherited from APIObject) |
![]() | SurfaceArea | Returns the total surface area of this solid. |
![]() | Visibility | The visibility. (Inherited from GeometryObject) |
![]() | Volume | Returns the signed volume of this solid. |
Name | Description | |
---|---|---|
![]() | ComputeCentroid | Returns the Centroid of this solid. |
![]() | Dispose | Causes the object to release immediately any resources it may be utilizing. (Inherited from APIObject) |
![]() | Equals | Determines whether the specified Object is equal to the current Object. (Inherited from GeometryObject) |
![]() | GetBoundingBox | Retrieves a box that circumscribes the solid geometry. |
![]() | GetHashCode |
Gets the integer value of the geometry object as hash code
(Inherited from GeometryObject) |
![]() | GetType | Gets the Type of the current instance. (Inherited from Object) |
![]() ![]() | IntersectWithCurve | Calculates and returns the intersection between a curve and this solid. |
![]() | ToString | Returns a string that represents the current object. (Inherited from Object) |
private void GetAndTransformSolidInfo(Application application, Element element, Options geoOptions) { // Get geometry element of the selected element Autodesk.Revit.DB.GeometryElement geoElement = element.get_Geometry(geoOptions); // Get geometry object foreach (GeometryObject geoObject in geoElement) { // Get the geometry instance which contains the geometry information Autodesk.Revit.DB.GeometryInstance instance = geoObject as Autodesk.Revit.DB.GeometryInstance; if (null != instance) { foreach (GeometryObject instObj in instance.SymbolGeometry) { Solid solid = instObj as Solid; if (null == solid || 0 == solid.Faces.Size || 0 == solid.Edges.Size) { continue; } Transform instTransform = instance.Transform; // Get the faces and edges from solid, and transform the formed points foreach (Face face in solid.Faces) { Mesh mesh = face.Triangulate(); foreach (XYZ ii in mesh.Vertices) { XYZ point = ii; XYZ transformedPoint = instTransform.OfPoint(point); } } foreach (Edge edge in solid.Edges) { foreach (XYZ ii in edge.Tessellate()) { XYZ point = ii; XYZ transformedPoint = instTransform.OfPoint(point); } } } } } }