Namespace:
Autodesk.Revit.DB
Solid
Class
Description:
A 3d solid.
A 3d solid.
Remarks:
A solid is defined by the faces and edges that form its boundary.
A solid is defined by the faces and edges that form its boundary.
Inheritance Hierarchy:
System.Object
Autodesk.Revit.DB.APIObject
Autodesk.Revit.DB.GeometryObject
Autodesk.Revit.DB.Solid
System.Object
Autodesk.Revit.DB.APIObject
Autodesk.Revit.DB.GeometryObject
Autodesk.Revit.DB.Solid
Examples
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);
}
}
}
}
}
}
Solid Class Members:
Name | Description | Inherited From |
---|---|---|
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 ) | GeometryObject |
Id | A unique integer identifying the GeometryObject in its associated non view-specific GeometryElement. (Inherited from GeometryObject ) | GeometryObject |
IsElementGeometry | Indicates whether this geometry is obtained directly from an Element. (Inherited from GeometryObject ) | GeometryObject |
IsReadOnly | Identifies if the object is read-only or modifiable. (Inherited from APIObject ) | APIObject |
SurfaceArea | Returns the total surface area of this solid. | |
Visibility | The visibility. (Inherited from GeometryObject ) | GeometryObject |
Volume | Returns the signed volume of this solid. |
Name | Description | Inherited From |
---|---|---|
ComputeCentroid | Returns the Centroid of this solid. | |
Dispose | Causes the object to release immediately any resources it may be utilizing. (Inherited from APIObject ) | APIObject |
Equals | Determines whether the specified Object is equal to the current Object . (Inherited from GeometryObject ) | Object |
GetBoundingBox | Retrieves a box that circumscribes the solid geometry. | |
GetHashCode | Gets the integer value of the geometry object as hash code (Inherited from GeometryObject ) | GeometryObject |
GetType | Gets the Type of the current instance. (Inherited from Object ) | 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 ) | Object |