CAD Exchanger SDK
cadex::ModelData_Solid Class Reference

Defines a topological solid. More...

Inheritance diagram for cadex::ModelData_Solid:
cadex::ModelData_Shape

Public Member Functions

 ModelData_Solid (const ModelData_Shell &theShell)
 Constructor.
 
 ModelData_Solid (const TopoDS_Solid &)
 
 operator const TopoDS_Solid & () const
 
 operator TopoDS_Solid & ()
 
bool Append (const ModelData_Shell &theShell)
 Adds a shell to the solid. More...
 
- Public Member Functions inherited from cadex::ModelData_Shape
 ModelData_Shape ()
 Constructor.
 
 ModelData_Shape (const ModelData_Shape &theOther)
 Constructor.
 
 ModelData_Shape (ModelData_Shape &&theOther)
 Move constructor.
 
 ~ModelData_Shape ()
 Destructor.
 
ModelData_Shapeoperator= (const ModelData_Shape &theOther)
 Assignment operator.
 
ModelData_Shapeoperator= (ModelData_Shape &&theOther)
 Move assignment operator.
 
 operator const TopoDS_Shape & () const
 Casts this object to TopoDS_Shape. More...
 
ModelData_ShapeType Type () const
 Returns a shape type. More...
 
ModelData_ShapeOrientation Orientation () const
 Returns orientation flag. More...
 
ModelData_Shape Reversed () const
 Returns a shape that shares the same geometry and subshape graph but has opposite orientation. More...
 
ModelData_Shape Oriented (ModelData_ShapeOrientation theOrientation) const
 Returns a shape that shares the same geometry and subshape graph and has specified orientation. More...
 
void Nullify ()
 Nullifies the object. More...
 
bool IsNull () const
 Returns true if the object has not been initialized yet.
 
 operator bool () const
 Returns true if the object is not null. More...
 
bool IsEqual (const ModelData_Shape &theOther) const
 Returns true if the shape shares the same geometry and subshape graph, and has equal orientation. More...
 
bool IsSame (const ModelData_Shape &theOther) const
 Returns true if the shape shares the same geometry and subshape graph. More...
 
internal::ModelData_ShapeImpl * Impl () const
 Returns internal implementation object.
 

Static Public Member Functions

static const ModelData_SolidCast (const ModelData_Shape &theShape)
 
static ModelData_SolidCast (ModelData_Shape &theShape)
 

Additional Inherited Members

- Protected Member Functions inherited from cadex::ModelData_Shape
 ModelData_Shape (const TopoDS_Shape &theOther, bool)
 Constructor.
 
 ModelData_Shape (internal::ModelData_ShapeImpl *theImpl)
 Constructor.
 
- Protected Attributes inherited from cadex::ModelData_Shape
internal::Base_Handle myImpl
 Internal implementation object.
 

Detailed Description

Defines a topological solid.

The following image depicts an example of a solid:

solid_256.png
Solid

As a rule, a solid has a single external shell. Solids with voids (i.e. multiple shells) are also supported.

Shells must be oriented so that the solid corresponds to a finite volume in 3D space.

Examples:
exploring/validationproperties/main.cxx, meshing/lods/main.cxx, modeling/assembly/main.cxx, modeling/brep/bodyutil.cxx, modeling/brepprimitives/main.cxx, and modeling/metadata/main.cxx.

Member Function Documentation

◆ Append()

bool cadex::ModelData_Solid::Append ( const ModelData_Shell theShell)

Adds a shell to the solid.

There must be single outer (external) shell and zero, one or more inner shells (i.e. voids). It is strongly recommended (although not required) that the first shell being added is an outer shell. Solids with voids may have limited support in CAD Exchanger and other systems.

Returns false if theShell is null and true otherwise.