15 #ifndef MESHDRAWER2D_H 16 #define MESHDRAWER2D_H 18 #include "pandabase.h" 20 #include "pandaNode.h" 21 #include "pointerTo.h" 23 #include "lvecBase2.h" 27 #include "geomVertexFormat.h" 28 #include "geomVertexArrayFormat.h" 29 #include "geomVertexData.h" 30 #include "geomVertexWriter.h" 31 #include "geomVertexRewriter.h" 32 #include "boundingVolume.h" 34 #include "nodePathCollection.h" 36 #include "geomTristrips.h" 37 #include "geomTriangles.h" 52 INLINE ~MeshDrawer2D();
54 INLINE
void set_budget(
int budget);
55 INLINE
int get_budget();
64 INLINE
void rectangle_raw(
65 PN_stdfloat x, PN_stdfloat y, PN_stdfloat w, PN_stdfloat h,
66 PN_stdfloat u, PN_stdfloat v, PN_stdfloat us, PN_stdfloat vs,
69 INLINE
void set_clip(PN_stdfloat x, PN_stdfloat y, PN_stdfloat w, PN_stdfloat h);
71 INLINE
void rectangle(
72 PN_stdfloat x, PN_stdfloat y, PN_stdfloat w, PN_stdfloat h,
73 PN_stdfloat u, PN_stdfloat v, PN_stdfloat us, PN_stdfloat vs,
76 void rectangle_border(
77 PN_stdfloat x, PN_stdfloat y, PN_stdfloat w, PN_stdfloat h,
78 PN_stdfloat r, PN_stdfloat t, PN_stdfloat l, PN_stdfloat b,
79 PN_stdfloat tr, PN_stdfloat tt, PN_stdfloat tl, PN_stdfloat tb,
80 PN_stdfloat u, PN_stdfloat v, PN_stdfloat us, PN_stdfloat vs,
83 void rectangle_border_tiled(
84 PN_stdfloat x, PN_stdfloat y, PN_stdfloat w, PN_stdfloat h,
85 PN_stdfloat r, PN_stdfloat t, PN_stdfloat l, PN_stdfloat b,
86 PN_stdfloat tr, PN_stdfloat tt, PN_stdfloat tl, PN_stdfloat tb,
87 PN_stdfloat u, PN_stdfloat v, PN_stdfloat us, PN_stdfloat vs,
91 PN_stdfloat x, PN_stdfloat y, PN_stdfloat w, PN_stdfloat h,
92 PN_stdfloat u, PN_stdfloat v, PN_stdfloat us, PN_stdfloat vs,
123 int _last_clear_index, _start_clear_index, _end_clear_index, _clear_index;
129 void generator(
int budget);
137 register_type(_type_handle,
"MeshDrawer2D",
138 TypedObject::get_class_type());
141 return get_class_type();
150 #include "meshDrawer2D.I" static void init_type()
This function is declared non-inline to work around a compiler bug in g++ 2.96.
This class allows the drawing of 2d objects - mainly based on quads and rectangles.
This is an abstract base class for a family of classes that represent the fundamental geometry primit...
This is an abstract class that all classes which use TypeHandle, and also provide virtual functions t...
This is a three-component vector distance (as opposed to a three-component point, which represents a ...
This is an abstract class for any volume in any sense which can be said to define the locality of ref...
This defines the actual numeric vertex data stored in a Geom, in the structure defined by a particula...
A container for geometry primitives.
This is a four-component vector distance.
This is a two-component vector offset.
Defines a series of disconnected triangles.
TypeHandle is the identifier used to differentiate C++ class types.
NodePath is the fundamental system for disambiguating instances, and also provides a higher-level int...
A node that holds Geom objects, renderable pieces of geometry.
This object provides the functionality of both a GeomVertexReader and a GeomVertexWriter, combined together into one convenient package.