GeomVertexColumn

from panda3d.core import GeomVertexColumn
class GeomVertexColumn

Bases: GeomEnums

This defines how a single column is interleaved within a vertex array stored within a Geom. The GeomVertexArrayFormat class maintains a list of these to completely define a particular array structure.

Inheritance diagram

Inheritance diagram of GeomVertexColumn

__init__(*args, **kwargs)
assign()

C++ Interface: assign(const GeomVertexColumn self, const GeomVertexColumn copy)

getColumnAlignment()

C++ Interface: get_column_alignment(GeomVertexColumn self)

/**
  • Returns the alignment requirements for this column. If this is greater

  • than 1, it restricts the column to appear only on memory addresses that are

  • integer multiples of this value; this has implications for this column’s

  • start value, as well as the stride of the resulting array.

*/

getComponentBytes()

C++ Interface: get_component_bytes(GeomVertexColumn self)

/**
  • Returns the number of bytes used by each component (that is, by one element

  • of the numeric type).

*/

getContents()

C++ Interface: get_contents(GeomVertexColumn self)

/**
  • Returns the token representing the semantic meaning of the stored value.

*/

getElementStride()

C++ Interface: get_element_stride(GeomVertexColumn self)

/**
  • This value is only relevant for matrix types. Returns the number of bytes

  • to add to access the next row of the matrix.

*/

getName()

C++ Interface: get_name(GeomVertexColumn self)

/**
  • Returns the name of this particular data field, e.g. “vertex” or “normal”.

  • The name may be a user-defined string, or it may be one of the standard

  • system-defined field types. Only the system-defined field types are used

  • for the actual rendering.

*/

getNumComponents()

C++ Interface: get_num_components(GeomVertexColumn self)

/**
  • Returns the number of components of the column: the number of instances of

  • the NumericType in each element. This is usually, but not always, the same

  • thing as get_num_values().

*/

getNumElements()

C++ Interface: get_num_elements(GeomVertexColumn self)

/**
  • Returns the number of times this column is repeated. This is usually 1,

  • except for matrices.

*/

getNumValues()

C++ Interface: get_num_values(GeomVertexColumn self)

/**
  • Returns the number of numeric values of the column: the number of distinct

  • numeric values that go into each element. This is usually, but not always,

  • the same thing as get_num_components(); the difference is in the case of a

  • composite numeric type like NT_packed_dcba, which has four numeric values

  • per component.

*/

getNumericType()

C++ Interface: get_numeric_type(GeomVertexColumn self)

/**
  • Returns the token representing the numeric type of the data storage.

*/

getStart()

C++ Interface: get_start(GeomVertexColumn self)

/**
  • Returns the byte within the array record at which this column starts. This

  • can be set to non-zero to implement interleaved arrays.

*/

getTotalBytes()

C++ Interface: get_total_bytes(GeomVertexColumn self)

/**
  • Returns the number of bytes used by each element of the column:

  • component_bytes * num_components.

*/

get_column_alignment()

C++ Interface: get_column_alignment(GeomVertexColumn self)

/**
  • Returns the alignment requirements for this column. If this is greater

  • than 1, it restricts the column to appear only on memory addresses that are

  • integer multiples of this value; this has implications for this column’s

  • start value, as well as the stride of the resulting array.

*/

get_component_bytes()

C++ Interface: get_component_bytes(GeomVertexColumn self)

/**
  • Returns the number of bytes used by each component (that is, by one element

  • of the numeric type).

*/

get_contents()

C++ Interface: get_contents(GeomVertexColumn self)

/**
  • Returns the token representing the semantic meaning of the stored value.

*/

get_element_stride()

C++ Interface: get_element_stride(GeomVertexColumn self)

/**
  • This value is only relevant for matrix types. Returns the number of bytes

  • to add to access the next row of the matrix.

*/

get_name()

C++ Interface: get_name(GeomVertexColumn self)

/**
  • Returns the name of this particular data field, e.g. “vertex” or “normal”.

  • The name may be a user-defined string, or it may be one of the standard

  • system-defined field types. Only the system-defined field types are used

  • for the actual rendering.

*/

get_num_components()

C++ Interface: get_num_components(GeomVertexColumn self)

/**
  • Returns the number of components of the column: the number of instances of

  • the NumericType in each element. This is usually, but not always, the same

  • thing as get_num_values().

*/

get_num_elements()

C++ Interface: get_num_elements(GeomVertexColumn self)

/**
  • Returns the number of times this column is repeated. This is usually 1,

  • except for matrices.

*/

get_num_values()

C++ Interface: get_num_values(GeomVertexColumn self)

/**
  • Returns the number of numeric values of the column: the number of distinct

  • numeric values that go into each element. This is usually, but not always,

  • the same thing as get_num_components(); the difference is in the case of a

  • composite numeric type like NT_packed_dcba, which has four numeric values

  • per component.

*/

get_numeric_type()

C++ Interface: get_numeric_type(GeomVertexColumn self)

/**
  • Returns the token representing the numeric type of the data storage.

*/

