SoNonIndexedShape - Online Linux Manual PageSection : 3
Updated : Mon Jan 25 2021
Source : Version 2.5.0
Note : Coin

NAMESoNonIndexedShape − The SoNonIndexedShape class is the superclass for all non-indexed vertex based shapes​.

SYNOPSIS
#include <Inventor/nodes/SoNonIndexedShape​.h> Inherits SoVertexShape​. Inherited by SoFaceSet, SoLineSet, SoPointSet, SoQuadMesh, and SoTriangleStripSet​.

Public Member Functionsvirtual SoType getTypeId (void) const

Static Public Member Functionsstatic SoType getClassTypeId (void)
static void initClass (void)

Public AttributesSoSFInt32 startIndex

Protected Member Functionsvirtual const SoFieldData * getFieldData (void) const
SoNonIndexedShape (void)
virtual ~SoNonIndexedShape ()
void computeCoordBBox (SoAction *action, int numVertices, SbBox3f &box, SbVec3f ¢er)
void fixNumVerticesPointers (SoState *state, const int32_t *&start, const int32_t *&end, int32_t *dummyarray) const

Static Protected Member Functionsstatic const SoFieldData ** getFieldDataPtr (void)

Additional Inherited Members

Detailed DescriptionThe SoNonIndexedShape class is the superclass for all non-indexed vertex based shapes​. It contains the (now obsoleted) startIndex field and a convenience method for calculating the bounding box​.

Constructor & Destructor Documentation

SoNonIndexedShape::SoNonIndexedShape (void) [protected]Constructor​. References startIndex​.

SoNonIndexedShape::~SoNonIndexedShape () [protected], [virtual]Destructor​.

Member Function Documentation

