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

#include <VrmlData_IndexedFaceSet.hxx>

Inheritance diagram for VrmlData_IndexedFaceSet:
Inheritance graph
[legend]

Public Member Functions

 VrmlData_IndexedFaceSet ()
 VrmlData_IndexedFaceSet (const VrmlData_Scene &theScene, const char *theName, const Standard_Boolean isCCW=Standard_True, const Standard_Boolean isSolid=Standard_True, const Standard_Boolean isConvex=Standard_True, const Standard_Real theCreaseAngle=0.)
const Handle< VrmlData_Normal > & Normals () const
const Handle< VrmlData_Color > & Colors () const
const Handle
< VrmlData_TextureCoordinate > & 
TextureCoords () const
const Handle
< VrmlData_Coordinate > & 
Coordinates () const
size_t Polygons (const Standard_Integer **&arrPolygons) const
Standard_Integer Polygon (const Standard_Integer iFace, const Standard_Integer *&outIndice)
void SetCoordinates (const Handle< VrmlData_Coordinate > &theCoord)
void SetPolygons (const Standard_Integer nPolygons, const Standard_Integer **thePolygons)
size_t ArrayNormalInd (const Standard_Integer **&arrNormalInd) const
Standard_Integer IndiceNormals (const Standard_Integer iFace, const Standard_Integer *&outIndice)
gp_XYZ GetNormal (const Standard_Integer iFace, const Standard_Integer iVertex)
void SetNormalInd (const Standard_Integer nIndice, const Standard_Integer **theIndice)
void SetNormals (const Handle< VrmlData_Normal > &theNormals)
void SetNormalPerVertex (const Standard_Boolean isNormalPerVertex)
size_t ArrayColorInd (const Standard_Integer **&arrColorInd) const
Quantity_Color GetColor (const Standard_Integer iFace, const Standard_Integer iVertex)
void SetColorInd (const Standard_Integer nIndice, const Standard_Integer **theIndice)
void SetColors (const Handle< VrmlData_Color > &theColors)
void SetColorPerVertex (const Standard_Boolean isColorPerVertex)
size_t ArrayTextureCoordInd (const Standard_Integer **&arrTextureCoordInd) const
void SetTextureCoordInd (const Standard_Integer nIndice, const Standard_Integer **theIndice)
void SetTextureCoords (const Handle< VrmlData_TextureCoordinate > &tc)
virtual const Handle
< TopoDS_TShape > & 
TShape ()
virtual Handle< VrmlData_NodeClone (const Handle< VrmlData_Node > &theOther) const
virtual VrmlData_ErrorStatus Read (VrmlData_InBuffer &theBuffer)
virtual VrmlData_ErrorStatus Write (const char *thePrefix) const
virtual Standard_Boolean IsDefault () const

Detailed Description

Implementation of IndexedFaceSet node


Constructor & Destructor Documentation

Empty constructor

Constructor


Member Function Documentation

size_t VrmlData_IndexedFaceSet::ArrayColorInd ( const Standard_Integer **&  arrColorInd) const [inline]

Query the array of color indice

Parameters:
arrColorInd[out] array of colorIndex as it is described in VRML2.0 spec
Returns:
Number of integers in the array arrColorInd.
size_t VrmlData_IndexedFaceSet::ArrayNormalInd ( const Standard_Integer **&  arrNormalInd) const [inline]

Query the array of normal indice

Parameters:
arrNormalInd[out] array of normalIndex as it is described in VRML2.0 spec
Returns:
Number of integers in the array arrNormalInd.
size_t VrmlData_IndexedFaceSet::ArrayTextureCoordInd ( const Standard_Integer **&  arrTextureCoordInd) const [inline]

Query the array of texture coordinate indice

Parameters:
arrTextureCoordInd[out] array of texCoordIndex as it is described in VRML2.0 spec
Returns:
Number of integers in the array texCoordIndex.
virtual Handle< VrmlData_Node > VrmlData_IndexedFaceSet::Clone ( const Handle< VrmlData_Node > &  theOther) const [virtual]

Create a copy of this node. If the parameter is null, a new copied node is created. Otherwise new node is not created, but rather the given one is modified.

Reimplemented from VrmlData_Node.

Query the Colors.

Query the Coordinates.

Query a color for one node in the given element. The color is interpreted according to fields myColors, myArrColorInd, myColorPerVertex, as defined in VRML 2.0.

Parameters:
iFacerank of the polygon [0 .. N-1]
iVertexrank of the vertex in the polygon [0 .. M-1]. This parameter is ignored if (myColorPerVertex == False)
Returns:
Color value (RGB); if the color is indefinite then returns (0., 0., 0.)

Query a normal for one node in the given element. The normal is interpreted according to fields myNormals, myArrNormalInd, myNormalPerVertex, as defined in VRML 2.0.

Parameters:
iFacerank of the polygon [0 .. N-1]
iVertexrank of the vertex in the polygon [0 .. M-1]. This parameter is ignored if (myNormalPerVertex == False)
Returns:
Normal vector; if the normal is indefinite then returns (0., 0., 0.)

Query normals indice for one face. This method should be called after checking myArrNormalInd != NULL, otherwise exception will be thrown.

Parameters:
iFacerank of the face [0 .. N-1]
outIndice[out] array of normals indice
Returns:
number of indice in the array - the dimension of outIndice array

Returns True if the node is default, so that it should not be written.

Reimplemented from VrmlData_Node.

Query the Normals.

Query one polygon.

Parameters:
iFacerank of the polygon [0 .. N-1]
outIndice[out] array of vertex indice
Returns:
number of vertice in the polygon - the dimension of outIndice array
size_t VrmlData_IndexedFaceSet::Polygons ( const Standard_Integer **&  arrPolygons) const [inline]

Query the array of polygons

Read the Node from input stream.

Implements VrmlData_Node.

Set the colors array of indice

Set the boolean value "colorPerVertex"

Set the Color node

Set the nodes

Set the normals array of indice

Set the boolean value "normalPerVertex"

Set the normals node

Set the polygons

Set the TexCoordiante array of indice

Set the Texture Coordinate node

Query the Texture Coordinates.

Query the shape. This method checks the flag myIsModified; if True it should rebuild the shape presentation.

Implements VrmlData_Geometry.

virtual VrmlData_ErrorStatus VrmlData_IndexedFaceSet::Write ( const char *  thePrefix) const [virtual]

Write the Node to output stream.

Reimplemented from VrmlData_Node.


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