Open CASCADE Technology  6.5.4
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions
IntPatch_Intersection Class Reference

This class provides a generic algorithm to intersect
2 surfaces.

#include <IntPatch_Intersection.hxx>

Public Member Functions

DEFINE_STANDARD_ALLOC IntPatch_Intersection ()
 IntPatch_Intersection (const Handle< Adaptor3d_HSurface > &S1, const Handle< Adaptor3d_TopolTool > &D1, const Handle< Adaptor3d_HSurface > &S2, const Handle< Adaptor3d_TopolTool > &D2, const Standard_Real TolArc, const Standard_Real TolTang)
 IntPatch_Intersection (const Handle< Adaptor3d_HSurface > &S1, const Handle< Adaptor3d_TopolTool > &D1, const Standard_Real TolArc, const Standard_Real TolTang)
void SetTolerances (const Standard_Real TolArc, const Standard_Real TolTang, const Standard_Real UVMaxStep, const Standard_Real Fleche)
 Set the tolerances used by the algorithms:
--- Implicit - Parametric
--- Parametric - Parametric
--- Implicit - Implicit

TolArc is used to compute the intersections
between the restrictions of a surface and a
walking line.

TolTang is used to compute the points on a walking
line, and in geometric algorithms.

Fleche is a parameter used in the walking
algorithms to provide small curvatures on a line.

UVMaxStep is a parameter used in the walking
algorithms to compute the distance between to
points in their respective parametrtic spaces.


void Perform (const Handle< Adaptor3d_HSurface > &S1, const Handle< Adaptor3d_TopolTool > &D1, const Handle< Adaptor3d_HSurface > &S2, const Handle< Adaptor3d_TopolTool > &D2, const Standard_Real TolArc, const Standard_Real TolTang)
void Perform (const Handle< Adaptor3d_HSurface > &S1, const Handle< Adaptor3d_TopolTool > &D1, const Handle< Adaptor3d_HSurface > &S2, const Handle< Adaptor3d_TopolTool > &D2, const Standard_Real TolArc, const Standard_Real TolTang, IntSurf_ListOfPntOn2S &LOfPnts, const Standard_Boolean RestrictLine=Standard_True)
void Perform (const Handle< Adaptor3d_HSurface > &S1, const Handle< Adaptor3d_TopolTool > &D1, const Handle< Adaptor3d_HSurface > &S2, const Handle< Adaptor3d_TopolTool > &D2, const Standard_Real U1, const Standard_Real V1, const Standard_Real U2, const Standard_Real V2, const Standard_Real TolArc, const Standard_Real TolTang)
void Perform (const Handle< Adaptor3d_HSurface > &S1, const Handle< Adaptor3d_TopolTool > &D1, const Standard_Real TolArc, const Standard_Real TolTang)
Standard_Boolean IsDone () const
 Returns True if the calculus was succesfull.

Standard_Boolean IsEmpty () const
 Returns true if the is no intersection.

Standard_Boolean TangentFaces () const
 Returns True if the two patches are considered as
entierly tangent, i-e every restriction arc of one
patch is inside the geometric base of the other patch.

Standard_Boolean OppositeFaces () const
 Returns True when the TangentFaces returns True and the
normal vectors evaluated at a point on the first and the
second surface are opposite.
The exception DomainError is raised if TangentFaces
returns False.

Standard_Integer NbPnts () const
 Returns the number of "single" points.

const IntPatch_PointPoint (const Standard_Integer Index) const
 Returns the point of range Index.
An exception is raised if Index<=0 or Index>NbPnt.

Standard_Integer NbLines () const
 Returns the number of intersection lines.

const Handle_IntPatch_Line & Line (const Standard_Integer Index) const
 Returns the line of range Index.
An exception is raised if Index<=0 or Index>NbLine.

const IntPatch_SequenceOfLineSequenceOfLine () const
void Dump (const Standard_Integer Mode, const Handle< Adaptor3d_HSurface > &S1, const Handle< Adaptor3d_TopolTool > &D1, const Handle< Adaptor3d_HSurface > &S2, const Handle< Adaptor3d_TopolTool > &D2) const
 Dump of each result line.
Mode for more accurate dumps.



Constructor & Destructor Documentation


Member Function Documentation

const Handle_IntPatch_Line& IntPatch_Intersection::Line ( const Standard_Integer  Index) const

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