Open CASCADE Technology 7.8.2.dev
IntPatch_Polyhedron Class Reference

This class provides a linear approximation of the PSurface. preview a constructor on a zone of a surface. More...

#include <IntPatch_Polyhedron.hxx>

Public Member Functions

 IntPatch_Polyhedron (const Handle< Adaptor3d_Surface > &Surface, const Standard_Integer nbdU, const Standard_Integer nbdV)
 MaTriangle constructor with an double array of pnt for the representation of a double array of triangles.
 
 IntPatch_Polyhedron (const Handle< Adaptor3d_Surface > &Surface)
 
void Destroy ()
 
 ~IntPatch_Polyhedron ()
 
void Perform (const Handle< Adaptor3d_Surface > &Surface, const Standard_Integer nbdU, const Standard_Integer nbdV)
 
void DeflectionOverEstimation (const Standard_Real flec)
 
Standard_Real DeflectionOnTriangle (const Handle< Adaptor3d_Surface > &Surface, const Standard_Integer Index) const
 
void UMinSingularity (const Standard_Boolean Sing)
 
void UMaxSingularity (const Standard_Boolean Sing)
 
void VMinSingularity (const Standard_Boolean Sing)
 
void VMaxSingularity (const Standard_Boolean Sing)
 
void Size (Standard_Integer &nbdu, Standard_Integer &nbdv) const
 Get the size of the MaTriangle.
 
Standard_Integer NbTriangles () const
 Give the number of triangles in this double array of triangles (nbdu*nbdv*2).
 
void Triangle (const Standard_Integer Index, Standard_Integer &P1, Standard_Integer &P2, Standard_Integer &P3) const
 Give the 3 points of the triangle of address Index in the double array of triangles.
 
Standard_Integer TriConnex (const Standard_Integer Triang, const Standard_Integer Pivot, const Standard_Integer Pedge, Standard_Integer &TriCon, Standard_Integer &OtherP) const
 Give the address Tricon of the triangle connexe to the triangle of address Triang by the edge Pivot Pedge and the third point of this connexe triangle. When we are on a free edge TriCon==0 but the function return the value of the triangle in the other side of Pivot on the free edge. Used to turn around a vertex.
 
Standard_Integer NbPoints () const
 Give the number of point in the double array of triangles ((nbdu+1)*(nbdv+1)).
 
void Point (const gp_Pnt &thePnt, const Standard_Integer lig, const Standard_Integer col, const Standard_Real U, const Standard_Real V)
 Set the value of a field of the double array of points.
 
const gp_PntPoint (const Standard_Integer Index, Standard_Real &U, Standard_Real &V) const
 Give the point of index i in the MaTriangle.
 
const gp_PntPoint (const Standard_Integer Index) const
 Give the point of index i in the MaTriangle.
 
void Point (const Standard_Integer Index, gp_Pnt &P) const
 Give the point of index i in the MaTriangle.
 
const Bnd_BoxBounding () const
 Give the bounding box of the MaTriangle.
 
void FillBounding ()
 Compute the array of boxes. The box <n> corresponding to the triangle <n>.
 
const Handle< Bnd_HArray1OfBox > & ComponentsBounding () const
 Give the array of boxes. The box <n> corresponding to the triangle <n>.
 
Standard_Real DeflectionOverEstimation () const
 
Standard_Boolean HasUMinSingularity () const
 
Standard_Boolean HasUMaxSingularity () const
 
Standard_Boolean HasVMinSingularity () const
 
Standard_Boolean HasVMaxSingularity () const
 
void PlaneEquation (const Standard_Integer Triang, gp_XYZ &NormalVector, Standard_Real &PolarDistance) const
 Give the plane equation of the triangle of address Triang.
 
Standard_Boolean Contain (const Standard_Integer Triang, const gp_Pnt &ThePnt) const
 Give the plane equation of the triangle of address Triang.
 
void Parameters (const Standard_Integer Index, Standard_Real &U, Standard_Real &V) const
 
void Dump () const
 

Detailed Description

This class provides a linear approximation of the PSurface. preview a constructor on a zone of a surface.

Constructor & Destructor Documentation

◆ IntPatch_Polyhedron() [1/2]

IntPatch_Polyhedron::IntPatch_Polyhedron ( const Handle< Adaptor3d_Surface > & Surface,
const Standard_Integer nbdU,
const Standard_Integer nbdV )

MaTriangle constructor with an double array of pnt for the representation of a double array of triangles.

◆ IntPatch_Polyhedron() [2/2]

IntPatch_Polyhedron::IntPatch_Polyhedron ( const Handle< Adaptor3d_Surface > & Surface)

◆ ~IntPatch_Polyhedron()

IntPatch_Polyhedron::~IntPatch_Polyhedron ( )
inline

Member Function Documentation

◆ Bounding()

const Bnd_Box & IntPatch_Polyhedron::Bounding ( ) const

Give the bounding box of the MaTriangle.

◆ ComponentsBounding()

