GeomVertexRewriter
from panda3d.core import GeomVertexRewriter
- class GeomVertexRewriter
Bases:
GeomVertexWriter
,GeomVertexReader
This object provides the functionality of both a GeomVertexReader and a GeomVertexWriter, combined together into one convenient package. It is designed for making a single pass over a GeomVertexData object, modifying rows as it goes.
Although it doesn’t provide any real performance benefit over using a separate reader and writer on the same data, it should probably be used in preference to a separate reader and writer, because it makes an effort to manage the reference counts properly between the reader and the writer to avoid accidentally dereferencing either array while recopying.
Inheritance diagram
- __init__(*args, **kwargs)
- assign()
C++ Interface: assign(const GeomVertexRewriter self, const GeomVertexRewriter copy)
- clear()
C++ Interface: clear(const GeomVertexRewriter self)
- /**
Resets the GeomVertexRewriter to the initial state.
*/
- getArray()
C++ Interface: get_array(GeomVertexRewriter self)
- /**
Returns the array index containing the data type that the rewriter is
working on.
*/
- getArrayData()
C++ Interface: get_array_data(GeomVertexRewriter self)
- /**
Returns the particular array object that the rewriter is currently
processing.
*/
- getArrayHandle()
C++ Interface: get_array_handle(GeomVertexRewriter self)
- /**
Returns the write handle to the array object that the rewriter is currently
processing. This low-level call should be used with caution; be careful
with modifying the data in the handle out from under the
GeomVertexRewriter.
*/
- getColumn()
C++ Interface: get_column(GeomVertexRewriter self)
- /**
Returns the description of the data type that the rewriter is working on.
*/
- getCurrentThread()
C++ Interface: get_current_thread(GeomVertexRewriter self)
- /**
Returns the Thread pointer of the currently-executing thread, as passed to
the constructor of this object.
*/
- getStartRow()
C++ Interface: get_start_row(GeomVertexRewriter self)
- /**
Returns the row index at which the rewriter started. It will return to
this row if you reset the current column.
*/
- getStride()
C++ Interface: get_stride(GeomVertexRewriter self)
- /**
Returns the per-row stride (bytes between consecutive rows) of the
underlying vertex array. This low-level information is normally not needed
to use the GeomVertexRewriter directly.
*/
- getVertexData()
C++ Interface: get_vertex_data(GeomVertexRewriter self)
- /**
Returns the vertex data object that the rewriter is processing.
*/
- get_array()
C++ Interface: get_array(GeomVertexRewriter self)
- /**
Returns the array index containing the data type that the rewriter is
working on.
*/
- get_array_data()
C++ Interface: get_array_data(GeomVertexRewriter self)
- /**
Returns the particular array object that the rewriter is currently
processing.
*/
- get_array_handle()
C++ Interface: get_array_handle(GeomVertexRewriter self)
- /**
Returns the write handle to the array object that the rewriter is currently
processing. This low-level call should be used with caution; be careful
with modifying the data in the handle out from under the
GeomVertexRewriter.
*/
- get_column()
C++ Interface: get_column(GeomVertexRewriter self)
- /**
Returns the description of the data type that the rewriter is working on.
*/
- get_current_thread()
C++ Interface: get_current_thread(GeomVertexRewriter self)
- /**
Returns the Thread pointer of the currently-executing thread, as passed to
the constructor of this object.
*/
- get_start_row()
C++ Interface: get_start_row(GeomVertexRewriter self)
- /**
Returns the row index at which the rewriter started. It will return to
this row if you reset the current column.
*/
- get_stride()
C++ Interface: get_stride(GeomVertexRewriter self)
- /**
Returns the per-row stride (bytes between consecutive rows) of the
underlying vertex array. This low-level information is normally not needed
to use the GeomVertexRewriter directly.
*/
- get_vertex_data()
C++ Interface: get_vertex_data(GeomVertexRewriter self)
- /**
Returns the vertex data object that the rewriter is processing.
*/
- hasColumn()
C++ Interface: has_column(GeomVertexRewriter self)
- /**
Returns true if a valid data type has been successfully set, or false if
the data type does not exist.
*/
- has_column()
C++ Interface: has_column(GeomVertexRewriter self)
- /**
Returns true if a valid data type has been successfully set, or false if
the data type does not exist.
*/
- isAtEnd()
C++ Interface: is_at_end(GeomVertexRewriter self)
- /**
Returns true if the reader or writer is currently at the end of the list of
vertices, false otherwise.
*/
- is_at_end()
C++ Interface: is_at_end(GeomVertexRewriter self)
- /**
Returns true if the reader or writer is currently at the end of the list of
vertices, false otherwise.
*/
- setColumn()
C++ Interface: set_column(const GeomVertexRewriter self, const InternalName name) set_column(const GeomVertexRewriter self, int column) set_column(const GeomVertexRewriter self, int array, const GeomVertexColumn column)
- /**
Sets up the rewriter to use the nth data type of the GeomVertexFormat,
numbering from 0.
This also resets both the read and write row numbers to the start row (the
same value passed to a previous call to set_row(), or 0 if set_row() was
never called.)
The return value is true if the data type is valid, false otherwise.
*/
- /**
Sets up the rewriter to use the data type with the indicated name.
This also resets both the read and write row numbers to the start row (the
same value passed to a previous call to set_row(), or 0 if set_row() was
never called.)
The return value is true if the data type is valid, false otherwise.
*/
- /**
Sets up the rewriter to use the indicated column description on the given
array.
This also resets both the read and write row numbers to the start row (the
same value passed to a previous call to set_row(), or 0 if set_row() was
never called.)
The return value is true if the data type is valid, false otherwise.
*/
- setRow()
C++ Interface: set_row(const GeomVertexRewriter self, int row)
- /**
Sets the start, write, and write index to the indicated value. The
rewriter will begin traversing from the given row.
*/
- setRowUnsafe()
C++ Interface: set_row_unsafe(const GeomVertexRewriter self, int row)
- /**
Sets the start row to the indicated value, without internal checks. This
is the same as set_row(), but it does not check for the possibility that
the array has been reallocated internally for some reason; use only when
you are confident that the array is unchanged and you really need every bit
of available performance.
*/
- set_column()
C++ Interface: set_column(const GeomVertexRewriter self, const InternalName name) set_column(const GeomVertexRewriter self, int column) set_column(const GeomVertexRewriter self, int array, const GeomVertexColumn column)
- /**
Sets up the rewriter to use the nth data type of the GeomVertexFormat,
numbering from 0.
This also resets both the read and write row numbers to the start row (the
same value passed to a previous call to set_row(), or 0 if set_row() was
never called.)
The return value is true if the data type is valid, false otherwise.
*/
- /**
Sets up the rewriter to use the data type with the indicated name.
This also resets both the read and write row numbers to the start row (the
same value passed to a previous call to set_row(), or 0 if set_row() was
never called.)
The return value is true if the data type is valid, false otherwise.
*/
- /**
Sets up the rewriter to use the indicated column description on the given
array.
This also resets both the read and write row numbers to the start row (the
same value passed to a previous call to set_row(), or 0 if set_row() was
never called.)
The return value is true if the data type is valid, false otherwise.
*/
- set_row()
C++ Interface: set_row(const GeomVertexRewriter self, int row)
- /**
Sets the start, write, and write index to the indicated value. The
rewriter will begin traversing from the given row.
*/
- set_row_unsafe()
C++ Interface: set_row_unsafe(const GeomVertexRewriter self, int row)
- /**
Sets the start row to the indicated value, without internal checks. This
is the same as set_row(), but it does not check for the possibility that
the array has been reallocated internally for some reason; use only when
you are confident that the array is unchanged and you really need every bit
of available performance.
*/
- upcastToGeomVertexReader()
C++ Interface: upcast_to_GeomVertexReader(const GeomVertexRewriter self)
upcast from GeomVertexRewriter to GeomVertexReader
- upcastToGeomVertexWriter()
C++ Interface: upcast_to_GeomVertexWriter(const GeomVertexRewriter self)
upcast from GeomVertexRewriter to GeomVertexWriter
- upcast_to_GeomVertexReader()
C++ Interface: upcast_to_GeomVertexReader(const GeomVertexRewriter self)
upcast from GeomVertexRewriter to GeomVertexReader
- upcast_to_GeomVertexWriter()
C++ Interface: upcast_to_GeomVertexWriter(const GeomVertexRewriter self)
upcast from GeomVertexRewriter to GeomVertexWriter