diff --git a/panda/src/gobj/geom.I b/panda/src/gobj/geom.I index f4582946ee..9a0f51d5b1 100644 --- a/panda/src/gobj/geom.I +++ b/panda/src/gobj/geom.I @@ -129,7 +129,7 @@ get_texcoords_index() const { //////////////////////////////////////////////////////////////////// // Function: Geom::set_num_prims -// Access: Public +// Access: Published // Description: Sets the number of primitives in the Geom. The // meaning of this depends on the precise type of Geom; // generally, each prim is one triangle in a GeomTri, or @@ -147,7 +147,7 @@ set_num_prims(int num) { //////////////////////////////////////////////////////////////////// // Function: Geom::get_num_prims -// Access: Public +// Access: Published // Description: Returns the number of primitives in the Geom. //////////////////////////////////////////////////////////////////// INLINE int Geom:: @@ -157,7 +157,7 @@ get_num_prims(void) const { //////////////////////////////////////////////////////////////////// // Function: Geom::get_num_vertices -// Access: Public +// Access: Published // Description: Returns the number of vertices required by all all // the prims in the Geom. //////////////////////////////////////////////////////////////////// @@ -181,7 +181,7 @@ INLINE int PTA_int_arraysum(const PTA_int &lengths) { //////////////////////////////////////////////////////////////////// // Function: Geom::set_lengths -// Access: Public +// Access: Published // Description: Sets the array that indicates the length (number of // vertices) of each primitive. This array should have // get_num_prims() entries. This only has meaning for @@ -197,7 +197,7 @@ set_lengths(const PTA_int &lengths) { //////////////////////////////////////////////////////////////////// // Function: Geom::get_lengths -// Access: Public +// Access: Published // Description: Returns the array the indicates the length (number of // vertices) of each primitive. This array will // generally only be defined for composite type Geoms, diff --git a/panda/src/gobj/geom.cxx b/panda/src/gobj/geom.cxx index 9462bc120b..65a72924d5 100644 --- a/panda/src/gobj/geom.cxx +++ b/panda/src/gobj/geom.cxx @@ -235,7 +235,7 @@ calc_tight_bounds(LPoint3f &min_point, LPoint3f &max_point, //////////////////////////////////////////////////////////////////// // Function: Geom::transform_vertices -// Access: Public +// Access: Published // Description: Applies the indicated transform to all of the // vertices in the Geom. If the Geom happens to share a // vertex table with another Geom, this operation will @@ -263,7 +263,7 @@ transform_vertices(const LMatrix4f &mat) { //////////////////////////////////////////////////////////////////// // Function: Geom::set_coords -// Access: Public +// Access: Published // Description: //////////////////////////////////////////////////////////////////// void Geom:: @@ -279,7 +279,7 @@ set_coords(const PTA_Vertexf &coords, //////////////////////////////////////////////////////////////////// // Function: Geom::set_coords -// Access: Public +// Access: Published // Description: //////////////////////////////////////////////////////////////////// void Geom:: @@ -291,7 +291,7 @@ set_coords(const PTA_Vertexf &coords, GeomBindType bind, //////////////////////////////////////////////////////////////////// // Function: Geom::set_normals -// Access: Public +// Access: Published // Description: //////////////////////////////////////////////////////////////////// void Geom:: @@ -306,7 +306,7 @@ set_normals(const PTA_Normalf &norms, GeomBindType bind, //////////////////////////////////////////////////////////////////// // Function: Geom::set_colors -// Access: Public +// Access: Published // Description: //////////////////////////////////////////////////////////////////// void Geom:: @@ -321,7 +321,7 @@ set_colors(const PTA_Colorf &colors, GeomBindType bind, //////////////////////////////////////////////////////////////////// // Function: Geom::set_texcoords -// Access: Public +// Access: Published // Description: //////////////////////////////////////////////////////////////////// void Geom:: @@ -403,7 +403,7 @@ get_texcoords(PTA_TexCoordf &texcoords, GeomBindType &bind, //////////////////////////////////////////////////////////////////// // Function: Geom::is_dynamic -// Access: Public, Virtual +// Access: Published, Virtual // Description: Returns true if the Geom has any dynamic properties // that are expected to change from one frame to the // next, or false if the Geom is largely static. For @@ -434,7 +434,7 @@ prepare(PreparedGraphicsObjects *prepared_objects) { //////////////////////////////////////////////////////////////////// // Function: Geom::explode -// Access: Public, Virtual +// Access: Published, Virtual // Description: If the Geom is a composite type such as a tristrip, // this allocates and returns a new Geom that represents // the same geometry as a simple type, for instance a @@ -451,7 +451,7 @@ explode() const { //////////////////////////////////////////////////////////////////// // Function: Geom::get_tris -// Access: Public, Virtual +// Access: Published, Virtual // Description: This is similar in principle to explode(), except it // returns only a list of triangle vertex indices, with // no information about color or whatever. The array diff --git a/panda/src/gobj/geom.h b/panda/src/gobj/geom.h index caca0f1c70..8eab4d00e0 100644 --- a/panda/src/gobj/geom.h +++ b/panda/src/gobj/geom.h @@ -133,10 +133,9 @@ public: virtual void draw_immediate(GraphicsStateGuardianBase *gsg, GeomContext *gc) = 0; virtual void print_draw_immediate() const = 0; -public: - void calc_tight_bounds(LPoint3f &min_point, LPoint3f &max_point, bool &found_any) const; +PUBLISHED: void transform_vertices(const LMatrix4f &mat); void set_coords(const PTA_Vertexf &coords, @@ -159,6 +158,9 @@ public: const PTA_ushort &tindex = PTA_ushort()); +public: + // These can't be published because of the pass-by-reference + // primitive types. void get_coords(PTA_Vertexf &coords, GeomBindType &bind, PTA_ushort &vindex) const; @@ -176,9 +178,9 @@ public: GeomBindType &bind, PTA_ushort &tindex) const; +PUBLISHED: virtual bool is_dynamic() const; -PUBLISHED: INLINE GeomBindType get_binding(int attr) const; INLINE const PTA_Vertexf &get_coords_array() const; INLINE const PTA_Normalf &get_normals_array() const; @@ -191,7 +193,6 @@ PUBLISHED: void prepare(PreparedGraphicsObjects *prepared_objects); -public: INLINE void set_num_prims(int num); INLINE int get_num_prims() const; @@ -202,18 +203,17 @@ public: virtual int get_num_more_vertices_than_components() const=0; virtual bool uses_components() const=0; - int get_num_vertices() const; + INLINE int get_num_vertices() const; // Returns the length of the indicated primitive. Often this is the // same for all primitives in the Geom. However, geoms which use // the lengths array will redefine this appropriately. virtual int get_length(int prim) const=0; - virtual Geom *explode() const; virtual PTA_ushort get_tris() const; - +public: INLINE VertexIterator make_vertex_iterator() const; INLINE const Vertexf &get_next_vertex(VertexIterator &viterator) const;