Open CASCADE Technology  7.7.2
Public Member Functions | Protected Member Functions | Protected Attributes
IntTools_FaceFace Class Reference

This class provides the intersection of face's underlying surfaces. More...

#include <IntTools_FaceFace.hxx>

Public Member Functions

 IntTools_FaceFace ()
 Empty constructor. More...
 
void SetParameters (const Standard_Boolean ApproxCurves, const Standard_Boolean ComputeCurveOnS1, const Standard_Boolean ComputeCurveOnS2, const Standard_Real ApproximationTolerance)
 Modifier. More...
 
void Perform (const TopoDS_Face &F1, const TopoDS_Face &F2, const Standard_Boolean theToRunParallel=Standard_False)
 Intersects underliing surfaces of F1 and F2 Use sum of tolerance of F1 and F2 as intersection criteria. More...
 
Standard_Boolean IsDone () const
 Returns True if the intersection was successful. More...
 
const IntTools_SequenceOfCurvesLines () const
 Returns sequence of 3d curves as result of intersection. More...
 
const IntTools_SequenceOfPntOn2FacesPoints () const
 Returns sequence of 3d curves as result of intersection. More...
 
const TopoDS_FaceFace1 () const
 Returns first of processed faces. More...
 
const TopoDS_FaceFace2 () const
 Returns second of processed faces. More...
 
Standard_Boolean TangentFaces () const
 Returns True if faces are tangent. More...
 
void PrepareLines3D (const Standard_Boolean bToSplit=Standard_True)
 Provides post-processing the result lines. More...
 
void SetList (IntSurf_ListOfPntOn2S &ListOfPnts)
 
void SetContext (const Handle< IntTools_Context > &aContext)
 Sets the intersection context. More...
 
void SetFuzzyValue (const Standard_Real theFuzz)
 Sets the Fuzzy value. More...
 
Standard_Real FuzzyValue () const
 Returns Fuzzy value. More...
 
const Handle< IntTools_Context > & Context () const
 Gets the intersection context. More...
 

Protected Member Functions

void MakeCurve (const Standard_Integer Index, const Handle< Adaptor3d_TopolTool > &D1, const Handle< Adaptor3d_TopolTool > &D2, const Standard_Real theToler)
 Creates curves from the IntPatch_Line. More...
 
void ComputeTolReached3d (const Standard_Boolean theToRunParallel)
 Computes the valid tolerance for the intersection curves as a maximal deviation between 3D curve and 2D curves on faces.
If there are no 2D curves the maximal deviation between 3D curves and surfaces is computed. More...
 

Protected Attributes

Standard_Boolean myIsDone
 
IntPatch_Intersection myIntersector
 
GeomInt_LineConstructor myLConstruct
 
Handle< GeomAdaptor_SurfacemyHS1
 
Handle< GeomAdaptor_SurfacemyHS2
 
Standard_Integer myNbrestr
 
Standard_Boolean myApprox
 
Standard_Boolean myApprox1
 
Standard_Boolean myApprox2
 
Standard_Real myTolApprox
 
Standard_Real myTolF1
 
Standard_Real myTolF2
 
Standard_Real myTol
 
Standard_Real myFuzzyValue
 
IntTools_SequenceOfCurves mySeqOfCurve
 
Standard_Boolean myTangentFaces
 
TopoDS_Face myFace1
 
TopoDS_Face myFace2
 
IntTools_SequenceOfPntOn2Faces myPnts
 
IntSurf_ListOfPntOn2S myListOfPnts
 
Handle< IntTools_ContextmyContext
 

Detailed Description

This class provides the intersection of face's underlying surfaces.

Constructor & Destructor Documentation

IntTools_FaceFace::IntTools_FaceFace ( )

Empty constructor.

Member Function Documentation

void IntTools_FaceFace::ComputeTolReached3d ( const Standard_Boolean  theToRunParallel)
protected

Computes the valid tolerance for the intersection curves as a maximal deviation between 3D curve and 2D curves on faces.
If there are no 2D curves the maximal deviation between 3D curves and surfaces is computed.

