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

ModelingAlgorithms
TKHLR
HLRBRep


HLRBRep_Data Class Reference

#include <HLRBRep_Data.hxx>


Public Member Functions

Standard_EXPORT HLRBRep_Data (const Standard_Integer NV, const Standard_Integer NE, const Standard_Integer NF)
 Create an empty data structure of <nv> vertices,
<ne> edges and <nf> faces.
.
Standard_EXPORT void Write (const Handle(HLRBRep_Data)&DS, const Standard_Integer dv, const Standard_Integer de, const Standard_Integer df)
 Write <ds> in me with a translation of
<dv>,<de>,<df>.
.
HLRBRep_Array1OfEDataEDataArray ()
HLRBRep_Array1OfFDataFDataArray ()
void Tolerance (const Standard_ShortReal tol)
 Set the tolerance for the rejections during the
exploration
.
Standard_ShortReal Tolerance () const
 returns the tolerance for the rejections during
the exploration

Standard_EXPORT void Update (const HLRAlgo_Projector &P)
 end of building of the Data and updating
all the informations linked to the projection.

HLRAlgo_ProjectorProjector ()
Standard_Integer NbVertices () const
Standard_Integer NbEdges () const
Standard_Integer NbFaces () const
TopTools_IndexedMapOfShape & EdgeMap ()
TopTools_IndexedMapOfShape & FaceMap ()
Standard_EXPORT void InitBoundSort (const Standard_Address MinMaxTot, const Standard_Integer e1, const Standard_Integer e2)
 to compare with only non rejected edges.

Standard_EXPORT void InitEdge (const Standard_Integer FI, BRepTopAdaptor_MapOfShapeTool &MST)
 Begin an iteration only on visible Edges
crossing the face number <fi>.
.
Standard_EXPORT Standard_Boolean MoreEdge ()
Standard_EXPORT void NextEdge (const Standard_Boolean skip=Standard_True)
Standard_EXPORT Standard_Integer Edge () const
 Returns the current Edge
.
Standard_Boolean HidingTheFace () const
 Returns true if the current edge to be hidden
belongs to the hiding face.
.
Standard_Boolean SimpleHidingFace () const
 Returns true if the current hiding face is not an
auto-intersected one.
.
Standard_EXPORT void InitInterference ()
 Intersect the current Edge with the boundary of
the hiding face. The interferences are given by
the More, Next, and Value methods.
.
Standard_Boolean MoreInterference () const
Standard_EXPORT void NextInterference ()
Standard_EXPORT Standard_Boolean RejectedInterference ()
 Returns True if the interference is rejected.
.
Standard_EXPORT Standard_Boolean AboveInterference ()
 Returns True if the rejected interference is above
the face.
.
HLRAlgo_InterferenceInterference ()
Standard_EXPORT void LocalLEGeometry2D (const Standard_Real Param, gp_Dir2d &Tg, gp_Dir2d &Nm, Standard_Real &Cu)
 Returns the local description of the projection of
the current LEdge at parameter <param>.
.
Standard_EXPORT void LocalFEGeometry2D (const Standard_Integer FE, const Standard_Real Param, gp_Dir2d &Tg, gp_Dir2d &Nm, Standard_Real &Cu)
 Returns the local description of the projection of
the current FEdge at parameter <param>.
.
Standard_EXPORT void EdgeState (const Standard_Real p1, const Standard_Real p2, TopAbs_State &stbef, TopAbs_State &staf)
 Returns the local 3D state of the intersection
between the current edge and the current face at the
<p1> and <p2> parameters.
.
Standard_Boolean EdgeOfTheHidingFace (const Standard_Integer E, const HLRBRep_EdgeData &ED) const
 Returns the true if the Edge <ed> belongs to the
Hiding Face.
.
Standard_EXPORT Standard_Integer HidingStartLevel (const Standard_Integer E, const HLRBRep_EdgeData &ED, const HLRAlgo_InterferenceList &IL)
 Returns the number of levels of hiding face above
the first point of the edge <ed>. The
InterferenceList is given to compute far away of
the Interferences and then come back.
.
Standard_EXPORT TopAbs_State Compare (const Standard_Integer E, const HLRBRep_EdgeData &ED)
 Returns the state of the Edge <ed> after
classification.
.
Standard_EXPORT TopAbs_State SimplClassify (const Standard_Integer E, const HLRBRep_EdgeData &ED, const Standard_Integer Nbp, const Standard_Real p1, const Standard_Real p2)
 Simple classification of part of edge [p1, p2]
returns OUT if at least 1 of Nbp points of edge is out
othewise returns IN
It is used to check "suspision" hided part of edge.
.
Standard_EXPORT void Destroy ()
 ~HLRBRep_Data ()
Standard_EXPORT const Handle (Standard_Type)&DynamicType() const

Private Member Functions

Standard_EXPORT Standard_Boolean OrientOutLine (const Standard_Integer I, HLRBRep_FaceData &FD)
 Orient the OutLines ( left must be inside in
projection ). Returns True if the face of a closed
shell has been inverted;
.
Standard_EXPORT void OrientOthEdge (const Standard_Integer I, HLRBRep_FaceData &FD)
 Orient the Edges which are not Internal OutLine,
not Double and not IsoLine.
.
Standard_EXPORT TopAbs_State Classify (const Standard_Integer E, const HLRBRep_EdgeData &ED, const Standard_Boolean LevelFlag, Standard_Integer &Level, const Standard_Real param)
 Classification of an edge.
.
Standard_EXPORT Standard_Boolean RejectedPoint (const IntRes2d_IntersectionPoint &PInter, const TopAbs_Orientation BoundOri, const Standard_Integer NumSeg)
 Returns True if the intersection is rejected.
.
Standard_EXPORT Standard_Boolean SameVertex (const Standard_Boolean head1, const Standard_Boolean head2)
 returns True if there is a common vertex between
myLE and myFE dependig on <head1> and <head2>.


Private Attributes

Standard_Integer myNbVertices
Standard_Integer myNbEdges
Standard_Integer myNbFaces
TopTools_IndexedMapOfShape myEMap
TopTools_IndexedMapOfShape myFMap
HLRBRep_Array1OfEData myEData
HLRBRep_Array1OfFData myFData
TColStd_Array1OfInteger myEdgeIndices
Standard_ShortReal myToler
HLRAlgo_Projector myProj
HLRBRep_CLProps myLLProps
HLRBRep_CLProps myFLProps
HLRBRep_SLProps mySLProps
Standard_Real myBigSize
HLRBRep_FaceIterator myFaceItr1
HLRBRep_FaceIterator myFaceItr2
Standard_Integer iFace
Standard_Address iFaceData
Standard_Address iFaceGeom
Standard_Address iFaceMinMax
GeomAbs_SurfaceType iFaceType
Standard_Boolean iFaceBack
Standard_Boolean iFaceSimp
Standard_Boolean iFaceSmpl
Standard_Boolean iFaceTest
Standard_Integer myHideCount
Standard_Real myDeca [16]
Standard_Real mySurD [16]
Standard_Integer myCurSortEd
Standard_Integer myNbrSortEd
Standard_Integer myLE
Standard_Boolean myLEOutLine
Standard_Boolean myLEInternal
Standard_Boolean myLEDouble
Standard_Boolean myLEIsoLine
Standard_Address myLEData
Standard_Address myLEGeom
Standard_Address myLEMinMax
GeomAbs_CurveType myLEType
Standard_ShortReal myLETol
Standard_Integer myFE
TopAbs_Orientation myFEOri
Standard_Boolean myFEOutLine
Standard_Boolean myFEInternal
Standard_Boolean myFEDouble
Standard_Address myFEData
Standard_Address myFEGeom
GeomAbs_CurveType myFEType
Standard_ShortReal myFETol
HLRBRep_Intersector myIntersector
Handle_BRepTopAdaptor_TopolTool myClassifier
Standard_Boolean mySameVertex
Standard_Boolean myIntersected
Standard_Integer myNbPoints
Standard_Integer myNbSegments
Standard_Integer iInterf
HLRAlgo_Interference myIntf
Standard_Boolean myAboveIntf
Standard_Address myReject


Constructor & Destructor Documentation

Standard_EXPORT HLRBRep_Data::HLRBRep_Data const Standard_Integer  NV,
const Standard_Integer  NE,
const Standard_Integer  NF
 

HLRBRep_Data::~HLRBRep_Data  )  [inline]
 


Member Function Documentation

Standard_EXPORT Standard_Boolean HLRBRep_Data::AboveInterference  ) 
 

Standard_EXPORT TopAbs_State HLRBRep_Data::Classify const Standard_Integer  E,
const HLRBRep_EdgeData ED,
const Standard_Boolean  LevelFlag,
Standard_Integer &  Level,
const Standard_Real  param
[private]
 

Standard_EXPORT TopAbs_State HLRBRep_Data::Compare const Standard_Integer  E,
const HLRBRep_EdgeData ED
 

Standard_EXPORT void HLRBRep_Data::Destroy  ) 
 

HLRBRep_Array1OfEData & HLRBRep_Data::EDataArray  )  [inline]
 

