OCC Main Page | ModelingAlgorithms | Toolkits | Packages | Class Hierarchy | Data Structures | File List | Data Fields | Globals

ModelingAlgorithms
TKGeomAlgo
TopTrans


TopTrans_SurfaceTransition Class Reference

This algorithm is used to compute the transition
of a 3D surface intersecting a topological surfacic
boundary on a 3D curve ( intersection curve ).
The boundary is described by a set of faces
each face is described by
- its support surface,
- an orientation defining its matter side.
The geometric elements are described locally at the
intersection point by a second order development.
A surface is described by the normal vector, the
principal directions and the principal curvatures.
A curve is described by the tangent, the normal
and the curvature.
The algorithm keeps track of the two faces elements
closest to the part of the curve "before" and "after"
the intersection, these two elements are updated
for each new face.
The position of the curve can be computed when at
least one surface element has been given, this
position is "In","Out" or "On" for the part of the
curve "Before" or "After" the intersection.
.

#include <TopTrans_SurfaceTransition.hxx>


Public Member Functions

void * operator new (size_t, void *anAddress)
void * operator new (size_t size)
void operator delete (void *anAddress)
Standard_EXPORT TopTrans_SurfaceTransition ()
 Create an empty Surface Transition.
.
Standard_EXPORT void Reset (const gp_Dir &Tgt, const gp_Dir &Norm, const gp_Dir &MaxD, const gp_Dir &MinD, const Standard_Real MaxCurv, const Standard_Real MinCurv)
 Initialize a Surface Transition with the local
description of the intersection curve and of the
reference surface.
PREQUESITORY : Norm oriented OUTSIDE "geometric matter"
.
Standard_EXPORT void Reset (const gp_Dir &Tgt, const gp_Dir &Norm)
 Initialize a Surface Transition with the local
description of a straight line.
.
Standard_EXPORT void Compare (const Standard_Real Tole, const gp_Dir &Norm, const gp_Dir &MaxD, const gp_Dir &MinD, const Standard_Real MaxCurv, const Standard_Real MinCurv, const TopAbs_Orientation S, const TopAbs_Orientation O)
 Add a face element to the boundary.

- S defines topological orientation for the face :
S FORWARD means: along the intersection curve on the
reference surface, transition states while crossing
the face are OUT,IN.
S REVERSED means states are IN,OUT.
S INTERNAL means states are IN,IN.

- O defines curve's position on face :
O FORWARD means the face is before the intersection
O REVERSED means the face is AFTER
O INTERNAL means the curve intersection is in the face.
PREQUESITORY : Norm oriented OUTSIDE "geometric matter"
.
Standard_EXPORT void Compare (const Standard_Real Tole, const gp_Dir &Norm, const TopAbs_Orientation S, const TopAbs_Orientation O)
 Add a plane or a cylindric face to the boundary.
.
Standard_EXPORT TopAbs_State StateBefore () const
 Returns the state of the reference surface before
the interference, this is the position relative to
the surface of a point very close to the intersection
on the negative side of the tangent.
.
Standard_EXPORT TopAbs_State StateAfter () const
 Returns the state of the reference surface after
interference, this is the position relative to the
surface of a point very close to the intersection
on the positive side of the tangent.
.

Static Public Member Functions

static Standard_EXPORT TopAbs_State GetBefore (const TopAbs_Orientation Tran)
static Standard_EXPORT TopAbs_State GetAfter (const TopAbs_Orientation Tran)

Private Member Functions

Standard_EXPORT void UpdateReference (const Standard_Real Tole, const Standard_Boolean isInfRef, Standard_Real &CosInf, Standard_Real &CosSup, const TopAbs_Orientation Tran, TopAbs_Orientation &TranRef)
Standard_EXPORT Standard_Real ComputeCos (const Standard_Real Tole, const gp_Dir &Norm, const TopAbs_Orientation O, Standard_Boolean &isleft) const

Private Attributes

gp_Dir myTgt
gp_Dir myNorm
gp_Dir beafter
Standard_Real myCurvRef
TColStd_Array2OfReal myAng
TColStd_Array2OfReal myCurv
TopTrans_Array2OfOrientation myOri
Standard_Boolean myTouchFlag


Constructor & Destructor Documentation

Standard_EXPORT TopTrans_SurfaceTransition::TopTrans_SurfaceTransition  ) 
 


Member Function Documentation

Standard_EXPORT void TopTrans_SurfaceTransition::Compare const Standard_Real  Tole,
const gp_Dir &  Norm,
const TopAbs_Orientation  S,
const TopAbs_Orientation  O
 

Standard_EXPORT void TopTrans_SurfaceTransition::Compare const Standard_Real  Tole,
const gp_Dir &  Norm,
const gp_Dir &  MaxD,
const gp_Dir &  MinD,
const Standard_Real  MaxCurv,
const Standard_Real  MinCurv,
const TopAbs_Orientation  S,
const TopAbs_Orientation  O
 

Standard_EXPORT Standard_Real TopTrans_SurfaceTransition::ComputeCos const Standard_Real  Tole,
const gp_Dir &  Norm,
const TopAbs_Orientation  O,
Standard_Boolean isleft
const [private]
 

static Standard_EXPORT TopAbs_State TopTrans_SurfaceTransition::GetAfter const TopAbs_Orientation  Tran  )  [static]
 

static Standard_EXPORT TopAbs_State TopTrans_SurfaceTransition::GetBefore const TopAbs_Orientation  Tran  )  [static]
 

void TopTrans_SurfaceTransition::operator delete void *  anAddress  )  [inline]
 

void* TopTrans_SurfaceTransition::operator new size_t  size  )  [inline]
 

void* TopTrans_SurfaceTransition::operator new size_t  ,
void *  anAddress
[inline]
 

Standard_EXPORT void TopTrans_SurfaceTransition::Reset const gp_Dir &  Tgt,
const gp_Dir &  Norm
 

Standard_EXPORT void TopTrans_SurfaceTransition::Reset const gp_Dir &  Tgt,
const gp_Dir &  Norm,
const gp_Dir &  MaxD,
const gp_Dir &  MinD,
const Standard_Real  MaxCurv,
const Standard_Real  MinCurv
 

Standard_EXPORT TopAbs_State TopTrans_SurfaceTransition::StateAfter  )  const
 

Standard_EXPORT TopAbs_State TopTrans_SurfaceTransition::StateBefore  )  const
 

Standard_EXPORT void TopTrans_SurfaceTransition::UpdateReference const Standard_Real  Tole,
const Standard_Boolean  isInfRef,
Standard_Real &  CosInf,
Standard_Real &  CosSup,
const TopAbs_Orientation  Tran,
TopAbs_Orientation &  TranRef
[private]
 


Field Documentation

gp_Dir TopTrans_SurfaceTransition::beafter [private]
 

TColStd_Array2OfReal TopTrans_SurfaceTransition::myAng [private]
 

TColStd_Array2OfReal TopTrans_SurfaceTransition::myCurv [private]
 

Standard_Real TopTrans_SurfaceTransition::myCurvRef [private]
 

gp_Dir TopTrans_SurfaceTransition::myNorm [private]
 

TopTrans_Array2OfOrientation TopTrans_SurfaceTransition::myOri [private]
 

gp_Dir TopTrans_SurfaceTransition::myTgt [private]
 

Standard_Boolean TopTrans_SurfaceTransition::myTouchFlag [private]
 


The documentation for this class was generated from the following file:
Generated on Mon Aug 25 13:43:07 2008 for OpenCASCADE by  doxygen 1.4.1