14#ifndef EGGMESHEREDGE_H
15#define EGGMESHEREDGE_H
50 void output(std::ostream &out)
const;
Represents one edge of a triangle, as used by the EggMesher to discover connected triangles.
void remove(EggMesherStrip *strip)
Removes an edge from a particular strip.
EggMesherEdge(int vi_a, int vi_b)
Defines an edge as a pair of vertices.
void change_strip(EggMesherStrip *from, EggMesherStrip *to)
Reparents the edge from strip "from" to strip "to".
void output(std::ostream &out) const
Formats the edge for output in some sensible way.
double compute_length(const EggVertexPool *vertex_pool) const
Returns the length of the edge in model units.
bool matches(const EggMesherEdge &other) const
Returns true if this edge represents the same line segment as the other edge, in either direction.
EggMesherEdge * common_ptr()
Returns an arbitrary pointer that is used to represent both this edge and its opposite.
LVecBase3d compute_box(const EggVertexPool *vertex_pool) const
Returns a 3-component vector that represents the lengths of the sides of the smalled axis-aligned box...
bool contains_vertex(int vi) const
Returns true if the edge contains the indicated vertex index, false otherwise.
Represents a triangle strip or quad strip in progress, as assembled by the mesher.
A collection of vertices.
This is our own Panda specialization on the default STL list.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.