Open CASCADE Technology 7.8.0
Public Member Functions
ShapeAnalysis_WireVertex Class Reference

Analyzes and records status of vertices in a Wire. More...

#include <ShapeAnalysis_WireVertex.hxx>

Public Member Functions

 ShapeAnalysis_WireVertex ()
 Empty constructor.
 
void Init (const TopoDS_Wire &wire, const Standard_Real preci)
 
void Init (const Handle< ShapeExtend_WireData > &swbd, const Standard_Real preci)
 
void Load (const TopoDS_Wire &wire)
 
void Load (const Handle< ShapeExtend_WireData > &sbwd)
 
void SetPrecision (const Standard_Real preci)
 Sets the precision for work Analysing: for each Vertex, comparison between the end of the preceding edge and the start of the following edge Each Vertex rank corresponds to the End Vertex of the Edge of same rank, in the ShapeExtend_WireData. I.E. for Vertex <num>, Edge <num> is the preceding one, <num+1> is the following one.
 
void Analyze ()
 
void SetSameVertex (const Standard_Integer num)
 Records status "Same Vertex" (logically) on Vertex <num>
 
void SetSameCoords (const Standard_Integer num)
 Records status "Same Coords" (at the Vertices Tolerances)
 
void SetClose (const Standard_Integer num)
 Records status "Close Coords" (at the Precision of <me>)
 
void SetEnd (const Standard_Integer num, const gp_XYZ &pos, const Standard_Real ufol)
 <num> is the End of preceding Edge, and its projection on the following one lies on it at the Precision of <me> <ufol> gives the parameter on the following edge
 
void SetStart (const Standard_Integer num, const gp_XYZ &pos, const Standard_Real upre)
 <num> is the Start of following Edge, its projection on the preceding one lies on it at the Precision of <me> <upre> gives the parameter on the preceding edge
 
void SetInters (const Standard_Integer num, const gp_XYZ &pos, const Standard_Real upre, const Standard_Real ufol)
 <num> is the Intersection of both Edges <upre> is the parameter on preceding edge, <ufol> on following edge
 
void SetDisjoined (const Standard_Integer num)
 <num> cannot be said as same vertex
 
Standard_Boolean IsDone () const
 Returns True if analysis was performed, else returns False.
 
Standard_Real Precision () const
 Returns precision value used in analysis.
 
Standard_Integer NbEdges () const
 Returns the number of edges in analyzed wire (i.e. the length of all arrays)
 
const Handle< ShapeExtend_WireData > & WireData () const
 Returns analyzed wire.
 
Standard_Integer Status (const Standard_Integer num) const
 Returns the recorded status for a vertex More detail by method Data.
 
gp_XYZ Position (const Standard_Integer num) const
 
Standard_Real UPrevious (const Standard_Integer num) const
 
Standard_Real UFollowing (const Standard_Integer num) const
 
Standard_Integer Data (const Standard_Integer num, gp_XYZ &pos, Standard_Real &upre, Standard_Real &ufol) const
 Returns the recorded status for a vertex With its recorded position and parameters on both edges These values are relevant regarding the status: Status Meaning Position Preceding Following 0 Same no no no 1 SameCoord no no no 2 Close no no no 3 End yes no yes 4 Start yes yes no 5 Inters yes yes yes -1 Disjoined no no no.
 
Standard_Integer NextStatus (const Standard_Integer stat, const Standard_Integer num=0) const
 For a given status, returns the rank of the vertex which follows <num> and has the same status. 0 if no more Acts as an iterator, starts on the first one.
 
Standard_Integer NextCriter (const Standard_Integer crit, const Standard_Integer num=0) const
 For a given criter, returns the rank of the vertex which follows <num> and has the same status. 0 if no more Acts as an iterator, starts on the first one Criters are: 0: same vertex (status 0) 1: a solution exists (status >= 0) 2: same coords (i.e. same params) (status 0 1 2) 3: same coods but not same vertex (status 1 2) 4: redefined coords (status 3 4 5) -1: no solution (status -1)
 

Detailed Description

Analyzes and records status of vertices in a Wire.

The Wire has formerly been loaded in a ShapeExtend_WireData For each Vertex, a status and some data can be attached (case found, position and parameters) Then, these information can be used to fix problems

Constructor & Destructor Documentation

◆ ShapeAnalysis_WireVertex()

ShapeAnalysis_WireVertex::ShapeAnalysis_WireVertex ( )

Empty constructor.

Member Function Documentation

◆ Analyze()

void ShapeAnalysis_WireVertex::Analyze ( )

◆ Data()

Standard_Integer ShapeAnalysis_WireVertex::Data ( const Standard_Integer  num,
gp_XYZ pos,
Standard_Real upre,
Standard_Real ufol 
) const

