Open CASCADE Technology 6.6.0
Static Public Member Functions
BOPTools_AlgoTools3D Class Reference

The class contains handy static functions
dealing with the topology
This is the copy of BOPTools_AlgoTools3D.cdl file

#include <BOPTools_AlgoTools3D.hxx>

Static Public Member Functions

static void DoSplitSEAMOnFace (const TopoDS_Edge &aSp, const TopoDS_Face &aF)
 Make the edge <aSp> seam edge for the face <aF>


static void GetNormalToFaceOnEdge (const TopoDS_Edge &aE, const TopoDS_Face &aF, const Standard_Real aT, gp_Dir &aD)
 Computes normal to the face <aF> for the point on the edge <aE>
at parameter <aT>


static void GetNormalToFaceOnEdge (const TopoDS_Edge &aE, const TopoDS_Face &aF, gp_Dir &aD)
 Computes normal to the face <aF> for the point on the edge <aE>
at arbitrary intermediate parameter


static Standard_Integer SenseFlag (const gp_Dir &aNF1, const gp_Dir &aNF2)
 Returns 1 if scalar product aNF1* aNF2>0.
Returns 0 if directions aNF1 aNF2 coinside
Returns -1 if scalar product aNF1* aNF2<0.


static Standard_Boolean GetNormalToSurface (const Handle< Geom_Surface > &aS, const Standard_Real U, const Standard_Real V, gp_Dir &aD)
 Compute normal <aD> to surface <aS> in point (U,V)
Returns TRUE if directions aD1U, aD1V coinside


static void GetApproxNormalToFaceOnEdge (const TopoDS_Edge &aE, const TopoDS_Face &aF, const Standard_Real aT, gp_Pnt &aPx, gp_Dir &aD, Handle< BOPInt_Context > &theContext)
 Computes normal to the face <aF> for the 3D-point that
belonds to the edge <aE> at parameter <aT>.
Output:
aPx - the 3D-point where the normal computed
aD - the normal;

Warning:
The normal is computed not exactly in the point on the
edge, but in point that is near to the edge towards to
the face material (so, we'll have approx. normal)


static void GetApproxNormalToFaceOnEdge (const TopoDS_Edge &theE, const TopoDS_Face &theF, const Standard_Real aT, gp_Pnt &aP, gp_Dir &aDNF, const Standard_Real aDt2D)
static void PointNearEdge (const TopoDS_Edge &aE, const TopoDS_Face &aF, const Standard_Real aT, const Standard_Real aDt2D, gp_Pnt2d &aP2D, gp_Pnt &aPx)
 Compute the point <aPx>, (<aP2D>) that is near to
the edge <aE> at parameter <aT> towards to the
material of the face <aF>. The value of shifting in
2D is <aDt2D>


static void PointNearEdge (const TopoDS_Edge &aE, const TopoDS_Face &aF, const Standard_Real aT, gp_Pnt2d &aP2D, gp_Pnt &aPx, Handle< BOPInt_Context > &theContext)
 Computes the point <aPx>, (<aP2D>) that is near to
the edge <aE> at parameter <aT> towards to the
material of the face <aF>. The value of shifting in
2D is dt2D=BOPTools_AlgoTools3D::MinStepIn2d()


static void PointNearEdge (const TopoDS_Edge &aE, const TopoDS_Face &aF, gp_Pnt2d &aP2D, gp_Pnt &aPx, Handle< BOPInt_Context > &theContext)
 Compute the point <aPx>, (<aP2D>) that is near to
the edge <aE> at arbitrary parameter towards to the
material of the face <aF>. The value of shifting in
2D is dt2D=BOPTools_AlgoTools3D::MinStepIn2d()


static Standard_Real MinStepIn2d ()
 Returns simple step value that is used in 2D-computations
= 1.e-5


static Standard_Boolean IsEmptyShape (const TopoDS_Shape &aS)
 Returns TRUE if the shape <aS> does not contain
geometry information (e.g. empty compound)


static void OrientEdgeOnFace (const TopoDS_Edge &aE, const TopoDS_Face &aF, TopoDS_Edge &aER)
 Get the edge <aER> from the face <aF> that is the same as
the edge <aE>


static Standard_Integer PointInFace (const TopoDS_Face &theF, gp_Pnt &theP, gp_Pnt2d &theP2D, Handle< BOPInt_Context > &theContext)
 Computes a point <theP> inside the face <theF>.

<theP2D> - 2D representation of <theP>

on the surface of <theF>

Returns 0 in case of success.



Member Function Documentation

static void BOPTools_AlgoTools3D::DoSplitSEAMOnFace ( const TopoDS_Edge aSp,
const TopoDS_Face aF 
) [static]
static void BOPTools_AlgoTools3D::GetApproxNormalToFaceOnEdge ( const TopoDS_Edge aE,
const TopoDS_Face aF,
const Standard_Real  aT,
gp_Pnt aPx,
gp_Dir aD,
Handle< BOPInt_Context > &  theContext 
) [static]
static void BOPTools_AlgoTools3D::GetApproxNormalToFaceOnEdge ( const TopoDS_Edge theE,
const TopoDS_Face theF,
const Standard_Real  aT,
gp_Pnt aP,
gp_Dir aDNF,
const Standard_Real  aDt2D 
) [static]
static void BOPTools_AlgoTools3D::GetNormalToFaceOnEdge ( const TopoDS_Edge aE,
const TopoDS_Face aF,
const Standard_Real  aT,
gp_Dir aD 
) [static]
static void BOPTools_AlgoTools3D::GetNormalToFaceOnEdge ( const TopoDS_Edge aE,
const TopoDS_Face aF,
gp_Dir aD 
) [static]
static Standard_Boolean BOPTools_AlgoTools3D::GetNormalToSurface ( const Handle< Geom_Surface > &  aS,
const Standard_Real  U,
const Standard_Real  V,
gp_Dir aD 
) [static]
static Standard_Boolean BOPTools_AlgoTools3D::IsEmptyShape ( const TopoDS_Shape aS) [static]
static Standard_Real BOPTools_AlgoTools3D::MinStepIn2d ( ) [static]
static void BOPTools_AlgoTools3D::OrientEdgeOnFace ( const TopoDS_Edge aE,
const TopoDS_Face aF,
TopoDS_Edge aER 
) [static]
static Standard_Integer BOPTools_AlgoTools3D::PointInFace ( const TopoDS_Face theF,
gp_Pnt theP,
gp_Pnt2d theP2D,
Handle< BOPInt_Context > &  theContext 
) [static]
static void BOPTools_AlgoTools3D::PointNearEdge ( const TopoDS_Edge aE,
const TopoDS_Face aF,
gp_Pnt2d aP2D,
gp_Pnt aPx,
Handle< BOPInt_Context > &  theContext 
) [static]
static void BOPTools_AlgoTools3D::PointNearEdge ( const TopoDS_Edge aE,
const TopoDS_Face aF,
const Standard_Real  aT,
const Standard_Real  aDt2D,
gp_Pnt2d aP2D,
gp_Pnt aPx 
) [static]
static void BOPTools_AlgoTools3D::PointNearEdge ( const TopoDS_Edge aE,
const TopoDS_Face aF,
const Standard_Real  aT,
gp_Pnt2d aP2D,
gp_Pnt aPx,
Handle< BOPInt_Context > &  theContext 
) [static]
static Standard_Integer BOPTools_AlgoTools3D::SenseFlag ( const gp_Dir aNF1,
const gp_Dir aNF2 
) [static]

The documentation for this class was generated from the following file:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines