44 return _forward_reference;
56 _pos.set(pos, 0.0, 0.0, 1.0);
69 _pos.set(pos[0], pos[1], 0.0, 1.0);
82 _pos.set(pos[0], pos[1], pos[2], 1.0);
123 return _num_dimensions;
135 nassertr(_num_dimensions == 1, 0.0);
148 nassertr(_num_dimensions == 2,
LPoint2d(0.0, 0.0));
161 nassertr(_num_dimensions == 3 || _num_dimensions == 4,
163 return LVertexd(_pos[0] / _pos[3], _pos[1] / _pos[3], _pos[2] / _pos[3]);
206 return (_aux_map.size() != 0);
274 return _uv_map.begin();
288 return _aux_map.begin();
302 return _uv_map.end();
316 return _aux_map.end();
326 return _uv_map.size();
336 return _aux_map.size();
366 _external_index = external_index;
377 return _external_index;
391 _external_index2 = external_index2;
402 return _external_index2;
426 INLINE
bool UniqueEggVertices::
static const LPoint2d & zero()
Returns a zero-length point.
This is an iterator adaptor that converts any iterator that returns a pair (e.g.
LTexCoordd get_uv() const
Returns the unnamed UV coordinate pair on the vertex.
void clear_aux()
Removes all auxiliary data from the vertex.
uv_size_type uv_size() const
Returns the number of named UV's on the vertex.
void set_pos(double pos)
Sets the vertex position.
bool has_uv() const
Returns true if the vertex has an unnamed UV coordinate pair, false otherwise.
double get_pos1() const
Only valid if get_num_dimensions() returns 1.
This is a four-component point in space.
LVertexd get_pos3() const
Valid if get_num_dimensions() returns 3 or 4.
void set_pos4(const LPoint4d &pos)
This special flavor of set_pos() sets the vertex as a four-component value, but does not change the s...
bool sorts_less_than(const EggVertex &other) const
An ordering operator to compare two vertices for sorting order.
bool is_forward_reference() const
Returns true if the vertex is a forward reference to some vertex that hasn't been defined yet...
This is a two-component point in space.
void set_external_index(int external_index)
Sets a special index number that is associated with the EggVertex (but is not written to the egg file...
int compare_to(const EggVertex &other) const
An ordering operator to compare two vertices for sorting order.
int get_external_index() const
Returns the number set by set_external_index().
const_aux_iterator aux_begin() const
Returns an iterator that allows walking through the complete set of auxiliary data on the vertex...
const_uv_iterator uv_begin() const
Returns an iterator that allows walking through the complete set of named UV's on the vertex...
bool has_aux() const
Returns true if the vertex has any auxiliary data, false otherwise.
const_uv_iterator uv_end() const
Returns an iterator that allows walking through the complete set of named UV's on the vertex...
LPoint4d get_pos4() const
This is always valid, regardless of the value of get_num_dimensions.
void clear_uv()
Removes all UV coordinate pairs from the vertex.
Any one-, two-, three-, or four-component vertex, possibly with attributes such as a normal...
const_aux_iterator aux_end() const
Returns an iterator that allows walking through the complete set of auxiliary data on the vertex...
This is a three-component point in space (as opposed to a three-component vector, which represents a ...
LPoint2d get_pos2() const
Only valid if get_num_dimensions() returns 2.
int get_external_index2() const
Returns the number set by set_external_index2().
int get_num_dimensions() const
Returns the number of dimensions the vertex uses.
void set_external_index2(int external_index2)
Similar to set_external_index(), but this is a different number which may be used for a different pur...
aux_size_type aux_size() const
Returns the number of auxiliary datas on the vertex.
EggVertexPool * get_pool() const
Returns the vertex pool this vertex belongs in.
void set_uv(const LTexCoordd &texCoord)
Replaces the unnamed UV coordinate pair on the vertex with the indicated value.
A collection of vertices.
int get_index() const
Returns the index number of the vertex within its pool.