CAD Exchanger SDK
cadex::ModelData_Wire Class Reference

Defines a connected set of edges. More...

Inheritance diagram for cadex::ModelData_Wire:
cadex::ModelData_Shape

Public Member Functions

 ModelData_Wire (const ModelData_Edge &theEdge)
 
 ModelData_Wire (const TopoDS_Wire &)
 
 operator const TopoDS_Wire & () const
 
 operator TopoDS_Wire & ()
 
bool Append (const ModelData_Edge &theEdge)
 Adds an edge to the wire. 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_WireCast (const ModelData_Shape &theShape)
 
static ModelData_WireCast (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 connected set of edges.

The following image depicts an example of a wire:

wire_256.png
Wire

Wire can be used to define a face boundary (i.e. to define a free-form trimming of a surface underlying the face) or just a set of edges.

Wire's direct children are edges which must be connected between each other, i.e. share the same vertices between adjacent edges. Although there is no strict requirement that edges must be oriented in a tail-to-head order this is strongly recommended.

A free wire (not bounding a face) can be either open or closed. A wire bounding a face must be closed.

Examples:
exploring/breprepresentation/main.cxx, modeling/assembly/main.cxx, modeling/brep/bodyutil.cxx, and modeling/brep/faceutil.cxx.

Member Function Documentation

◆ Append()

bool cadex::ModelData_Wire::Append ( const ModelData_Edge theEdge)

Adds an edge to the wire.

There is no requirement that theEdge must be connected to edges already added to the wire. However all the edges in the wire must be connected and properly oriented after adding all edges.

Returns false if theEdge is null and true otherwise.

Examples:
modeling/brep/bodyutil.cxx, and modeling/brep/faceutil.cxx.