Defines a connected set of faces. More...
#include <cadex/ModelData/Shell.hxx>
Public Member Functions | |
Shell (const Face &theFace) | |
Constructor. | |
bool | Append (const Face &theFace) |
bool | Append (const std::vector< Face > &theFaces) |
![]() | |
ShapeType | Type () const |
Returns a shape type. For a null object returns Undefined. | |
ShapeOrientation | Orientation () const |
Returns orientation flag. | |
Shape | Reversed () const |
Returns a shape that shares the same geometry and subshape graph but has opposite orientation. | |
Shape | Oriented (ShapeOrientation theOrientation) const |
Returns a shape that shares the same geometry and subshape graph and has specified orientation. | |
bool | IsEqual (const Shape &theOther) const |
Returns true if the shape shares the same geometry and subshape graph, and has equal orientation. | |
bool | IsSame (const Shape &theOther) const |
Returns true if the shape shares the same geometry and subshape graph. | |
void | SetName (const UTF16String &theName) |
UTF16String | Name () const |
![]() | |
size_t | Id () const |
Return unique identifier of public object. | |
internal::BaseObjectImpl * | Impl () const |
bool | IsNull () const |
operator bool () const | |
template<typename T > | |
bool | IsOfType () const |
template<typename T > | |
T * | Impl () const |
Reserved for internal use. | |
Static Public Member Functions | |
static const Shell & | Cast (const Shape &theShape) |
static Shell & | Cast (Shape &theShape) |
static bool | CompareType (const BaseObject &theObject) |
Check the type of object. Returns true if the specified object is this class type. | |
![]() | |
static bool | CompareType (const BaseObject &theObject) |
Check the type of object. Returns true if the specified object is this class type. | |
Additional Inherited Members | |
![]() | |
typedef std::shared_ptr< internal::BaseObjectImpl > | ImplType |
![]() | |
Shape (const ImplType &theImpl) | |
![]() | |
BaseObject (const ImplType &theImpl) | |
Defines a connected set of faces.
The following image depicts an example of a shell:
Direct children of shell are faces which must be connected with each other (i.e. have common edges) and consistently oriented (i.e. each common edge must be forward in one face and reversed in the other).
Although the data model can describe a non-manifold topology (i.e. a common edge shared by more than two faces), it is strongly not recommended to construct such.
Shell bounding a solid must be closed. A shell not belonging to a solid may have free edges (i.e. shared by one face only).