Returns the recorded status for a vertex With its recorded position and parameters on both edges These values are relevant regarding the status: Status Meaning Position Preceding Following 0 Same no no no 1 SameCoord no no no 2 Close no no no 3 End yes no yes 4 Start yes yes no 5 Inters yes yes yes -1 Disjoined no no no.

◆ Init() [1/2]

void ShapeAnalysis_WireVertex::Init ( const Handle< ShapeExtend_WireData > &  swbd,
const Standard_Real  preci 
)

◆ Init() [2/2]

void ShapeAnalysis_WireVertex::Init ( const TopoDS_Wire wire,
const Standard_Real  preci 
)

◆ IsDone()

Standard_Boolean ShapeAnalysis_WireVertex::IsDone ( ) const

Returns True if analysis was performed, else returns False.

◆ Load() [1/2]

void ShapeAnalysis_WireVertex::Load ( const Handle< ShapeExtend_WireData > &  sbwd)

◆ Load() [2/2]

void ShapeAnalysis_WireVertex::Load ( const TopoDS_Wire wire)

◆ NbEdges()

Standard_Integer ShapeAnalysis_WireVertex::NbEdges ( ) const

Returns the number of edges in analyzed wire (i.e. the length of all arrays)

◆ NextCriter()

Standard_Integer ShapeAnalysis_WireVertex::NextCriter ( const Standard_Integer  crit,
const Standard_Integer  num = 0 
) const

For a given criter, returns the rank of the vertex which follows <num> and has the same status. 0 if no more Acts as an iterator, starts on the first one Criters are: 0: same vertex (status 0) 1: a solution exists (status >= 0) 2: same coords (i.e. same params) (status 0 1 2) 3: same coods but not same vertex (status 1 2) 4: redefined coords (status 3 4 5) -1: no solution (status -1)

◆ NextStatus()

Standard_Integer ShapeAnalysis_WireVertex::NextStatus ( const Standard_Integer  stat,
const Standard_Integer  num = 0 
) const

For a given status, returns the rank of the vertex which follows <num> and has the same status. 0 if no more Acts as an iterator, starts on the first one.

◆ Position()

gp_XYZ ShapeAnalysis_WireVertex::Position ( const Standard_Integer  num) const

◆ Precision()

Standard_Real ShapeAnalysis_WireVertex::Precision ( ) const

Returns precision value used in analysis.

◆ SetClose()

void ShapeAnalysis_WireVertex::SetClose ( const Standard_Integer  num)

Records status "Close Coords" (at the Precision of <me>)

◆ SetDisjoined()

void ShapeAnalysis_WireVertex::SetDisjoined ( const Standard_Integer  num)

<num> cannot be said as same vertex

◆ SetEnd()

void ShapeAnalysis_WireVertex::SetEnd ( const Standard_Integer  num,
const gp_XYZ pos,
const Standard_Real  ufol 
)

<num> is the End of preceding Edge, and its projection on the following one lies on it at the Precision of <me> <ufol> gives the parameter on the following edge

◆ SetInters()

void ShapeAnalysis_WireVertex::SetInters ( const Standard_Integer  num,
const gp_XYZ pos,
const Standard_Real  upre,
const Standard_Real  ufol 
)

<num> is the Intersection of both Edges <upre> is the parameter on preceding edge, <ufol> on following edge

◆ SetPrecision()

void ShapeAnalysis_WireVertex::SetPrecision ( const Standard_Real  preci)

Sets the precision for work Analysing: for each Vertex, comparison between the end of the preceding edge and the start of the following edge Each Vertex rank corresponds to the End Vertex of the Edge of same rank, in the ShapeExtend_WireData. I.E. for Vertex <num>, Edge <num> is the preceding one, <num+1> is the following one.

◆ SetSameCoords()

void ShapeAnalysis_WireVertex::SetSameCoords ( const Standard_Integer  num)

Records status "Same Coords" (at the Vertices Tolerances)

◆ SetSameVertex()

void ShapeAnalysis_WireVertex::SetSameVertex ( const Standard_Integer  num)

Records status "Same Vertex" (logically) on Vertex <num>

◆ SetStart()

void ShapeAnalysis_WireVertex::SetStart ( const Standard_Integer  num,
const gp_XYZ pos,
const Standard_Real  upre 
)

<num> is the Start of following Edge, its projection on the preceding one lies on it at the Precision of <me> <upre> gives the parameter on the preceding edge

◆ Status()

Standard_Integer ShapeAnalysis_WireVertex::Status ( const Standard_Integer  num) const

Returns the recorded status for a vertex More detail by method Data.

◆ UFollowing()

Standard_Real ShapeAnalysis_WireVertex::UFollowing ( const Standard_Integer  num) const

◆ UPrevious()

Standard_Real ShapeAnalysis_WireVertex::UPrevious ( const Standard_Integer  num) const

◆ WireData()

const Handle< ShapeExtend_WireData > & ShapeAnalysis_WireVertex::WireData ( ) const

Returns analyzed wire.


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