Open CASCADE Technology  7.6.0
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes

Prs3d_ToolQuadric Class Referenceabstract

Base class to build 3D surfaces presentation of quadric surfaces. More...

#include <Prs3d_ToolQuadric.hxx>

Inheritance diagram for Prs3d_ToolQuadric:
Inheritance graph
[legend]

Public Member Functions

Handle< Graphic3d_ArrayOfTrianglesCreateTriangulation (const gp_Trsf &theTrsf) const
 Generate primitives for 3D quadric surface presentation. More...
 
Handle< Poly_TriangulationCreatePolyTriangulation (const gp_Trsf &theTrsf) const
 Generate primitives for 3D quadric surface presentation. More...
 
void FillArray (Handle< Graphic3d_ArrayOfTriangles > &theArray, const gp_Trsf &theTrsf) const
 Generate primitives for 3D quadric surface and fill the given array. More...
 
Standard_Integer TrianglesNb () const
 Return number of triangles in generated presentation. More...
 
Standard_Integer VerticesNb (bool theIsIndexed=true) const
 Return number of vertices in generated presentation. More...
 
void FillArray (Handle< Graphic3d_ArrayOfTriangles > &theArray, Handle< Poly_Triangulation > &theTriangulation, const gp_Trsf &theTrsf) const
 Generate primitives for 3D quadric surface presentation. More...
 

Static Public Member Functions

static Standard_Integer TrianglesNb (const Standard_Integer theSlicesNb, const Standard_Integer theStacksNb)
 Return number of triangles for presentation with the given params. More...
 
static Standard_Integer VerticesNb (const Standard_Integer theSlicesNb, const Standard_Integer theStacksNb, const Standard_Boolean theIsIndexed=Standard_True)
 Return number of vertices for presentation with the given params. More...
 

Protected Member Functions

virtual gp_Pnt Vertex (const Standard_Real theU, const Standard_Real theV) const =0
 Redefine this method to generate vertex at given parameters. More...
 
virtual gp_Dir Normal (const Standard_Real theU, const Standard_Real theV) const =0
 Redefine this method to generate normal at given parameters. More...
 

Protected Attributes

Standard_Integer mySlicesNb
 number of slices within U parameter More...
 
Standard_Integer myStacksNb
 number of stacks within V parameter More...
 

Detailed Description

Base class to build 3D surfaces presentation of quadric surfaces.

Member Function Documentation

◆ CreatePolyTriangulation()

Handle< Poly_Triangulation > Prs3d_ToolQuadric::CreatePolyTriangulation ( const gp_Trsf theTrsf) const

Generate primitives for 3D quadric surface presentation.

Parameters
theTrsf[in] optional transformation to apply
Returns
generated triangulation

◆ CreateTriangulation()

Handle< Graphic3d_ArrayOfTriangles > Prs3d_ToolQuadric::CreateTriangulation ( const gp_Trsf theTrsf) const

Generate primitives for 3D quadric surface presentation.

Parameters
theTrsf[in] optional transformation to apply
Returns
generated triangulation

◆ FillArray() [1/2]

void Prs3d_ToolQuadric::FillArray ( Handle< Graphic3d_ArrayOfTriangles > &  theArray,
const gp_Trsf theTrsf 
) const

Generate primitives for 3D quadric surface and fill the given array.

Parameters
theArray[in][out] the array of vertices; when NULL, function will create an indexed array; when not NULL, triangles will be appended to the end of array (will raise an exception if reserved array size is not large enough)
theTrsf[in] optional transformation to apply

◆ FillArray() [2/2]

void Prs3d_ToolQuadric::FillArray ( Handle< Graphic3d_ArrayOfTriangles > &  theArray,
Handle< Poly_Triangulation > &  theTriangulation,
const gp_Trsf theTrsf 
) const

Generate primitives for 3D quadric surface presentation.

Parameters
theArray[out] generated array of triangles
theTriangulation[out] generated triangulation
theTrsf[in] optional transformation to apply
Deprecated:
("Deprecated method, CreateTriangulation() and CreatePolyTriangulation() should be used instead")

◆ Normal()

virtual gp_Dir Prs3d_ToolQuadric::Normal ( const Standard_Real  theU,
const Standard_Real  theV 
) const
protectedpure virtual

Redefine this method to generate normal at given parameters.

Implemented in Prs3d_ToolSector, Prs3d_ToolDisk, Prs3d_ToolTorus, Prs3d_ToolSphere, and Prs3d_ToolCylinder.

◆ TrianglesNb() [1/2]

Standard_Integer Prs3d_ToolQuadric::TrianglesNb ( ) const
inline

Return number of triangles in generated presentation.

◆ TrianglesNb() [2/2]

static Standard_Integer Prs3d_ToolQuadric::TrianglesNb ( const Standard_Integer  theSlicesNb,
const Standard_Integer  theStacksNb 
)
inlinestatic

Return number of triangles for presentation with the given params.

◆ Vertex()

virtual gp_Pnt Prs3d_ToolQuadric::Vertex ( const Standard_Real  theU,
const Standard_Real  theV 
) const
protectedpure virtual

Redefine this method to generate vertex at given parameters.

Implemented in Prs3d_ToolTorus, Prs3d_ToolSphere, Prs3d_ToolSector, Prs3d_ToolDisk, and Prs3d_ToolCylinder.

◆ VerticesNb() [1/2]

Standard_Integer Prs3d_ToolQuadric::VerticesNb ( bool  theIsIndexed = true) const
inline

Return number of vertices in generated presentation.

◆ VerticesNb() [2/2]

static Standard_Integer Prs3d_ToolQuadric::VerticesNb ( const Standard_Integer  theSlicesNb,
const Standard_Integer  theStacksNb,
const Standard_Boolean  theIsIndexed = Standard_True 
)
inlinestatic

Return number of vertices for presentation with the given params.

Field Documentation

◆ mySlicesNb

Standard_Integer Prs3d_ToolQuadric::mySlicesNb
protected

number of slices within U parameter

◆ myStacksNb

Standard_Integer Prs3d_ToolQuadric::myStacksNb
protected

number of stacks within V parameter


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