Open CASCADE Technology Reference Manual 8.0.0
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Protected Member Functions
BRepClass3d_SolidExplorer Class Reference

Provide an exploration of a BRep Shape for the classification. Provide access to the special UB tree to obtain fast search. More...

#include <BRepClass3d_SolidExplorer.hxx>

Public Member Functions

 BRepClass3d_SolidExplorer ()
 
 BRepClass3d_SolidExplorer (const TopoDS_Shape &S)
 
virtual ~BRepClass3d_SolidExplorer ()
 
void InitShape (const TopoDS_Shape &S)
 
virtual bool Reject (const gp_Pnt &P) const
 Should return True if P outside of bounding vol. of the shape.
 
bool PointInTheFace (const TopoDS_Face &F, gp_Pnt &P, double &u, double &v, double &Param, int &Index) const
 
bool PointInTheFace (const TopoDS_Face &F, gp_Pnt &P, double &u, double &v, double &Param, int &Index, const occ::handle< BRepAdaptor_Surface > &surf, const double u1, const double v1, const double u2, const double v2) const
 
bool PointInTheFace (const TopoDS_Face &F, gp_Pnt &P, double &u, double &v, double &Param, int &Index, const occ::handle< BRepAdaptor_Surface > &surf, const double u1, const double v1, const double u2, const double v2, gp_Vec &theVecD1U, gp_Vec &theVecD1V) const
 <Index> gives point index to search from and returns point index of succeseful search
 
void InitShell ()
 Starts an exploration of the shells.
 
bool MoreShell () const
 Returns True if there is a current shell.
 
void NextShell ()
 Sets the explorer to the next shell.
 
TopoDS_Shell CurrentShell () const
 Returns the current shell.
 
virtual bool RejectShell (const gp_Lin &L) const
 Returns True if the Shell is rejected.
 
void InitFace ()
 Starts an exploration of the faces of the current shell.
 
bool MoreFace () const
 Returns True if current face in current shell.
 
void NextFace ()
 Sets the explorer to the next Face of the current shell.
 
TopoDS_Face CurrentFace () const
 Returns the current face.
 
virtual bool RejectFace (const gp_Lin &L) const
 returns True if the face is rejected.
 
int Segment (const gp_Pnt &P, gp_Lin &L, double &Par)
 Returns in <L>, <Par> a segment having at least one intersection with the shape boundary to compute intersections.
 
int OtherSegment (const gp_Pnt &P, gp_Lin &L, double &Par)
 Returns in <L>, <Par> a segment having at least one intersection with the shape boundary to compute intersections.
 
int GetFaceSegmentIndex () const
 Returns the index of face for which last segment is calculated.
 
virtual void DumpSegment (const gp_Pnt &P, const gp_Lin &L, const double Par, const TopAbs_State S) const
 
const TopoDS_ShapeGetShape () const
 
IntCurvesFace_IntersectorIntersector (const TopoDS_Face &F) const
 
const NCollection_UBTree< int, Bnd_Box > & GetTree ()
 Return UB-tree instance which is used for edge / vertex checks.
 
const NCollection_IndexedMap< TopoDS_Shape, TopTools_ShapeMapHasher > & GetMapEV ()
 Return edge/vertices map for current shape.
 
void Destroy ()
 

Static Public Member Functions

