Open CASCADE Technology 6.6.0
|
This class is auxiliary class used in ComposeShell.
It is intended for representing segment of the wire
(or whole wire). The segment itself is represented by
ShapeExtend_WireData. In addition, some associated data
necessary for computations are stored:
* Orientation flag - determines current use of the segment
and used for parity checking:
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.
#include <ShapeFix_WireSegment.hxx>
Public Member Functions | |
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 |
ShapeFix_WireSegment::ShapeFix_WireSegment | ( | ) |
ShapeFix_WireSegment::ShapeFix_WireSegment | ( | const Handle< ShapeExtend_WireData > & | wire, |
const TopAbs_Orientation | ori = TopAbs_EXTERNAL |
||
) |
ShapeFix_WireSegment::ShapeFix_WireSegment | ( | const TopoDS_Wire & | wire, |
const TopAbs_Orientation | ori = TopAbs_EXTERNAL |
||
) |
void ShapeFix_WireSegment::AddEdge | ( | const Standard_Integer | i, |
const TopoDS_Edge & | edge | ||
) |
void ShapeFix_WireSegment::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 | ||
) |
Standard_Boolean ShapeFix_WireSegment::CheckPatchIndex | ( | const Standard_Integer | i | ) | const |
void ShapeFix_WireSegment::Clear | ( | ) |
void ShapeFix_WireSegment::DefineIUMax | ( | const Standard_Integer | i, |
const Standard_Integer | iumax | ||
) |
void ShapeFix_WireSegment::DefineIUMin | ( | const Standard_Integer | i, |
const Standard_Integer | iumin | ||
) |
void ShapeFix_WireSegment::DefineIVMax | ( | const Standard_Integer | i, |
const Standard_Integer | ivmax | ||
) |
void ShapeFix_WireSegment::DefineIVMin | ( | const Standard_Integer | i, |
const Standard_Integer | ivmin | ||
) |
TopoDS_Edge ShapeFix_WireSegment::Edge | ( | const Standard_Integer | i | ) | const |
TopoDS_Vertex ShapeFix_WireSegment::FirstVertex | ( | ) | const |
void ShapeFix_WireSegment::GetPatchIndex | ( | const Standard_Integer | i, |
Standard_Integer & | iumin, | ||
Standard_Integer & | iumax, | ||
Standard_Integer & | ivmin, | ||
Standard_Integer & | ivmax | ||
) | const |
TopoDS_Vertex ShapeFix_WireSegment::GetVertex | ( | ) | const |
Standard_Boolean ShapeFix_WireSegment::IsClosed | ( | ) | const |
Standard_Boolean ShapeFix_WireSegment::IsVertex | ( | ) | const |
TopoDS_Vertex ShapeFix_WireSegment::LastVertex | ( | ) | const |
void ShapeFix_WireSegment::Load | ( | const Handle< ShapeExtend_WireData > & | wire | ) |
Standard_Integer ShapeFix_WireSegment::NbEdges | ( | ) | const |
void ShapeFix_WireSegment::Orientation | ( | const TopAbs_Orientation | ori | ) |
TopAbs_Orientation ShapeFix_WireSegment::Orientation | ( | ) | const |
void ShapeFix_WireSegment::SetEdge | ( | const Standard_Integer | i, |
const TopoDS_Edge & | edge | ||
) |
void ShapeFix_WireSegment::SetPatchIndex | ( | const Standard_Integer | i, |
const Standard_Integer | iumin, | ||
const Standard_Integer | iumax, | ||
const Standard_Integer | ivmin, | ||
const Standard_Integer | ivmax | ||
) |
void ShapeFix_WireSegment::SetVertex | ( | const TopoDS_Vertex & | theVertex | ) |
const Handle_ShapeExtend_WireData& ShapeFix_WireSegment::WireData | ( | ) | const |