const Handle< IntTools_Context >& IntTools_FaceFace::Context ( ) const

Gets the intersection context.

const TopoDS_Face& IntTools_FaceFace::Face1 ( ) const

Returns first of processed faces.

const TopoDS_Face& IntTools_FaceFace::Face2 ( ) const

Returns second of processed faces.

Standard_Real IntTools_FaceFace::FuzzyValue ( ) const

Returns Fuzzy value.

Standard_Boolean IntTools_FaceFace::IsDone ( ) const

Returns True if the intersection was successful.

const IntTools_SequenceOfCurves& IntTools_FaceFace::Lines ( ) const

Returns sequence of 3d curves as result of intersection.

void IntTools_FaceFace::MakeCurve ( const Standard_Integer  Index,
const Handle< Adaptor3d_TopolTool > &  D1,
const Handle< Adaptor3d_TopolTool > &  D2,
const Standard_Real  theToler 
)
protected

Creates curves from the IntPatch_Line.

void IntTools_FaceFace::Perform ( const TopoDS_Face F1,
const TopoDS_Face F2,
const Standard_Boolean  theToRunParallel = Standard_False 
)

Intersects underliing surfaces of F1 and F2 Use sum of tolerance of F1 and F2 as intersection criteria.

const IntTools_SequenceOfPntOn2Faces& IntTools_FaceFace::Points ( ) const

Returns sequence of 3d curves as result of intersection.

void IntTools_FaceFace::PrepareLines3D ( const Standard_Boolean  bToSplit = Standard_True)

Provides post-processing the result lines.

Parameters
bToSplit[in] split the closed 3D-curves on parts when TRUE, remain untouched otherwise
void IntTools_FaceFace::SetContext ( const Handle< IntTools_Context > &  aContext)

Sets the intersection context.

void IntTools_FaceFace::SetFuzzyValue ( const Standard_Real  theFuzz)

Sets the Fuzzy value.

void IntTools_FaceFace::SetList ( IntSurf_ListOfPntOn2S ListOfPnts)
void IntTools_FaceFace::SetParameters ( const Standard_Boolean  ApproxCurves,
const Standard_Boolean  ComputeCurveOnS1,
const Standard_Boolean  ComputeCurveOnS2,
const Standard_Real  ApproximationTolerance 
)

Modifier.

Standard_Boolean IntTools_FaceFace::TangentFaces ( ) const

Returns True if faces are tangent.

Field Documentation

Standard_Boolean IntTools_FaceFace::myApprox
protected
Standard_Boolean IntTools_FaceFace::myApprox1
protected
Standard_Boolean IntTools_FaceFace::myApprox2
protected
Handle< IntTools_Context > IntTools_FaceFace::myContext
protected
TopoDS_Face IntTools_FaceFace::myFace1
protected
TopoDS_Face IntTools_FaceFace::myFace2
protected
Standard_Real IntTools_FaceFace::myFuzzyValue
protected
Handle< GeomAdaptor_Surface > IntTools_FaceFace::myHS1
protected
Handle< GeomAdaptor_Surface > IntTools_FaceFace::myHS2
protected
IntPatch_Intersection IntTools_FaceFace::myIntersector
protected
Standard_Boolean IntTools_FaceFace::myIsDone
protected
GeomInt_LineConstructor IntTools_FaceFace::myLConstruct
protected
IntSurf_ListOfPntOn2S IntTools_FaceFace::myListOfPnts
protected
Standard_Integer IntTools_FaceFace::myNbrestr
protected
IntTools_SequenceOfPntOn2Faces IntTools_FaceFace::myPnts
protected
IntTools_SequenceOfCurves IntTools_FaceFace::mySeqOfCurve
protected
Standard_Boolean IntTools_FaceFace::myTangentFaces
protected
Standard_Real IntTools_FaceFace::myTol
protected
Standard_Real IntTools_FaceFace::myTolApprox
protected
Standard_Real IntTools_FaceFace::myTolF1
protected
Standard_Real IntTools_FaceFace::myTolF2
protected

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