Panda3D
Public Member Functions | Static Public Member Functions | List of all members
GeomLinesAdjacency Class Reference

Defines a series of disconnected line segments with adjacency information, for use with geometry shaders. More...

Inheritance diagram for GeomLinesAdjacency:
GeomPrimitive CopyOnWriteObject GeomEnums CachedTypedWritableReferenceCount TypedWritableReferenceCount TypedWritable ReferenceCount TypedObject

Public Member Functions

 __init__ (GeomEnums::UsageHint usage_hint)
 
 __init__ (const GeomLinesAdjacency copy)
 
 operator new (int size)
 
- Public Member Functions inherited from GeomPrimitive
 addConsecutiveVertices (int start, int num_vertices)
 Adds a consecutive sequence of vertices, beginning at start, to the primitive. More...
 
 addNextVertices (int num_vertices)
 Adds the next n vertices in sequence, beginning from the last vertex added to the primitive + 1. More...
 
 addVertex (int vertex)
 Adds the indicated vertex to the list of vertex indices used by the graphics primitive type. More...
 
 addVertices (int v1, int v2)
 Adds several vertices in a row. More...
 
 addVertices (int v1, int v2, int v3)
 Adds several vertices in a row. More...
 
 addVertices (int v1, int v2, int v3, int v4)
 Adds several vertices in a row. More...
 
bool checkValid (const GeomVertexData vertex_data)
 Verifies that the primitive only references vertices that actually exist within the indicated GeomVertexData. More...
 
bool checkValid (const GeomVertexDataPipelineReader data_reader)
 
 clearMinmax ()
 Undoes a previous call to set_minmax(), and allows the minimum and maximum values to be recomputed normally. More...
 
 clearVertices ()
 Removes all of the vertices and primitives from the object, so they can be re-added. More...
 
bool closePrimitive ()
 Indicates that the previous n calls to add_vertex(), since the last call to close_primitive(), have fully defined a new primitive. More...
 
const GeomPrimitive decompose ()
 Decomposes a complex primitive type into a simpler primitive type, for instance triangle strips to triangles, and returns a pointer to the new primitive definition. More...
 
const GeomPrimitive doubleside ()
 Duplicates triangles in the primitive so that each triangle is back-to-back with another triangle facing in the opposite direction. More...
 
int getDataSizeBytes ()
 Returns the number of bytes stored in the vertices array. More...
 
CPTAInt getEnds ()
 Returns a const pointer to the primitive ends array so application code can read it directly. More...
 
int getFirstVertex ()
 Returns the first vertex number referenced by the primitive. More...
 
int getGeomRendering ()
 Returns the set of GeomRendering bits that represent the rendering properties required to properly render this primitive. More...
 
int getIndexStride ()
 A convenience function to return the gap between successive index numbers, in bytes, of the index data. More...
 
GeomEnums::NumericType getIndexType ()
 Returns the numeric type of the index column. More...
 
const GeomVertexArrayData getMaxs ()
 Returns a const pointer to the primitive maxs array so application code can read it directly. More...
 
int getMaxVertex ()
 Returns the maximum vertex index number used by all the primitives in this object. More...
 
int getMinNumVerticesPerPrimitive ()
 Returns the minimum number of vertices that must be added before close_primitive() may legally be called. More...
 
const GeomVertexArrayData getMins ()
 Returns a const pointer to the primitive mins array so application code can read it directly. More...
 
int getMinVertex ()
 Returns the minimum vertex index number used by all the primitives in this object. More...
 
UpdateSeq getModified ()
 Returns a sequence number which is guaranteed to change at least every time the vertex index array is modified. More...
 
int getNumBytes ()
 Returns the number of bytes consumed by the primitive and its index table(s). More...
 
int getNumFaces ()
 Returns the number of triangles or other fundamental type (such as line segments) represented by all the primitives in this object. More...
 
int getNumPrimitives ()
 Returns the number of individual primitives stored within this object. More...
 
int getNumUnusedVerticesPerPrimitive ()
 Returns the number of vertices that are added between primitives that aren't, strictly speaking, part of the primitives themselves. More...
 
int getNumUsedVertices ()
 Returns the number of vertices used by all of the primitives. More...
 
int getNumVertices ()
 Returns the number of indices used by all the primitives in this object. More...
 
int getNumVerticesPerPrimitive ()
 If the primitive type is a simple type in which all primitives have the same number of vertices, like triangles, returns the number of vertices per primitive. More...
 
int getPrimitiveEnd (int n)
 Returns the element within the _vertices list at which the nth primitive ends. More...
 
int getPrimitiveMaxVertex (int n)
 Returns the maximum vertex index number used by the nth primitive in this object. More...
 
int getPrimitiveMinVertex (int n)
 Returns the minimum vertex index number used by the nth primitive in this object. More...
 
int getPrimitiveNumFaces (int n)
 Returns the number of triangles or other fundamental type (such as line segments) represented by the nth primitive in this object. More...
 
int getPrimitiveNumVertices (int n)
 Returns the number of vertices used by the nth primitive. More...
 
int getPrimitiveStart (int n)
 Returns the element within the _vertices list at which the nth primitive starts. More...
 
GeomEnums::PrimitiveType getPrimitiveType ()
 
GeomEnums::ShadeModel getShadeModel ()
 Returns the ShadeModel hint for this primitive. More...
 
int getStripCutIndex ()
 If relevant, returns the index value that may be used in some cases to signify the end of a primitive. More...
 
GeomEnums::UsageHint getUsageHint ()
 Returns the usage hint for this primitive. More...
 
int getVertex (int i)
 Returns the ith vertex index in the table. More...
 
list getVertexList ()
 
const GeomVertexArrayData getVertices ()
 Returns a const pointer to the vertex index array so application code can read it directly. More...
 
const GeomVertexArrayDataHandle getVerticesHandle (Thread current_thread)
 Equivalent to get_vertices().get_handle(). More...
 
bool isComposite ()
 Returns true if the primitive is a composite primitive such as a tristrip or trifan, or false if it is a fundamental primitive such as a collection of triangles. More...
 
bool isIndexed ()
 Returns true if the primitive is indexed, false otherwise. More...
 
const GeomPrimitive makeAdjacency ()
 Adds adjacency information to this primitive. More...
 
GeomPrimitive makeCopy ()
 
 makeIndexed ()
 Converts the primitive from nonindexed form to indexed form. More...
 
const GeomPrimitive makeLines ()
 Returns a new GeomLines primitive that represents each of the edges in the original primitive rendered as a line. More...
 
 makeNonindexed (GeomVertexData dest, const GeomVertexData source)
 Converts the primitive from indexed to nonindexed by duplicating vertices as necessary into the indicated dest GeomVertexData. More...
 
const GeomPrimitive makePatches ()
 Decomposes a complex primitive type into a simpler primitive type, for instance triangle strips to triangles, puts these in a new GeomPatches object and returns a pointer to the new primitive definition. More...
 
const GeomPrimitive makePoints ()
 Returns a new GeomPoints primitive that represents each of the vertices in the original primitive, rendered exactly once. More...
 
const GeomPrimitive matchShadeModel (GeomEnums::ShadeModel shade_model)
 Returns a new primitive that is compatible with the indicated shade model, if possible, or NULL if this is not possible. More...
 
PTAInt modifyEnds ()
 Returns a modifiable pointer to the primitive ends array, so application code can directly fiddle with this data. More...
 
GeomVertexArrayData modifyVertices (int num_vertices)
 Returns a modifiable pointer to the vertex index list, so application code can directly fiddle with this data. More...
 
GeomVertexArrayDataHandle modifyVerticesHandle (Thread current_thread)
 Equivalent to modify_vertices().get_handle(). More...
 
 offsetVertices (int offset)
 Adds the indicated offset to all vertices used by the primitive. More...
 
 offsetVertices (int offset, int begin_row, int end_row)
 Adds the indicated offset to the indicated segment of vertices used by the primitive. More...
 
 operator new (int size)
 
GeomPrimitive operator= (const GeomPrimitive copy)
 
 output (Ostream out)
 
 packVertices (GeomVertexData dest, const GeomVertexData source)
 Packs the vertices used by the primitive from the indicated source array onto the end of the indicated destination array. More...
 
bool requestResident (Thread current_thread)
 Returns true if the primitive data is currently resident in memory. More...
 
 reserveNumVertices (int num_vertices)
 This ensures that enough memory space for n vertices is allocated, so that you may increase the number of vertices to n without causing a new memory allocation. More...
 
const GeomPrimitive reverse ()
 Reverses the winding order in the primitive so that each triangle is facing in the opposite direction it was originally. More...
 
const GeomPrimitive rotate ()
 Returns a new primitive with the shade_model reversed (if it is flat shaded), if possible. More...
 
 setEnds (PTAInt ends)
 Completely replaces the primitive ends array with a new table. More...
 
 setIndexType (GeomEnums::NumericType index_type)
 Changes the numeric type of the index column. More...
 
 setMinmax (int min_vertex, int max_vertex, GeomVertexArrayData mins, GeomVertexArrayData maxs)
 Explicitly specifies the minimum and maximum vertices, as well as the lists of per-component min and max. More...
 
 setNonindexedVertices (int first_vertex, int num_vertices)
 Sets the primitive up as a nonindexed primitive, using the indicated vertex range. More...
 
 setShadeModel (GeomEnums::ShadeModel shade_model)
 Changes the ShadeModel hint for this primitive. More...
 
 setUsageHint (GeomEnums::UsageHint usage_hint)
 Changes the UsageHint hint for this primitive. More...
 
 setVertices (const GeomVertexArrayData vertices, int num_vertices)
 Completely replaces the vertex index list with a new table. More...
 
 write (Ostream out, int indent_level)
 
- Public Member Functions inherited from CopyOnWriteObject
 cacheRef ()
 
bool cacheUnref ()
 
- Public Member Functions inherited from CachedTypedWritableReferenceCount
 cacheRef ()
 Explicitly increments the cache reference count and the normal reference count simultaneously. More...
 
bool cacheUnref ()
 Explicitly decrements the cache reference count and the normal reference count simultaneously. More...
 
int getCacheRefCount ()
 Returns the current reference count. More...
 
bool testRefCountIntegrity ()
 Does some easy checks to make sure that the reference count isn't completely bogus. More...
 
- Public Member Functions inherited from TypedWritable
object __reduce__ ()
 
object __reduce_persist__ (object pickler)
 
VectorUchar encodeToBamStream ()
 Converts the TypedWritable object into a single stream of data using a BamWriter, and returns that data as a bytes object. More...
 
bool encodeToBamStream (VectorUchar data, BamWriter writer)
 Converts the TypedWritable object into a single stream of data using a BamWriter, and stores that data in the indicated string. More...
 
 fillin (DatagramIterator scan, BamReader manager)
 This internal function is intended to be called by each class's make_from_bam() method to read in all of the relevant data from the BamFile for the new object. More...
 
UpdateSeq getBamModified ()
 Returns the current bam_modified counter. More...
 
 markBamModified ()
 Increments the bam_modified counter, so that this object will be invalidated and retransmitted on any open bam streams. More...
 
- Public Member Functions inherited from TypedObject
TypeHandle getType ()
 
int getTypeIndex ()
 Returns the internal index number associated with this object's TypeHandle, a unique number for each different type. More...
 
bool isExactType (TypeHandle handle)
 Returns true if the current object is the indicated type exactly. More...
 
bool isOfType (TypeHandle handle)
 Returns true if the current object is or derives from the indicated type. More...
 
- Public Member Functions inherited from ReferenceCount
int getRefCount ()
 Returns the current reference count. More...
 
 ref ()
 Explicitly increments the reference count. More...
 
bool testRefCountIntegrity ()
 Does some easy checks to make sure that the reference count isn't completely bogus. More...
 
bool testRefCountNonzero ()
 Does some easy checks to make sure that the reference count isn't zero, or completely bogus. More...
 
bool unref ()
 Explicitly decrements the reference count. More...
 
- Public Member Functions inherited from GeomEnums
 __init__ ()
 
 __init__ (const GeomEnums)
 

Static Public Member Functions

static TypeHandle getClassType ()
 
- Static Public Member Functions inherited from GeomPrimitive
static TypeHandle getClassType ()
 
- Static Public Member Functions inherited from CopyOnWriteObject
static TypeHandle getClassType ()
 
- Static Public Member Functions inherited from CachedTypedWritableReferenceCount
static TypeHandle getClassType ()
 
- Static Public Member Functions inherited from TypedWritableReferenceCount
static TypedWritableReferenceCount decodeFromBamStream (VectorUchar data, BamReader reader)
 Reads the bytes created by a previous call to encode_to_bam_stream(), and extracts and returns the single object on those bytes. More...
 
static TypeHandle getClassType ()
 
- Static Public Member Functions inherited from TypedWritable
static TypeHandle getClassType ()
 
- Static Public Member Functions inherited from TypedObject
static TypeHandle getClassType ()
 
- Static Public Member Functions inherited from ReferenceCount
static TypeHandle getClassType ()
 

Additional Inherited Members

- Public Types inherited from GeomEnums
enum  AnimationType { AT_none = 0, AT_panda = 1, AT_hardware = 2 }
 