Standard_EXPORT Standard_Integer HLRBRep_Data::Edge  )  const
 

TopTools_IndexedMapOfShape & HLRBRep_Data::EdgeMap  )  [inline]
 

Standard_Boolean HLRBRep_Data::EdgeOfTheHidingFace const Standard_Integer  E,
const HLRBRep_EdgeData ED
const [inline]
 

Standard_EXPORT void HLRBRep_Data::EdgeState const Standard_Real  p1,
const Standard_Real  p2,
TopAbs_State &  stbef,
TopAbs_State &  staf
 

TopTools_IndexedMapOfShape & HLRBRep_Data::FaceMap  )  [inline]
 

HLRBRep_Array1OfFData & HLRBRep_Data::FDataArray  )  [inline]
 

Standard_EXPORT const HLRBRep_Data::Handle Standard_Type   )  const
 

Standard_EXPORT Standard_Integer HLRBRep_Data::HidingStartLevel const Standard_Integer  E,
const HLRBRep_EdgeData ED,
const HLRAlgo_InterferenceList IL
 

Standard_Boolean HLRBRep_Data::HidingTheFace  )  const [inline]
 

Standard_EXPORT void HLRBRep_Data::InitBoundSort const Standard_Address  MinMaxTot,
const Standard_Integer  e1,
const Standard_Integer  e2
 

Standard_EXPORT void HLRBRep_Data::InitEdge const Standard_Integer  FI,
BRepTopAdaptor_MapOfShapeTool MST
 

Standard_EXPORT void HLRBRep_Data::InitInterference  ) 
 

HLRAlgo_Interference & HLRBRep_Data::Interference  )  [inline]
 

Standard_EXPORT void HLRBRep_Data::LocalFEGeometry2D const Standard_Integer  FE,
const Standard_Real  Param,
gp_Dir2d &  Tg,
gp_Dir2d &  Nm,
Standard_Real &  Cu
 

Standard_EXPORT void HLRBRep_Data::LocalLEGeometry2D const Standard_Real  Param,
gp_Dir2d &  Tg,
gp_Dir2d &  Nm,
Standard_Real &  Cu
 

Standard_EXPORT Standard_Boolean HLRBRep_Data::MoreEdge  ) 
 

Standard_Boolean HLRBRep_Data::MoreInterference  )  const [inline]
 

Standard_Integer HLRBRep_Data::NbEdges  )  const [inline]
 

Standard_Integer HLRBRep_Data::NbFaces  )  const [inline]
 

Standard_Integer HLRBRep_Data::NbVertices  )  const [inline]
 

Standard_EXPORT void HLRBRep_Data::NextEdge const Standard_Boolean  skip = Standard_True  ) 
 

Standard_EXPORT void HLRBRep_Data::NextInterference  ) 
 

Standard_EXPORT void HLRBRep_Data::OrientOthEdge const Standard_Integer  I,
HLRBRep_FaceData FD
[private]
 

Standard_EXPORT Standard_Boolean HLRBRep_Data::OrientOutLine const Standard_Integer  I,
HLRBRep_FaceData FD
[private]
 

HLRAlgo_Projector & HLRBRep_Data::Projector  )  [inline]
 

Standard_EXPORT Standard_Boolean HLRBRep_Data::RejectedInterference  ) 
 

Standard_EXPORT Standard_Boolean HLRBRep_Data::RejectedPoint const IntRes2d_IntersectionPoint PInter,
const TopAbs_Orientation  BoundOri,
const Standard_Integer  NumSeg
[private]
 

Standard_EXPORT Standard_Boolean HLRBRep_Data::SameVertex const Standard_Boolean  head1,
const Standard_Boolean  head2
[private]
 

Standard_EXPORT TopAbs_State HLRBRep_Data::SimplClassify const Standard_Integer  E,
const HLRBRep_EdgeData ED,
const Standard_Integer  Nbp,
const Standard_Real  p1,
const Standard_Real  p2
 

Standard_Boolean HLRBRep_Data::SimpleHidingFace  )  const [inline]
 

Standard_ShortReal HLRBRep_Data::Tolerance  )  const [inline]
 

void HLRBRep_Data::Tolerance const Standard_ShortReal  tol  )  [inline]
 

Standard_EXPORT void HLRBRep_Data::Update const HLRAlgo_Projector P  ) 
 

Standard_EXPORT void HLRBRep_Data::Write const Handle(HLRBRep_Data)&  DS,
const Standard_Integer  dv,
const Standard_Integer  de,
const Standard_Integer  df
 


Field Documentation

Standard_Integer HLRBRep_Data::iFace [private]
 