SoType SoNonIndexedShape::getTypeId (void) const [virtual]Returns the type identification of an object derived from a class inheriting SoBase​. This is used for run-time type checking and 'downward' casting​. Usage example: void foo(SoNode * node) { if (node->getTypeId() == SoFile::getClassTypeId()) { SoFile * filenode = (SoFile *)node; // safe downward cast, knows the type } else if (node->getTypeId()​.isOfType(SoGroup::getClassTypeId())) { SoGroup * group = (SoGroup *)node; // safe downward cast, knows the type } }For application programmers wanting to extend the library with new nodes, engines, nodekits, draggers or others: this method needs to be overridden in all subclasses​. This is typically done as part of setting up the full type system for extension classes, which is usually accomplished by using the pre-defined macros available through for instance Inventor/nodes/SoSubNode​.h (SO_NODE_INIT_CLASS and SO_NODE_CONSTRUCTOR for node classes), Inventor/engines/SoSubEngine​.h (for engine classes) and so on​. For more information on writing Coin extensions, see the class documentation of the toplevel superclasses for the various class groups​. Reimplemented from SoVertexShape​. Reimplemented in SoTriangleStripSet, SoQuadMesh, SoPointSet, SoMarkerSet, SoLineSet, and SoFaceSet​.

const SoFieldData * SoNonIndexedShape::getFieldData (void) const [protected], [virtual]Returns a pointer to the class-wide field data storage object for this instance​. If no fields are present, returns NULL​. Reimplemented from SoVertexShape​. Reimplemented in SoTriangleStripSet, SoQuadMesh, SoPointSet, SoMarkerSet, SoLineSet, and SoFaceSet​.

void SoNonIndexedShape::computeCoordBBox (SoAction * action, int numVertices, SbBox3f & box, SbVec3f & center) [protected]This method is provided as a convenient means for the subclasses of this class to find their bounding box and center value​. The returned bounding box will enclose all vertices from startIndex up to startIndex + numVertices​. If numVertices is less than zero, all vertices in the current coordinate element or vertex property node will be used in the calculation​. The center point will be calculated as the average of all the vertices in the bounding box​. References SbBox3f::extendBy(), SoMField::getNum(), SbVec4f::getReal(), SoAction::getState(), SoMFVec3f::getValues(), SoBase::isOfType(), SbVec3f::setValue(), startIndex, SoVertexProperty::vertex, and SoVertexShape::vertexProperty​. Referenced by SoFaceSet::computeBBox(), SoLineSet::computeBBox(), SoPointSet::computeBBox(), SoQuadMesh::computeBBox(), and SoTriangleStripSet::computeBBox()​.

void SoNonIndexedShape::fixNumVerticesPointers (SoState * state, const int32_t *& start, const int32_t *& end, int32_t * dummyarray) const [protected]Convenience method that might adjust start and end pointers, which should point at the start and end of the numVertices array when calling this method​. This takes care of the case where numVertices contains a single -1, and all coordinates in the state (or in the vertexProperty field) should be rendered as one primitive​. dummyarray should be a temporary array, with room for one integer​. Not part of the OIV API​.
References SoMField::getNum(), startIndex, SoVertexProperty::vertex, and SoVertexShape::vertexProperty​. Referenced by SoFaceSet::generateDefaultNormals(), SoTriangleStripSet::generateDefaultNormals(), SoFaceSet::generatePrimitives(), SoLineSet::generatePrimitives(), SoTriangleStripSet::generatePrimitives(), SoFaceSet::getPrimitiveCount(), SoLineSet::getPrimitiveCount(), SoTriangleStripSet::getPrimitiveCount(), SoFaceSet::GLRender(), SoLineSet::GLRender(), and SoTriangleStripSet::GLRender()​.

Member Data Documentation

SoSFInt32 SoNonIndexedShape::startIndexCoordinates are fetched from this index on​. This field is now obsoleted, and is provided only for backward compatibility​.
Referenced by computeCoordBBox(), fixNumVerticesPointers(), SoFaceSet::generateDefaultNormals(), SoQuadMesh::generateDefaultNormals(), SoTriangleStripSet::generateDefaultNormals(), SoFaceSet::generatePrimitives(), SoLineSet::generatePrimitives(), SoPointSet::generatePrimitives(), SoQuadMesh::generatePrimitives(), SoTriangleStripSet::generatePrimitives(), SoMarkerSet::getPrimitiveCount(), SoPointSet::getPrimitiveCount(), SoFaceSet::GLRender(), SoLineSet::GLRender(), SoMarkerSet::GLRender(), SoPointSet::GLRender(), SoQuadMesh::GLRender(), SoTriangleStripSet::GLRender(), and SoNonIndexedShape()​.

AuthorGenerated automatically by Doxygen for Coin from the source code​.
0
Johanes Gumabo
Data Size   :   26,236 byte
man-SoNonIndexedShape.3coin2Build   :   2024-12-05, 20:55   :  
Visitor Screen   :   x
Visitor Counter ( page / site )   :   2 / 180,818
Visitor ID   :     :  
Visitor IP   :   3.137.186.26   :  
Visitor Provider   :   AMAZON-02   :  
Provider Position ( lat x lon )   :   39.962500 x -83.006100   :   x
Provider Accuracy Radius ( km )   :   1000   :  
Provider City   :   Columbus   :  
Provider Province   :   Ohio ,   :   ,
Provider Country   :   United States   :  
Provider Continent   :   North America   :  
Visitor Recorder   :   Version   :  
Visitor Recorder   :   Library   :  
Online Linux Manual Page   :   Version   :   Online Linux Manual Page - Fedora.40 - march=x86-64 - mtune=generic - 24.12.05
Online Linux Manual Page   :   Library   :   lib_c - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Online Linux Manual Page   :   Library   :   lib_m - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Data Base   :   Version   :   Online Linux Manual Page Database - 24.04.13 - march=x86-64 - mtune=generic - fedora-38
Data Base   :   Library   :   lib_c - 23.02.07 - march=x86-64 - mtune=generic - fedora.36

Very long time ago, I have the best tutor, Wenzel Svojanovsky . If someone knows the email address of Wenzel Svojanovsky , please send an email to johanes_gumabo@yahoo.co.id .
If error, please print screen and send to johanes_gumabo@yahoo.co.id
Under development. Support me via PayPal.