static bool FindAPointInTheFace (const TopoDS_Face &F, gp_Pnt &P, double &Param)
 compute a point P in the face F. Param is a Real in ]0,1[ and is used to initialise the algorithm. For different values , different points are returned.
 
static bool FindAPointInTheFace (const TopoDS_Face &F, gp_Pnt &P, double &u, double &v, double &Param)
 
static bool FindAPointInTheFace (const TopoDS_Face &F, gp_Pnt &P, double &u, double &v, double &Param, gp_Vec &theVecD1U, gp_Vec &theVecD1V)
 
static bool FindAPointInTheFace (const TopoDS_Face &F, gp_Pnt &P, double &u, double &v)
 
static bool FindAPointInTheFace (const TopoDS_Face &F, gp_Pnt &P)
 
static bool FindAPointInTheFace (const TopoDS_Face &F, double &u, double &v)
 

Protected Member Functions

TopAbs_State ClassifyUVPoint (const IntCurvesFace_Intersector &theIntersector, const occ::handle< BRepAdaptor_Surface > &theSurf, const gp_Pnt2d &theP2d) const
 

Detailed Description

Provide an exploration of a BRep Shape for the classification. Provide access to the special UB tree to obtain fast search.

Constructor & Destructor Documentation

◆ BRepClass3d_SolidExplorer() [1/2]

BRepClass3d_SolidExplorer::BRepClass3d_SolidExplorer ( )

◆ BRepClass3d_SolidExplorer() [2/2]

BRepClass3d_SolidExplorer::BRepClass3d_SolidExplorer ( const TopoDS_Shape & S)

◆ ~BRepClass3d_SolidExplorer()

virtual BRepClass3d_SolidExplorer::~BRepClass3d_SolidExplorer ( )
virtual

Member Function Documentation

◆ ClassifyUVPoint()

TopAbs_State BRepClass3d_SolidExplorer::ClassifyUVPoint ( const IntCurvesFace_Intersector & theIntersector,
const occ::handle< BRepAdaptor_Surface > & theSurf,
const gp_Pnt2d & theP2d ) const
protected

◆ CurrentFace()

TopoDS_Face BRepClass3d_SolidExplorer::CurrentFace ( ) const

Returns the current face.

◆ CurrentShell()

TopoDS_Shell BRepClass3d_SolidExplorer::CurrentShell ( ) const

Returns the current shell.

◆ Destroy()

void BRepClass3d_SolidExplorer::Destroy ( )

◆ DumpSegment()

virtual void BRepClass3d_SolidExplorer::DumpSegment ( const gp_Pnt & P,
const gp_Lin & L,
const double Par,
const TopAbs_State S ) const
virtual

◆ FindAPointInTheFace() [1/6]

static bool BRepClass3d_SolidExplorer::FindAPointInTheFace ( const TopoDS_Face & F,
double & u,
double & v )
static

◆ FindAPointInTheFace() [2/6]

static bool BRepClass3d_SolidExplorer::FindAPointInTheFace ( const TopoDS_Face & F,
gp_Pnt & P )
static

◆ FindAPointInTheFace() [3/6]

static bool BRepClass3d_SolidExplorer::FindAPointInTheFace ( const TopoDS_Face & F,
gp_Pnt & P,
double & Param )
static

compute a point P in the face F. Param is a Real in ]0,1[ and is used to initialise the algorithm. For different values , different points are returned.

◆ FindAPointInTheFace() [4/6]

static bool BRepClass3d_SolidExplorer::FindAPointInTheFace ( const TopoDS_Face & F,
gp_Pnt & P,
double & u,
double & v )
static

◆ FindAPointInTheFace() [5/6]

static bool BRepClass3d_SolidExplorer::FindAPointInTheFace ( const TopoDS_Face & F,
gp_Pnt & P,
double & u,
double & v,
double & Param )
static

◆ FindAPointInTheFace() [6/6]

static bool BRepClass3d_SolidExplorer::FindAPointInTheFace ( const TopoDS_Face & F,
gp_Pnt & P,
double & u,
double & v,
double & Param,
gp_Vec & theVecD1U,
gp_Vec & theVecD1V )
static

◆ GetFaceSegmentIndex()

int BRepClass3d_SolidExplorer::GetFaceSegmentIndex ( ) const

Returns the index of face for which last segment is calculated.

◆ GetMapEV()

const NCollection_IndexedMap< TopoDS_Shape, TopTools_ShapeMapHasher > & BRepClass3d_SolidExplorer::GetMapEV ( )
inline

Return edge/vertices map for current shape.

◆ GetShape()

const TopoDS_Shape & BRepClass3d_SolidExplorer::GetShape ( ) const

◆ GetTree()

const NCollection_UBTree< int, Bnd_Box > & BRepClass3d_SolidExplorer::GetTree ( )
inline

Return UB-tree instance which is used for edge / vertex checks.

◆ InitFace()

void BRepClass3d_SolidExplorer::InitFace ( )

Starts an exploration of the faces of the current shell.

◆ InitShape()

void BRepClass3d_SolidExplorer::InitShape ( const TopoDS_Shape & S)

◆ InitShell()

void BRepClass3d_SolidExplorer::InitShell ( )

Starts an exploration of the shells.

◆ Intersector()

IntCurvesFace_Intersector & BRepClass3d_SolidExplorer::Intersector ( const TopoDS_Face & F) const

◆ MoreFace()

bool BRepClass3d_SolidExplorer::MoreFace ( ) const

Returns True if current face in current shell.

◆ MoreShell()

bool BRepClass3d_SolidExplorer::MoreShell ( ) const

Returns True if there is a current shell.

◆ NextFace()

void BRepClass3d_SolidExplorer::NextFace ( )

Sets the explorer to the next Face of the current shell.

◆ NextShell()

void BRepClass3d_SolidExplorer::NextShell ( )

Sets the explorer to the next shell.

◆ OtherSegment()

int BRepClass3d_SolidExplorer::OtherSegment ( const gp_Pnt & P,
gp_Lin & L,
double & Par )

Returns in <L>, <Par> a segment having at least one intersection with the shape boundary to compute intersections.

The First Call to this method returns a line which point to a point of the first face of the shape. The Second Call provide a line to the second face and so on.

◆ PointInTheFace() [1/3]

bool BRepClass3d_SolidExplorer::PointInTheFace ( const TopoDS_Face & F,
gp_Pnt & P,
double & u,
double & v,
double & Param,
int & Index ) const

◆ PointInTheFace() [2/3]

bool BRepClass3d_SolidExplorer::PointInTheFace ( const TopoDS_Face & F,
gp_Pnt & P,
double & u,
double & v,
double & Param,
int & Index,
const occ::handle< BRepAdaptor_Surface > & surf,
const double u1,
const double v1,
const double u2,
const double v2 ) const

◆ PointInTheFace() [3/3]

bool BRepClass3d_SolidExplorer::PointInTheFace ( const TopoDS_Face & F,
gp_Pnt & P,
double & u,
double & v,
double & Param,
int & Index,
const occ::handle< BRepAdaptor_Surface > & surf,
const double u1,
const double v1,
const double u2,
const double v2,
gp_Vec & theVecD1U,
gp_Vec & theVecD1V ) const

<Index> gives point index to search from and returns point index of succeseful search

◆ Reject()

virtual bool BRepClass3d_SolidExplorer::Reject ( const gp_Pnt & P) const
virtual

Should return True if P outside of bounding vol. of the shape.

◆ RejectFace()

virtual bool BRepClass3d_SolidExplorer::RejectFace ( const gp_Lin & L) const
virtual

returns True if the face is rejected.

◆ RejectShell()

virtual bool BRepClass3d_SolidExplorer::RejectShell ( const gp_Lin & L) const
virtual

Returns True if the Shell is rejected.

◆ Segment()

int BRepClass3d_SolidExplorer::Segment ( const gp_Pnt & P,
gp_Lin & L,
double & Par )

Returns in <L>, <Par> a segment having at least one intersection with the shape boundary to compute intersections.


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