Open CASCADE Technology Reference Manual 8.0.0
Loading...
Searching...
No Matches
Public Member Functions
ShapeFix_WireSegment Class Reference

This class is auxiliary class (data storage) 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: More...

#include <ShapeFix_WireSegment.hxx>

Public Member Functions

 ShapeFix_WireSegment ()
 Creates empty segment.
 
 ShapeFix_WireSegment (const occ::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 occ::handle< ShapeExtend_WireData > &wire)
 Loads wire.
 
const occ::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 dependence on Orientation()).
 
TopoDS_Vertex LastVertex () const
 Returns last vertex of the last edge in the wire (no dependence on Orientation()).
 
bool IsClosed () const
 Returns True if FirstVertex() == LastVertex()
 
int NbEdges () const
 Returns Number of edges in the wire.
 
TopoDS_Edge Edge (const int i) const
 Returns edge by given index in the wire.
 
void SetEdge (const int i, const TopoDS_Edge &edge)
 Replaces edge at index i by new one.
 
void AddEdge (const int 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 int i, const TopoDS_Edge &edge, const int iumin, const int iumax, const int ivmin, const int 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 int i, const int iumin, const int iumax, const int ivmin, const int ivmax)
 Set patch indices for edge i.
 
void DefineIUMin (const int i, const int iumin)
 
void DefineIUMax (const int i, const int iumax)
 
void DefineIVMin (const int i, const int ivmin)
 
void DefineIVMax (const int i, const int 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 int i, int &iumin, int &iumax, int &ivmin, int &ivmax) const
 Returns patch indices for edge i.
 
bool CheckPatchIndex (const int 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
 
bool IsVertex () const
 

Detailed Description

This class is auxiliary class (data storage) 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:

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.

Constructor & Destructor Documentation

◆ ShapeFix_WireSegment() [1/3]

ShapeFix_WireSegment::ShapeFix_WireSegment ( )

Creates empty segment.

◆ ShapeFix_WireSegment() [2/3]

ShapeFix_WireSegment::ShapeFix_WireSegment ( const occ::handle< ShapeExtend_WireData > & wire,
const TopAbs_Orientation ori = TopAbs_EXTERNAL )

Creates segment and initializes it with wire and orientation.

◆ ShapeFix_WireSegment() [3/3]

ShapeFix_WireSegment::ShapeFix_WireSegment ( const TopoDS_Wire & wire,
const TopAbs_Orientation ori = TopAbs_EXTERNAL )

Creates segment and initializes it with wire and orientation.

Member Function Documentation

◆ AddEdge() [1/2]

void ShapeFix_WireSegment::AddEdge ( const int 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.

◆ AddEdge() [2/2]

void ShapeFix_WireSegment::AddEdge ( const int i,
const TopoDS_Edge & edge,
const int iumin,
const int iumax,
const int ivmin,
const int ivmax )

Insert a new edge with index i and explicitly defined patch indices. If i==0, edge is inserted at end of wire.

◆ CheckPatchIndex()

bool ShapeFix_WireSegment::CheckPatchIndex ( const int i) const

Checks patch indices for edge i to satisfy equations IUMin(i) <= IUMax(i) <= IUMin(i)+1.

◆ Clear()

void ShapeFix_WireSegment::Clear ( )

Clears all fields.

◆ DefineIUMax()

void ShapeFix_WireSegment::DefineIUMax ( const int i,
const int iumax )

◆ DefineIUMin()

void ShapeFix_WireSegment::DefineIUMin ( const int i,
const int iumin )

◆ DefineIVMax()

void ShapeFix_WireSegment::DefineIVMax ( const int i,
const int 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.

◆ DefineIVMin()

void ShapeFix_WireSegment::DefineIVMin ( const int i,
const int ivmin )

◆ Edge()

TopoDS_Edge ShapeFix_WireSegment::Edge ( const int i) const

Returns edge by given index in the wire.

◆ FirstVertex()

TopoDS_Vertex ShapeFix_WireSegment::FirstVertex ( ) const

Returns first vertex of the first edge in the wire (no dependence on Orientation()).

◆ GetPatchIndex()

void ShapeFix_WireSegment::GetPatchIndex ( const int i,
int & iumin,
int & iumax,
int & ivmin,
int & ivmax ) const

Returns patch indices for edge i.

◆ GetVertex()

TopoDS_Vertex ShapeFix_WireSegment::GetVertex ( ) const

◆ IsClosed()

bool ShapeFix_WireSegment::IsClosed ( ) const

Returns True if FirstVertex() == LastVertex()

◆ IsVertex()

bool ShapeFix_WireSegment::IsVertex ( ) const

◆ LastVertex()

TopoDS_Vertex ShapeFix_WireSegment::LastVertex ( ) const

Returns last vertex of the last edge in the wire (no dependence on Orientation()).

◆ Load()

void ShapeFix_WireSegment::Load ( const occ::handle< ShapeExtend_WireData > & wire)

Loads wire.

◆ NbEdges()

int ShapeFix_WireSegment::NbEdges ( ) const

Returns Number of edges in the wire.

◆ Orientation() [1/2]

TopAbs_Orientation ShapeFix_WireSegment::Orientation ( ) const

Returns orientation flag.

◆ Orientation() [2/2]

void ShapeFix_WireSegment::Orientation ( const TopAbs_Orientation ori)

Sets orientation flag.

◆ SetEdge()

void ShapeFix_WireSegment::SetEdge ( const int i,
const TopoDS_Edge & edge )

Replaces edge at index i by new one.

◆ SetPatchIndex()

void ShapeFix_WireSegment::SetPatchIndex ( const int i,
const int iumin,
const int iumax,
const int ivmin,
const int ivmax )

Set patch indices for edge i.

◆ SetVertex()

void ShapeFix_WireSegment::SetVertex ( const TopoDS_Vertex & theVertex)

◆ WireData()

const occ::handle< ShapeExtend_WireData > & ShapeFix_WireSegment::WireData ( ) const

Returns wire.


The documentation for this class was generated from the following file: