Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
SoIndexedShape(3IV)()					 SoIndexedShape(3IV)()

NAME
       SoIndexedShape  --  abstract  base  class  for all indexed vertex-based
       shapes

INHERITS FROM
       SoBase >	SoFieldContainer > SoNode > SoShape >  SoVertexShape  >	 SoIn-
       dexedShape

SYNOPSIS
       #include	<Inventor/nodes/SoIndexedShape.h>

	  Fields from class SoIndexedShape:

     SoMFInt32		 coordIndex
     SoMFInt32		 materialIndex
     SoMFInt32		 normalIndex
     SoMFInt32		 textureCoordIndex

	  Fields from class SoVertexShape:

     SoSFNode		 vertexProperty

	  Methods from class SoIndexedShape:

     static SoType	 getClassTypeId()

	  Methods from class SoNode:

     void		 setOverride(SbBool state)
     SbBool		 isOverride() const
     SoNode *		 copy(SbBool copyConnections = FALSE) const
     virtual SbBool	 affectsState()	const
     static SoNode *	 getByName(const SbName	&name)
     static int		 getByName(const SbName	&name, SoNodeList &list)

	  Methods from class SoFieldContainer:

     void		 setToDefaults()
     SbBool		 hasDefaultValues() const
     SbBool		 fieldsAreEqual(const SoFieldContainer *fc) const
     void		 copyFieldValues(const	SoFieldContainer  *fc,	SbBool
			      copyConnections =	FALSE)
     SbBool		 set(const char	*fieldDataString)
     void		 get(SbString &fieldDataString)
     virtual int	 getFields(SoFieldList &resultList) const
     virtual SoField *	 getField(const	SbName &fieldName) const
     SbBool		 getFieldName(const SoField *field, SbName &fieldName)
			      const
     SbBool		 isNotifyEnabled() const
     SbBool		 enableNotify(SbBool flag)

	  Methods from class SoBase:

     void		 ref()
     void		 unref() const
     void		 unrefNoDelete() const
     void		 touch()
     virtual SoType	 getTypeId() const
     SbBool		 isOfType(SoType type) const
     virtual void	 setName(const SbName &name)
     virtual SbName	 getName() const

DESCRIPTION
       This  node  is the abstract base	class for all vertex-based shapes that
       are constructed from indices, including SoIndexedFaceSet, SoIndexedTri-
       angleStripSet, and SoIndexedLineSet. SoIndexedShape defines fields that
       are used	in all of its subclasses.

       All subclasses of SoNonIndexedShape construct objects by	using the  co-
       ordinates  specified  by	the vertexProperty field (from SoVertexShape),
       or the current inherited	coordinates. The coordIndex field  defined  by
       this  class  contains  the  indices into	the current coordinates	of the
       vertices	of the shape. These indices are	also used for materials,  nor-
       mals,  or  texture coordinates when the appropriate binding is PER_VER-
       TEX_INDEXED.

       Material	and normal bindings are	interpreted as follows for  each  sub-
       class:

	  OVERALL	      One material for the entire shape.
	  PER_PART	      Specific to the subclass.
	  PER_PART_INDEXED    Same as PER_PART,	using indices from the
			      materialIndex or normalIndex field.
	  PER_FACE	      Specific to the subclass.
	  PER_FACE_INDEXED    Same as PER_FACE,	using indices from the
			      materialIndex or normalIndex field.
	  PER_VERTEX	      One material per vertex.
	  PER_VERTEX_INDEXED  One material per vertex, using indices from the
			      materialIndex or normalIndex field.

     When  any	_INDEXED binding is used for materials or normals, the materi-
     alIndex or	normalIndex field is used to determine the indices for the ma-
     terials  or normals. If this field	contains a single value	of -1 (the de-
     fault), the coordinate indices from the coordIndex	field are used as well
     for materials or normals. When the	binding	is PER_VERTEX_INDEXED, indices
     in	these fields that correspond to	negative  indices  in  coordIndex  are
     skipped;  for other index bindings	all the	values in the fields are used,
     in	order.

     Explicit texture coordinates (as defined by SoTextureCoordinate2) may  be
     bound to vertices of an indexed shape consecutively (if the texture coor-
     dinate binding is PER_VERTEX) or by using the indices in  the  textureCo-
     ordIndex  field  (if the binding is PER_VERTEX_INDEXED). As with all ver-
     tex-based shapes, if there	is a current texture but  no  texture  coordi-
     nates  are	 specified, a default texture coordinate mapping is calculated
     using the bounding	box of the shape.

     Be	sure that the indices contained	in the coordIndex, materialIndex, nor-
     malIndex, and textureCoordIndex fields are	valid with respect to the cur-
     rent state, or errors will	occur.

FIELDS
     SoMFInt32		 coordIndex
	  The indices of the coordinates that the shape	uses as	its  vertices.
	  The  coordinates connect to form faces, lines, or other shapes. Each
	  subclass defines special negative indices to use to indicate separa-
	  tion between faces, lines, and so on.

     SoMFInt32		 materialIndex
     SoMFInt32		 normalIndex
     SoMFInt32		 textureCoordIndex
	  The  indices of the materials, normals, and texture coordinates that
	  are used for the shape. These	fields are used	only when  the	appro-
	  priate binding is one	of the _INDEXED	bindings. By default, the val-
	  ues of these fields indicate that the	coordinate indices  should  be
	  used for materials, normals, or texture coordinates as well.

METHODS
     static SoType	 getClassTypeId()
	  Returns type identifier for this class.

FILE FORMAT/DEFAULTS
       This  is	 an  abstract class. See the reference page of a derived class
       for the format and default values.

SEE ALSO
       SoIndexedFaceSet, SoIndexedLineSet, SoIndexedTriangleStripSet,  SoMate-
       rialBinding,  SoNonIndexedShape,	 SoNormalBinding, SoShapeHints,	SoTex-
       tureCoordinateBinding

							 SoIndexedShape(3IV)()

NAME | INHERITS FROM | SYNOPSIS | DESCRIPTION | FIELDS | METHODS | FILE FORMAT/DEFAULTS | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=SoIndexedShape&sektion=3iv&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help