const Handle< Bnd_HArray1OfBox > & IntPatch_Polyhedron::ComponentsBounding ( ) const

Give the array of boxes. The box <n> corresponding to the triangle <n>.

◆ Contain()

Standard_Boolean IntPatch_Polyhedron::Contain ( const Standard_Integer Triang,
const gp_Pnt & ThePnt ) const

Give the plane equation of the triangle of address Triang.

◆ DeflectionOnTriangle()

Standard_Real IntPatch_Polyhedron::DeflectionOnTriangle ( const Handle< Adaptor3d_Surface > & Surface,
const Standard_Integer Index ) const

◆ DeflectionOverEstimation() [1/2]

Standard_Real IntPatch_Polyhedron::DeflectionOverEstimation ( ) const

◆ DeflectionOverEstimation() [2/2]

void IntPatch_Polyhedron::DeflectionOverEstimation ( const Standard_Real flec)

◆ Destroy()

void IntPatch_Polyhedron::Destroy ( )

◆ Dump()

void IntPatch_Polyhedron::Dump ( ) const

◆ FillBounding()

void IntPatch_Polyhedron::FillBounding ( )

Compute the array of boxes. The box <n> corresponding to the triangle <n>.

◆ HasUMaxSingularity()

Standard_Boolean IntPatch_Polyhedron::HasUMaxSingularity ( ) const

◆ HasUMinSingularity()

Standard_Boolean IntPatch_Polyhedron::HasUMinSingularity ( ) const

◆ HasVMaxSingularity()

Standard_Boolean IntPatch_Polyhedron::HasVMaxSingularity ( ) const

◆ HasVMinSingularity()

Standard_Boolean IntPatch_Polyhedron::HasVMinSingularity ( ) const

◆ NbPoints()

Standard_Integer IntPatch_Polyhedron::NbPoints ( ) const

Give the number of point in the double array of triangles ((nbdu+1)*(nbdv+1)).

◆ NbTriangles()

Standard_Integer IntPatch_Polyhedron::NbTriangles ( ) const

Give the number of triangles in this double array of triangles (nbdu*nbdv*2).

◆ Parameters()

void IntPatch_Polyhedron::Parameters ( const Standard_Integer Index,
Standard_Real & U,
Standard_Real & V ) const

◆ Perform()

void IntPatch_Polyhedron::Perform ( const Handle< Adaptor3d_Surface > & Surface,
const Standard_Integer nbdU,
const Standard_Integer nbdV )

◆ PlaneEquation()

void IntPatch_Polyhedron::PlaneEquation ( const Standard_Integer Triang,
gp_XYZ & NormalVector,
Standard_Real & PolarDistance ) const

Give the plane equation of the triangle of address Triang.

◆ Point() [1/4]

void IntPatch_Polyhedron::Point ( const gp_Pnt & thePnt,
const Standard_Integer lig,
const Standard_Integer col,
const Standard_Real U,
const Standard_Real V )

Set the value of a field of the double array of points.

◆ Point() [2/4]

const gp_Pnt & IntPatch_Polyhedron::Point ( const Standard_Integer Index) const

Give the point of index i in the MaTriangle.

◆ Point() [3/4]

void IntPatch_Polyhedron::Point ( const Standard_Integer Index,
gp_Pnt & P ) const

Give the point of index i in the MaTriangle.

◆ Point() [4/4]

const gp_Pnt & IntPatch_Polyhedron::Point ( const Standard_Integer Index,
Standard_Real & U,
Standard_Real & V ) const

Give the point of index i in the MaTriangle.

◆ Size()

void IntPatch_Polyhedron::Size ( Standard_Integer & nbdu,
Standard_Integer & nbdv ) const

Get the size of the MaTriangle.

◆ Triangle()

void IntPatch_Polyhedron::Triangle ( const Standard_Integer Index,
Standard_Integer & P1,
Standard_Integer & P2,
Standard_Integer & P3 ) const

Give the 3 points of the triangle of address Index in the double array of triangles.

◆ TriConnex()

Standard_Integer IntPatch_Polyhedron::TriConnex ( const Standard_Integer Triang,
const Standard_Integer Pivot,
const Standard_Integer Pedge,
Standard_Integer & TriCon,
Standard_Integer & OtherP ) const

Give the address Tricon of the triangle connexe to the triangle of address Triang by the edge Pivot Pedge and the third point of this connexe triangle. When we are on a free edge TriCon==0 but the function return the value of the triangle in the other side of Pivot on the free edge. Used to turn around a vertex.

◆ UMaxSingularity()

void IntPatch_Polyhedron::UMaxSingularity ( const Standard_Boolean Sing)

◆ UMinSingularity()

void IntPatch_Polyhedron::UMinSingularity ( const Standard_Boolean Sing)

◆ VMaxSingularity()

void IntPatch_Polyhedron::VMaxSingularity ( const Standard_Boolean Sing)

◆ VMinSingularity()

void IntPatch_Polyhedron::VMinSingularity ( const Standard_Boolean Sing)

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