enum  Contents {
  C_other = 0, C_point = 1, C_clip_point = 2, C_vector = 3,
  C_texcoord = 4, C_color = 5, C_index = 6, C_morph_delta = 7,
  C_matrix = 8, C_normal = 9
}
 
enum  GeomRendering {
  GR_indexed_point = 1, GR_indexed_other = 65536, GR_indexed_bits = 65537, GR_point = 2,
  GR_point_uniform_size = 4, GR_per_point_size = 8, GR_point_perspective = 16, GR_point_aspect_ratio = 32,
  GR_point_scale = 64, GR_point_rotate = 128, GR_point_sprite = 256, GR_point_sprite_tex_matrix = 512,
  GR_point_bits = 1022, GR_triangle_strip = 1024, GR_triangle_fan = 2048, GR_line_strip = 4096,
  GR_composite_bits = 7168, GR_strip_cut_index = 131072, GR_flat_first_vertex = 8192, GR_flat_last_vertex = 16384,
  GR_shade_model_bits = 24576, GR_render_mode_wireframe = 262144, GR_render_mode_point = 524288, GR_adjacency = 1048576
}
 
enum  NumericType {
  NT_uint8 = 0, NT_uint16 = 1, NT_uint32 = 2, NT_packed_dcba = 3,
  NT_packed_dabc = 4, NT_float32 = 5, NT_float64 = 6, NT_stdfloat = 7,
  NT_int8 = 8, NT_int16 = 9, NT_int32 = 10, NT_packed_ufloat = 11
}
 
enum  PrimitiveType {
  PT_none = 0, PT_polygons = 1, PT_lines = 2, PT_points = 3,
  PT_patches = 4
}
 
enum  ShadeModel { SM_uniform = 0, SM_smooth = 1, SM_flat_first_vertex = 2, SM_flat_last_vertex = 3 }
 
enum  UsageHint {
  UH_client = 0, UH_stream = 1, UH_dynamic = 2, UH_static = 3,
  UH_unspecified = 4
}
 
- Public Attributes inherited from GeomPrimitive
int data_size_bytes
 Returns the number of bytes stored in the vertices array. More...
 
int geom_rendering
 Returns the set of GeomRendering bits that represent the rendering properties required to properly render this primitive. More...
 
int index_stride
 A convenience function to return the gap between successive index numbers, in bytes, of the index data. More...
 
GeomEnums::NumericType index_type
 Returns the numeric type of the index column. More...
 
ConstPointerToGeomVertexArrayData maxs
 Returns a const pointer to the primitive maxs array so application code can read it directly. More...
 
int min_num_vertices_per_primitive
 Returns the minimum number of vertices that must be added before close_primitive() may legally be called. More...
 
ConstPointerToGeomVertexArrayData mins
 Returns a const pointer to the primitive mins array so application code can read it directly. More...
 
UpdateSeq modified
 Returns a sequence number which is guaranteed to change at least every time the vertex index array is modified. More...
 
int num_bytes
 Returns the number of bytes consumed by the primitive and its index table(s). More...
 
int num_unused_vertices_per_primitive
 Returns the number of vertices that are added between primitives that aren't, strictly speaking, part of the primitives themselves. More...
 
int num_vertices_per_primitive
 If the primitive type is a simple type in which all primitives have the same number of vertices, like triangles, returns the number of vertices per primitive. More...
 
GeomEnums::PrimitiveType primitive_type
 
GeomEnums::ShadeModel shade_model
 Returns the ShadeModel hint for this primitive. More...
 
int strip_cut_index
 If relevant, returns the index value that may be used in some cases to signify the end of a primitive. More...
 
GeomEnums::UsageHint usage_hint
 Returns the usage hint for this primitive. More...
 
- Public Attributes inherited from CachedTypedWritableReferenceCount
int cache_ref_count
 Returns the current reference count. More...
 
- Public Attributes inherited from TypedObject
TypeHandle type
 Returns the TypeHandle representing this object's type. More...
 
- Public Attributes inherited from ReferenceCount
int ref_count
 The current reference count. More...
 

Detailed Description

Defines a series of disconnected line segments with adjacency information, for use with geometry shaders.

Since
1.10.0

Member Function Documentation

◆ __init__() [1/2]

__init__ ( GeomEnums::UsageHint  usage_hint)

◆ __init__() [2/2]

__init__ ( const GeomLinesAdjacency  copy)

◆ getClassType()

static TypeHandle getClassType ( )
static

◆ operator new()

operator new ( int  size)