get_start()

C++ Interface: get_start(GeomVertexColumn self)

/**
  • Returns the byte within the array record at which this column starts. This

  • can be set to non-zero to implement interleaved arrays.

*/

get_total_bytes()

C++ Interface: get_total_bytes(GeomVertexColumn self)

/**
  • Returns the number of bytes used by each element of the column:

  • component_bytes * num_components.

*/

hasHomogeneousCoord()

C++ Interface: has_homogeneous_coord(GeomVertexColumn self)

/**
  • Returns true if this Contents type is one that includes a homogeneous

  • coordinate in the fourth component, or false otherwise. If this is true,

  • correct operation on the vertex data may require scaling by the homogeneous

  • coordinate from time to time (but in general this is handled automatically

  • if you use the 3-component or smaller forms of get_data() and set_data()).

*/

has_homogeneous_coord()

C++ Interface: has_homogeneous_coord(GeomVertexColumn self)

/**
  • Returns true if this Contents type is one that includes a homogeneous

  • coordinate in the fourth component, or false otherwise. If this is true,

  • correct operation on the vertex data may require scaling by the homogeneous

  • coordinate from time to time (but in general this is handled automatically

  • if you use the 3-component or smaller forms of get_data() and set_data()).

*/

isBytewiseEquivalent()

C++ Interface: is_bytewise_equivalent(GeomVertexColumn self, const GeomVertexColumn other)

/**
  • Returns true if the data store of this column is exactly the same as that

  • of the other, irrespective of name or start position within the record.

*/

is_bytewise_equivalent()

C++ Interface: is_bytewise_equivalent(GeomVertexColumn self, const GeomVertexColumn other)

/**
  • Returns true if the data store of this column is exactly the same as that

  • of the other, irrespective of name or start position within the record.

*/

output()

C++ Interface: output(GeomVertexColumn self, ostream out)

/**

*/

overlapsWith()

C++ Interface: overlaps_with(GeomVertexColumn self, int start_byte, int num_bytes)

/**
  • Returns true if this column overlaps with any of the bytes in the indicated

  • range, false if it does not.

*/

overlaps_with()

C++ Interface: overlaps_with(GeomVertexColumn self, int start_byte, int num_bytes)

/**
  • Returns true if this column overlaps with any of the bytes in the indicated

  • range, false if it does not.

*/

setColumnAlignment()

C++ Interface: set_column_alignment(const GeomVertexColumn self, int column_alignment)

/**
  • Changes the column alignment of an existing column. This is only legal on

  • an unregistered format (i.e. when constructing the format initially).

*/

setContents()

C++ Interface: set_contents(const GeomVertexColumn self, int contents)

/**
  • Changes the semantic meaning of an existing column. This is only legal on

  • an unregistered format (i.e. when constructing the format initially).

*/

setName()

C++ Interface: set_name(const GeomVertexColumn self, InternalName name)

/**
  • Replaces the name of an existing column. This is only legal on an

  • unregistered format (i.e. when constructing the format initially).

*/

setNumComponents()

C++ Interface: set_num_components(const GeomVertexColumn self, int num_components)

/**
  • Changes the number of components of an existing column. This is only legal

  • on an unregistered format (i.e. when constructing the format initially).

*/

setNumericType()

C++ Interface: set_numeric_type(const GeomVertexColumn self, int numeric_type)

/**
  • Changes the numeric type an existing column. This is only legal on an

  • unregistered format (i.e. when constructing the format initially).

*/

setStart()

C++ Interface: set_start(const GeomVertexColumn self, int start)

/**
  • Changes the start byte of an existing column. This is only legal on an

  • unregistered format (i.e. when constructing the format initially).

*/

set_column_alignment()

C++ Interface: set_column_alignment(const GeomVertexColumn self, int column_alignment)

/**
  • Changes the column alignment of an existing column. This is only legal on

  • an unregistered format (i.e. when constructing the format initially).

*/

set_contents()

C++ Interface: set_contents(const GeomVertexColumn self, int contents)

/**
  • Changes the semantic meaning of an existing column. This is only legal on

  • an unregistered format (i.e. when constructing the format initially).

*/

set_name()

C++ Interface: set_name(const GeomVertexColumn self, InternalName name)

/**
  • Replaces the name of an existing column. This is only legal on an

  • unregistered format (i.e. when constructing the format initially).

*/

set_num_components()

C++ Interface: set_num_components(const GeomVertexColumn self, int num_components)

/**
  • Changes the number of components of an existing column. This is only legal

  • on an unregistered format (i.e. when constructing the format initially).

*/

set_numeric_type()

C++ Interface: set_numeric_type(const GeomVertexColumn self, int numeric_type)

/**
  • Changes the numeric type an existing column. This is only legal on an

  • unregistered format (i.e. when constructing the format initially).

*/

set_start()

C++ Interface: set_start(const GeomVertexColumn self, int start)

/**
  • Changes the start byte of an existing column. This is only legal on an

  • unregistered format (i.e. when constructing the format initially).

*/