---
name: "SoPrimitiveVertex"
section: "3iv"
platform: "linux"
package: "inventor-doc"
version: "2.1.6+ds-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/SoPrimitiveVertex/3iv"
---

# SoPrimitiveVertex(3iv)

represents a vertex of a generated primitive

## NAME

SoPrimitiveVertex — represents a vertex of a generated primitive

## INHERITS FROM

SoPrimitiveVertex

## SYNOPSIS

**#include \<Inventor/SoPrimitiveVertex.h\>**

Methods from class SoPrimitiveVertex:

	**SoPrimitiveVertex()**\
 	**SoPrimitiveVertex(const SoPrimitiveVertex &pv)**\
 	**~SoPrimitiveVertex()**\
 **const SbVec3f &**	**getPoint() const**\
 **const SbVec3f &**	**getNormal() const**\
 **const SbVec4f &**	**getTextureCoords() const**\
 **int**	**getMaterialIndex() const**\
 **const SoDetail \***	**getDetail() const**\
 **SoPrimitiveVertex &**	**operator =(const SoPrimitiveVertex &pv)**

## DESCRIPTION

**An SoPrimitiveVertex** represents a vertex of a primitive (triangle, line segment, or point) that is being generated by an **SoCallbackAction**. It contains an object-space point, normal, texture coordinates, material index, and a pointer to an instance of an **SoDetail** subclass. This detail may contain more information about the vertex, or may be a NULL pointer if there is no such info.

Instances of **SoPrimitiveVertex** are typically created on the stack by shape classes while they are generating primitives. Anyone who wants to save them as return values from **SoCallbackAction** should probably make copies of them.

## METHODS

	**SoPrimitiveVertex()**\
 	**SoPrimitiveVertex(const SoPrimitiveVertex &pv)**\
 	**~SoPrimitiveVertex()**\
 Constructors and destructor. Note that copying a primitive vertex copies the detail pointer, and not the detail itself.

**const SbVec3f &**	**getPoint() const**\
 **const SbVec3f &**	**getNormal() const**\
 **const SbVec4f &**	**getTextureCoords() const**\
 These return the surface point, normal, and texture coordinates in object space.

**int**	**getMaterialIndex() const**\
 Returns the index into the current set of materials of the material active at the vertex.

**const SoDetail \***	**getDetail() const**\
 Returns the detail giving more information about the vertex. Note that this pointer may be NULL if there is no more info.

**SoPrimitiveVertex &**	**operator =(const SoPrimitiveVertex &pv)**\
 Copies the given vertex. Note that just the pointer to the detail is copied, and not the detail itself.
