TransformBlendTable

from panda3d.core import TransformBlendTable
class TransformBlendTable

Bases: CopyOnWriteObject

This structure collects together the different combinations of transforms and blend amounts used by a GeomVertexData, to facilitate computing dynamic vertices on the CPU at runtime. Each vertex has a pointer to exactly one of the entries in this table, and each entry defines a number of transform/blend combinations.

This structure is used for a GeomVertexData set up to compute its dynamic vertices on the CPU. See TransformTable for one set up to compute its dynamic vertices on the graphics card.

Inheritance diagram

Inheritance diagram of TransformBlendTable

__init__(*args, **kwargs)
addBlend()

C++ Interface: add_blend(const TransformBlendTable self, const TransformBlend blend)

/**
  • Adds a new blend to the table, and returns its index number. If there is

  • already an identical blend in the table, simply returns that number

  • instead.

*/

add_blend()

C++ Interface: add_blend(const TransformBlendTable self, const TransformBlend blend)

/**
  • Adds a new blend to the table, and returns its index number. If there is

  • already an identical blend in the table, simply returns that number

  • instead.

*/

assign()

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

blends
getBlend()

C++ Interface: get_blend(TransformBlendTable self, int n)

/**
  • Returns the nth blend in the table.

*/

getBlends()
getClassType()

C++ Interface: get_class_type()

getMaxSimultaneousTransforms()

C++ Interface: get_max_simultaneous_transforms(TransformBlendTable self)

/**
  • Returns the maximum number of unique VertexTransform objects that are

  • applied to any one vertex simultaneously. This is the same limit reflected

  • by GraphicsStateGuardian::get_max_vertex_transforms().

*/

getModified()

C++ Interface: get_modified(TransformBlendTable self, Thread current_thread)

/**
  • Returns a counter which is guaranteed to increment at least when any

  • TransformBlends within the table have changed.

*/

getNumBlends()

C++ Interface: get_num_blends(TransformBlendTable self)

/**
  • Returns the total number of different blend combinations in the table.

*/

getNumTransforms()

C++ Interface: get_num_transforms(TransformBlendTable self)

/**
  • Returns the number of unique VertexTransform objects represented in the

  • table. This will correspond to the size of the TransformTable object that

  • would represent the same table. This is also the same limit reflected by

  • GraphicsStateGuardian::get_max_vertex_transform_indices().

*/

getRows()

C++ Interface: get_rows(TransformBlendTable self)

/**
  • Returns the subset of rows (vertices) in the associated GeomVertexData that

  • this TransformBlendTable actually affects.

*/

get_blend()

C++ Interface: get_blend(TransformBlendTable self, int n)

/**
  • Returns the nth blend in the table.

*/

get_blends()
get_class_type()

C++ Interface: get_class_type()

get_max_simultaneous_transforms()

C++ Interface: get_max_simultaneous_transforms(TransformBlendTable self)

/**
  • Returns the maximum number of unique VertexTransform objects that are

  • applied to any one vertex simultaneously. This is the same limit reflected

  • by GraphicsStateGuardian::get_max_vertex_transforms().

*/

get_modified()

C++ Interface: get_modified(TransformBlendTable self, Thread current_thread)

/**
  • Returns a counter which is guaranteed to increment at least when any

  • TransformBlends within the table have changed.

*/

get_num_blends()

C++ Interface: get_num_blends(TransformBlendTable self)

/**
  • Returns the total number of different blend combinations in the table.

*/

get_num_transforms()

C++ Interface: get_num_transforms(TransformBlendTable self)

/**
  • Returns the number of unique VertexTransform objects represented in the

  • table. This will correspond to the size of the TransformTable object that

  • would represent the same table. This is also the same limit reflected by

  • GraphicsStateGuardian::get_max_vertex_transform_indices().

*/

get_rows()

C++ Interface: get_rows(TransformBlendTable self)

/**
  • Returns the subset of rows (vertices) in the associated GeomVertexData that

  • this TransformBlendTable actually affects.

*/

max_simultaneous_transforms
modified
modifyRows()

C++ Interface: modify_rows(const TransformBlendTable self)

/**
  • Returns a modifiable reference to the SparseArray that specifies the subset

  • of rows (vertices) in the associated GeomVertexData that this

  • TransformBlendTable actually affects.

*/

modify_rows()

C++ Interface: modify_rows(const TransformBlendTable self)

/**
  • Returns a modifiable reference to the SparseArray that specifies the subset

  • of rows (vertices) in the associated GeomVertexData that this

  • TransformBlendTable actually affects.

*/

num_transforms
removeBlend()

C++ Interface: remove_blend(const TransformBlendTable self, int n)

/**
  • Removes the blend at the nth position.

*/

remove_blend()

C++ Interface: remove_blend(const TransformBlendTable self, int n)

/**
  • Removes the blend at the nth position.

*/

rows
setBlend()

C++ Interface: set_blend(const TransformBlendTable self, int n, const TransformBlend blend)

/**
  • Replaces the blend at the nth position with the indicated value.

*/

setRows()

C++ Interface: set_rows(const TransformBlendTable self, const SparseArray rows)

/**
  • Specifies the subset of rows (vertices) in the associated GeomVertexData

  • that this TransformBlendTable actually affects.

*/

set_blend()

C++ Interface: set_blend(const TransformBlendTable self, int n, const TransformBlend blend)

/**
  • Replaces the blend at the nth position with the indicated value.

*/

set_rows()

C++ Interface: set_rows(const TransformBlendTable self, const SparseArray rows)

/**
  • Specifies the subset of rows (vertices) in the associated GeomVertexData

  • that this TransformBlendTable actually affects.

*/

write()

C++ Interface: write(TransformBlendTable self, ostream out, int indent_level)

/**

*/