Public Member Functions |
DEFINE_STANDARD_ALLOC | ShapeFix_WireSegment () |
| Creates empty segment.
|
| ShapeFix_WireSegment (const Handle< ShapeExtend_WireData > &wire, const TopAbs_Orientation ori=TopAbs_EXTERNAL) |
| Creates segment and initializes it with wire and orientation.
|
| ShapeFix_WireSegment (const TopoDS_Wire &wire, const TopAbs_Orientation ori=TopAbs_EXTERNAL) |
| Creates segment and initializes it with wire and orientation.
|
void | Clear () |
| Clears all fields.
|
void | Load (const Handle< ShapeExtend_WireData > &wire) |
| Loads wire.
|
const Handle_ShapeExtend_WireData & | WireData () const |
| Returns wire.
|
void | Orientation (const TopAbs_Orientation ori) |
| Sets orientation flag.
|
TopAbs_Orientation | Orientation () const |
| Returns orientation flag.
|
TopoDS_Vertex | FirstVertex () const |
| Returns first vertex of the first edge in the wire
(no dependance on Orientation()).
|
TopoDS_Vertex | LastVertex () const |
| Returns last vertex of the last edge in the wire
(no dependance on Orientation()).
|
Standard_Boolean | IsClosed () const |
| Returns True if FirstVertex() == LastVertex()
|
Standard_Integer | NbEdges () const |
| Returns Number of edges in the wire
|
TopoDS_Edge | Edge (const Standard_Integer i) const |
| Returns edge by given index in the wire
|
void | SetEdge (const Standard_Integer i, const TopoDS_Edge &edge) |
| Replaces edge at index i by new one.
|
void | AddEdge (const Standard_Integer i, const TopoDS_Edge &edge) |
| Insert a new edge with index i and implicitly defined
patch indices (indefinite patch).
If i==0, edge is inserted at end of wire.
|
void | AddEdge (const Standard_Integer i, const TopoDS_Edge &edge, const Standard_Integer iumin, const Standard_Integer iumax, const Standard_Integer ivmin, const Standard_Integer ivmax) |
| Insert a new edge with index i and explicitly defined
patch indices. If i==0, edge is inserted at end of wire.
|
void | SetPatchIndex (const Standard_Integer i, const Standard_Integer iumin, const Standard_Integer iumax, const Standard_Integer ivmin, const Standard_Integer ivmax) |
| Set patch indices for edge i.
|
void | DefineIUMin (const Standard_Integer i, const Standard_Integer iumin) |
void | DefineIUMax (const Standard_Integer i, const Standard_Integer iumax) |
void | DefineIVMin (const Standard_Integer i, const Standard_Integer ivmin) |
void | DefineIVMax (const Standard_Integer i, const Standard_Integer ivmax) |
| Modify minimal or maximal patch index for edge i.
The corresponding patch index for that edge is modified so
as to satisfy eq. iumin <= myIUMin(i) <= myIUMax(i) <= iumax
|
void | GetPatchIndex (const Standard_Integer i, Standard_Integer &iumin, Standard_Integer &iumax, Standard_Integer &ivmin, Standard_Integer &ivmax) const |
| Returns patch indices for edge i.
|
Standard_Boolean | CheckPatchIndex (const Standard_Integer i) const |
| Checks patch indices for edge i to satisfy equations
IUMin(i) <= IUMax(i) <= IUMin(i)+1
|
void | SetVertex (const TopoDS_Vertex &theVertex) |
TopoDS_Vertex | GetVertex () const |
Standard_Boolean | IsVertex () const |
* Orientation flag - determines current use of the segment <br>
and used for parity checking: <br>
TopAbs_FORWARD and TopAbs_REVERSED - says that segment was
traversed once in the corresponding direction, and hence
it should be traversed once more in opposite direction;
TopAbs_EXTERNAL - the segment was not yet traversed in any
direction (i.e. not yet used as boundary)
TopAbs_INTERNAL - the segment was traversed in both
directions and hence is out of further work.
Segments of initial bounding wires are created with
orientation REVERSED (for outer wire) or FORWARD (for inner
wires), and segments of splitting seams - with orientation
EXTERNAL.