Standard_Boolean HLRBRep_Data::iFaceBack [private]
 

Standard_Address HLRBRep_Data::iFaceData [private]
 

Standard_Address HLRBRep_Data::iFaceGeom [private]
 

Standard_Address HLRBRep_Data::iFaceMinMax [private]
 

Standard_Boolean HLRBRep_Data::iFaceSimp [private]
 

Standard_Boolean HLRBRep_Data::iFaceSmpl [private]
 

Standard_Boolean HLRBRep_Data::iFaceTest [private]
 

GeomAbs_SurfaceType HLRBRep_Data::iFaceType [private]
 

Standard_Integer HLRBRep_Data::iInterf [private]
 

Standard_Boolean HLRBRep_Data::myAboveIntf [private]
 

Standard_Real HLRBRep_Data::myBigSize [private]
 

Handle_BRepTopAdaptor_TopolTool HLRBRep_Data::myClassifier [private]
 

Standard_Integer HLRBRep_Data::myCurSortEd [private]
 

Standard_Real HLRBRep_Data::myDeca[16] [private]
 

HLRBRep_Array1OfEData HLRBRep_Data::myEData [private]
 

TColStd_Array1OfInteger HLRBRep_Data::myEdgeIndices [private]
 

TopTools_IndexedMapOfShape HLRBRep_Data::myEMap [private]
 

HLRBRep_FaceIterator HLRBRep_Data::myFaceItr1 [private]
 

HLRBRep_FaceIterator HLRBRep_Data::myFaceItr2 [private]
 

HLRBRep_Array1OfFData HLRBRep_Data::myFData [private]
 

Standard_Integer HLRBRep_Data::myFE [private]
 

Standard_Address HLRBRep_Data::myFEData [private]
 

Standard_Boolean HLRBRep_Data::myFEDouble [private]
 

Standard_Address HLRBRep_Data::myFEGeom [private]
 

Standard_Boolean HLRBRep_Data::myFEInternal [private]
 

TopAbs_Orientation HLRBRep_Data::myFEOri [private]
 

Standard_Boolean HLRBRep_Data::myFEOutLine [private]
 

Standard_ShortReal HLRBRep_Data::myFETol [private]
 

GeomAbs_CurveType HLRBRep_Data::myFEType [private]
 

HLRBRep_CLProps HLRBRep_Data::myFLProps [private]
 

TopTools_IndexedMapOfShape HLRBRep_Data::myFMap [private]
 

Standard_Integer HLRBRep_Data::myHideCount [private]
 

Standard_Boolean HLRBRep_Data::myIntersected [private]
 

HLRBRep_Intersector HLRBRep_Data::myIntersector [private]
 

HLRAlgo_Interference HLRBRep_Data::myIntf [private]
 

Standard_Integer HLRBRep_Data::myLE [private]
 

Standard_Address HLRBRep_Data::myLEData [private]
 

Standard_Boolean HLRBRep_Data::myLEDouble [private]
 

Standard_Address HLRBRep_Data::myLEGeom [private]
 

Standard_Boolean HLRBRep_Data::myLEInternal [private]
 

Standard_Boolean HLRBRep_Data::myLEIsoLine [private]
 

Standard_Address HLRBRep_Data::myLEMinMax [private]
 

Standard_Boolean HLRBRep_Data::myLEOutLine [private]
 

Standard_ShortReal HLRBRep_Data::myLETol [private]
 

GeomAbs_CurveType HLRBRep_Data::myLEType [private]
 

HLRBRep_CLProps HLRBRep_Data::myLLProps [private]
 

Standard_Integer HLRBRep_Data::myNbEdges [private]
 

Standard_Integer HLRBRep_Data::myNbFaces [private]
 

Standard_Integer HLRBRep_Data::myNbPoints [private]
 

Standard_Integer HLRBRep_Data::myNbrSortEd [private]
 

Standard_Integer HLRBRep_Data::myNbSegments [private]
 

Standard_Integer HLRBRep_Data::myNbVertices [private]
 

HLRAlgo_Projector HLRBRep_Data::myProj [private]
 

Standard_Address HLRBRep_Data::myReject [private]
 

Standard_Boolean HLRBRep_Data::mySameVertex [private]
 

HLRBRep_SLProps HLRBRep_Data::mySLProps [private]
 

Standard_Real HLRBRep_Data::mySurD[16] [private]
 

Standard_ShortReal HLRBRep_Data::myToler [private]
 


The documentation for this class was generated from the following files:
Generated on Mon Aug 25 13:42:04 2008 for OpenCASCADE by  doxygen 1.4.1