Open CASCADE Technology Reference Manual 8.0.0
Loading...
Searching...
No Matches
IntPolyh_Intersection Class Reference

API algorithm for intersection of two surfaces by intersection of their triangulations. More...

#include <IntPolyh_Intersection.hxx>

Public Member Functions

Constructors

Constructor for intersection of two surfaces with default parameters. Performs intersection.

 IntPolyh_Intersection (const occ::handle< Adaptor3d_Surface > &theS1, const occ::handle< Adaptor3d_Surface > &theS2)
 Constructor for intersection of two surfaces with the given size of the sampling nets:
 
 IntPolyh_Intersection (const occ::handle< Adaptor3d_Surface > &theS1, const int theNbSU1, const int theNbSV1, const occ::handle< Adaptor3d_Surface > &theS2, const int theNbSU2, const int theNbSV2)
 Constructor for intersection of two surfaces with the given size of the sampling nets:
 
 IntPolyh_Intersection (const occ::handle< Adaptor3d_Surface > &theS1, const NCollection_Array1< double > &theUPars1, const NCollection_Array1< double > &theVPars1, const occ::handle< Adaptor3d_Surface > &theS2, const NCollection_Array1< double > &theUPars2, const NCollection_Array1< double > &theVPars2)
 Constructor for intersection of two surfaces with the precomputed sampling. Performs intersection.
 
Getting the results

Returns state of the operation

bool IsDone () const
 Returns state of the operation.
 
bool IsParallel () const
 Returns state of the operation.
 
int NbSectionLines () const
 Returns the number of section lines.
 
int NbPointsInLine (const int IndexLine) const
 Returns the number of points in the given line.
 
int NbTangentZones () const
 Returns state of the operation.
 
int NbPointsInTangentZone (const int) const
 Returns number of points in tangent zone.
 
void GetLinePoint (const int IndexLine, const int IndexPoint, double &x, double &y, double &z, double &u1, double &v1, double &u2, double &v2, double &incidence) const
 Gets the parameters of the point in section line.
 
void GetTangentZonePoint (const int IndexLine, const int IndexPoint, double &x, double &y, double &z, double &u1, double &v1, double &u2, double &v2) const
 Gets the parameters of the point in tangent zone.
 

Detailed Description

API algorithm for intersection of two surfaces by intersection of their triangulations.

Algorithm provides possibility to intersect surfaces as without the precomputed sampling as with it.

If the numbers of sampling points are not given, it will build the net of 10x10 sampling points for each surface.

The intersection is done inside constructors. Before obtaining the results of intersection it is necessary to check if intersection has been performed correctly. It can be done by calling the IsDone() method.

The results of intersection are the intersection lines and points.

Constructor & Destructor Documentation

◆ IntPolyh_Intersection() [1/3]

IntPolyh_Intersection::IntPolyh_Intersection ( const occ::handle< Adaptor3d_Surface > & theS1,
const occ::handle< Adaptor3d_Surface > & theS2 )

Constructor for intersection of two surfaces with the given size of the sampling nets:

  • <theNbSU1> x <theNbSV1> - for the first surface <theS1>;
  • <theNbSU2> x <theNbSV2> - for the second surface <theS2>. Performs intersection.

◆ IntPolyh_Intersection() [2/3]

IntPolyh_Intersection::IntPolyh_Intersection ( const occ::handle< Adaptor3d_Surface > & theS1,
const int theNbSU1,
const int theNbSV1,
const occ::handle< Adaptor3d_Surface > & theS2,
const int theNbSU2,
const int theNbSV2 )

Constructor for intersection of two surfaces with the given size of the sampling nets:

  • <theNbSU1> x <theNbSV1> - for the first surface <theS1>;
  • <theNbSU2> x <theNbSV2> - for the second surface <theS2>. Performs intersection.

◆ IntPolyh_Intersection() [3/3]

IntPolyh_Intersection::IntPolyh_Intersection ( const occ::handle< Adaptor3d_Surface > & theS1,
const NCollection_Array1< double > & theUPars1,
const NCollection_Array1< double > & theVPars1,
const occ::handle< Adaptor3d_Surface > & theS2,
const NCollection_Array1< double > & theUPars2,
const NCollection_Array1< double > & theVPars2 )

Constructor for intersection of two surfaces with the precomputed sampling. Performs intersection.

Member Function Documentation

◆ GetLinePoint()

void IntPolyh_Intersection::GetLinePoint ( const int IndexLine,
const int IndexPoint,
double & x,
double & y,
double & z,
double & u1,
double & v1,
double & u2,
double & v2,
double & incidence ) const

Gets the parameters of the point in section line.

◆ GetTangentZonePoint()

void IntPolyh_Intersection::GetTangentZonePoint ( const int IndexLine,
const int IndexPoint,
double & x,
double & y,
double & z,
double & u1,
double & v1,
double & u2,
double & v2 ) const

Gets the parameters of the point in tangent zone.

◆ IsDone()

bool IntPolyh_Intersection::IsDone ( ) const
inline

Returns state of the operation.

◆ IsParallel()

bool IntPolyh_Intersection::IsParallel ( ) const
inline

Returns state of the operation.

◆ NbPointsInLine()

int IntPolyh_Intersection::NbPointsInLine ( const int IndexLine) const
inline

Returns the number of points in the given line.

◆ NbPointsInTangentZone()

int IntPolyh_Intersection::NbPointsInTangentZone ( const int ) const
inline

Returns number of points in tangent zone.

◆ NbSectionLines()

int IntPolyh_Intersection::NbSectionLines ( ) const
inline

Returns the number of section lines.

◆ NbTangentZones()

int IntPolyh_Intersection::NbTangentZones ( ) const
inline

Returns state of the operation.


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