Open CASCADE Technology
7.5.0
|
API algorithm for intersection of two surfaces by intersection of their triangulations. More...
#include <IntPolyh_Intersection.hxx>
Public Member Functions | |
Constructors | |
IntPolyh_Intersection (const Handle< Adaptor3d_HSurface > &theS1, const Handle< Adaptor3d_HSurface > &theS2) | |
Constructor for intersection of two surfaces with default parameters. Performs intersection. More... | |
IntPolyh_Intersection (const Handle< Adaptor3d_HSurface > &theS1, const Standard_Integer theNbSU1, const Standard_Integer theNbSV1, const Handle< Adaptor3d_HSurface > &theS2, const Standard_Integer theNbSU2, const Standard_Integer theNbSV2) | |
Constructor for intersection of two surfaces with the given size of the sampling nets: More... | |
IntPolyh_Intersection (const Handle< Adaptor3d_HSurface > &theS1, const TColStd_Array1OfReal &theUPars1, const TColStd_Array1OfReal &theVPars1, const Handle< Adaptor3d_HSurface > &theS2, const TColStd_Array1OfReal &theUPars2, const TColStd_Array1OfReal &theVPars2) | |
Constructor for intersection of two surfaces with the precomputed sampling. Performs intersection. More... | |
Getting the results | |
Standard_Boolean | IsDone () const |
Returns state of the operation. More... | |
Standard_Integer | NbSectionLines () const |
Returns the number of section lines. More... | |
Standard_Integer | NbPointsInLine (const Standard_Integer IndexLine) const |
Returns the number of points in the given line. More... | |
Standard_Integer | NbTangentZones () const |
Returns state of the operation. More... | |
Standard_Integer | NbPointsInTangentZone (const Standard_Integer) const |
Returns number of points in tangent zone. More... | |
void | GetLinePoint (const Standard_Integer IndexLine, const Standard_Integer IndexPoint, Standard_Real &x, Standard_Real &y, Standard_Real &z, Standard_Real &u1, Standard_Real &v1, Standard_Real &u2, Standard_Real &v2, Standard_Real &incidence) const |
Gets the parameters of the point in section line. More... | |
void | GetTangentZonePoint (const Standard_Integer IndexLine, const Standard_Integer IndexPoint, Standard_Real &x, Standard_Real &y, Standard_Real &z, Standard_Real &u1, Standard_Real &v1, Standard_Real &u2, Standard_Real &v2) const |
Gets the parameters of the point in tangent zone. More... | |
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.
IntPolyh_Intersection::IntPolyh_Intersection | ( | const Handle< Adaptor3d_HSurface > & | theS1, |
const Handle< Adaptor3d_HSurface > & | theS2 | ||
) |
Constructor for intersection of two surfaces with default parameters. Performs intersection.
IntPolyh_Intersection::IntPolyh_Intersection | ( | const Handle< Adaptor3d_HSurface > & | theS1, |
const Standard_Integer | theNbSU1, | ||
const Standard_Integer | theNbSV1, | ||
const Handle< Adaptor3d_HSurface > & | theS2, | ||
const Standard_Integer | theNbSU2, | ||
const Standard_Integer | theNbSV2 | ||
) |
Constructor for intersection of two surfaces with the given size of the sampling nets:
IntPolyh_Intersection::IntPolyh_Intersection | ( | const Handle< Adaptor3d_HSurface > & | theS1, |
const TColStd_Array1OfReal & | theUPars1, | ||
const TColStd_Array1OfReal & | theVPars1, | ||
const Handle< Adaptor3d_HSurface > & | theS2, | ||
const TColStd_Array1OfReal & | theUPars2, | ||
const TColStd_Array1OfReal & | theVPars2 | ||
) |
Constructor for intersection of two surfaces with the precomputed sampling. Performs intersection.
void IntPolyh_Intersection::GetLinePoint | ( | const Standard_Integer | IndexLine, |
const Standard_Integer | IndexPoint, | ||
Standard_Real & | x, | ||
Standard_Real & | y, | ||
Standard_Real & | z, | ||
Standard_Real & | u1, | ||
Standard_Real & | v1, | ||
Standard_Real & | u2, | ||
Standard_Real & | v2, | ||
Standard_Real & | incidence | ||
) | const |
Gets the parameters of the point in section line.
void IntPolyh_Intersection::GetTangentZonePoint | ( | const Standard_Integer | IndexLine, |
const Standard_Integer | IndexPoint, | ||
Standard_Real & | x, | ||
Standard_Real & | y, | ||
Standard_Real & | z, | ||
Standard_Real & | u1, | ||
Standard_Real & | v1, | ||
Standard_Real & | u2, | ||
Standard_Real & | v2 | ||
) | const |
Gets the parameters of the point in tangent zone.
|
inline |
Returns state of the operation.
|
inline |
Returns the number of points in the given line.
|
inline |
Returns number of points in tangent zone.
|
inline |
Returns the number of section lines.
|
inline |
Returns state of the operation.