|
| Triangular_mesh () |
| Constructs a triangular mesh. More...
|
|
| Triangular_mesh (const char *fname) throw (kjb::Illegal_argument, kjb::IO_error) |
| Reads a triangular mesh from an input file. More...
|
|
| Triangular_mesh (std::istream &in) throw (kjb::Illegal_argument, kjb::IO_error) |
| Reads a triangular mesh from an input file. More...
|
|
| Triangular_mesh (const Triangular_mesh &t) |
| Copy constructor. More...
|
|
virtual Triangular_mesh & | operator= (const Triangular_mesh &t) |
| Copies a triangular mesh into this one. More...
|
|
virtual | ~Triangular_mesh () |
| Destructor of a triangular mesh. More...
|
|
virtual unsigned int | adjacent_face (uint32_t i, uint32_t p) const throw (Index_out_of_bounds) |
| Returns the face adjacent to another on a shared edge. More...
|
|
void | read (std::istream &in) throw (kjb::IO_error,kjb::Illegal_argument) |
| Reads this triangular mesh from an input stream. More...
|
|
void | write (std::ostream &ost) const throw (kjb::IO_error) |
| Writes this mesh to an output stream. More...
|
|
void | write (const char *filename) const throw (IO_error) |
| Writes this mesh to an output stream. More...
|
|
virtual Triangular_mesh * | clone () const |
| Clones this mesh. More...
|
|
void | create_adjacency_matrix () throw (KJB_error) |
| Finds the adjacency relationships between faces. More...
|
|
void | set_adjacency_matrix (const char *fname) throw (KJB_error) |
| Gets the adjacency matrix from a file and saves it in the class parameter. More...
|
|
virtual void | add_face (const Polygon &face) throw (kjb::Illegal_argument) |
|
| Polymesh () |
| Constructs a triangular mesh. More...
|
|
| Polymesh (unsigned int n) |
|
| Polymesh (const char *fname) throw (kjb::Illegal_argument, kjb::IO_error) |
| Reads a triangular mesh from an input file. More...
|
|
| Polymesh (std::istream &in) throw (kjb::Illegal_argument, kjb::IO_error) |
| Reads a triangular mesh from an input file. More...
|
|
| Polymesh (const Polymesh &t) |
| Copy constructor. More...
|
|
virtual Polymesh & | operator= (const Polymesh &t) |
| Copies a triangular mesh into this one. More...
|
|
virtual | ~Polymesh () |
| Deletes this Polymesh. More...
|
|
unsigned int | num_faces () const |
| Returns the number of faces in this mesh. More...
|
|
const std::vector< kjb::Polygon > & | get_faces () const |
| Returns the faces of this mesh. More...
|
|
const kjb::Polygon & | get_face (unsigned int i) const throw (kjb::Index_out_of_bounds) |
| Returns an indexed face. More...
|
|
kjb::Polygon & | get_face_ref (unsigned int i) throw (kjb::Index_out_of_bounds) |
| Returns an indexed face. More...
|
|
virtual void | transform (const kjb::Matrix &) throw (kjb::Illegal_argument) |
| Applies a linear transformation to this parallelepiped. More...
|
|
virtual void | translate (double x, double y, double z) |
| Translates this rigid object. More...
|
|
virtual void | rotate (double phi, double x, double y, double z) |
|
virtual void | rotate (double dpitch, double dyaw, double droll) |
| rotate this object around its x-axis by dpitch, the y-axis by dyaw, and its z-axis by droll (in this order, starting from the object's current position) More...
|
|
virtual void | scale (double scale_x, double scale_y, double scale_z) |
|
virtual unsigned int | adjacent_face (unsigned int f, unsigned int e) const throw (Index_out_of_bounds,KJB_error) |
| returns the index of the face adjacent to face f along edge e This is a very inefficient implementation, class derived from this one should implement their own version, possibly storing the adjacency information and not computing it every time. Not thoroughly tested More...
|
|
void | get_faces (std::vector< const Polygon * > &ifaces) const |
|
virtual void | wire_render () const |
| Renders this mesh as a wire frame. More...
|
|
unsigned int | wire_render_with_sequential_ids (unsigned int start_id=1) const |
| Render each edge of this polymesh with a different color. The first edge will be rendered using the input id as a color, the following edges will be rendered with an id sequentially increasing. Returns the id (color) used to render the last edge of the polygon. More...
|
|
unsigned int | solid_render_with_sequential_ids (unsigned int start_id=1) const |
| Render each polygon of this polymesh with a different color. The first polygon will be rendered using the input id as a color, the following ones will be rendered with an id sequentially increasing. Returns the id (color) used to render the last polygon. More...
|
|
virtual void | wire_occlude_render () const |
| Renders this mesh as a wire frame into the depth buffer. Use wire_render after this to render this mesh as a wire frame by not drawing occluded edges. More...
|
|
virtual void | solid_render () const |
| Renders this object with GL as a wire-frame. More...
|
|
virtual void | silhouette_render (const kjb::Base_gl_interface &camera, double iwidth=1.0) const |
|
virtual void | project () |
|
double | compute_surface_area () const |
| Returns the surface area of the mesh. More...
|
|
void | get_all_vertices (std::vector< Vector > &vertices) const |
| Stores the vertices of the mesh in a vector. More...
|
|
void | get_all_edges (std::vector< std::vector< Vector > > &edges) const |
| Stores all of the unique pairs of points that make up the edges of the polymesh in a vector. More...
|
|
void | get_lines (std::vector< Line3d > &lines) |
|
void | find_bounds () |
|
kjb::Vector | get_center () |
|
double | get_largest_z_bound () |
|
kjb::Vector | get_largest_bounds () const |
|
kjb::Vector | get_smallest_bounds () const |
|
virtual | ~Abstract_renderable () |
| Deletes this Solid_renderable. More...
|
|
virtual void | render () const |
| Renders this object with GL. More...
|
|
virtual void | render_occluded_wireframe () const |
| Renders this object with GL as an occluded wire-frame into the depth buffer, to hide unseen lines. More...
|
|
virtual | ~Renderable () |
| Deletes this Renderable. More...
|
|
virtual | ~Solid_renderable () |
| Deletes this Wire_renderable. More...
|
|
virtual | ~Wire_renderable () |
| Deletes this Wire_renderable. More...
|
|
virtual | ~Wire_occlude_renderable () |
| Deletes this Wire_occlude_renderable. More...
|
|
| Rigid_object () |
|
| Rigid_object (const Rigid_object &ro) |
|
virtual Rigid_object & | operator= (const Rigid_object &src) |
|
virtual | ~Rigid_object () |
|
virtual void | swap (Self &other) |
|
virtual void | compute_new_euler_angles_on_rotations (double dpitch, double dyaw, double droll, kjb::Vector &angles) const |
| computes the new values for the object's euler angles, after a rotation of dpitch around the object's x-axis, a rotation of dyaw around the object's y axis, and a rotation of droll around the object's z axis (in this order, starting from the object's current position). The state of this rigid object is not changed More...
|
|
virtual void | set_rotations (double pitch, double yaw, double roll) |
| rotate this object so that its pitch, yaw and roll match the input values More...
|
|
virtual void | set_rotations_and_translate (double pitch, double yaw, double roll, double dx, double dy, double dz) |
| rotate this object so that its pitch, yaw and roll match the input values, and translates it More...
|
|
const Matrix & | get_rotations () const |
| Returns the current transformation matrix, that is used to store the rotation to be applied to the object. More...
|
|
const Vector & | get_euler_angles () const |
| returns vector [pitch, yaw, roll] More...
|
|
void | set_rotation_mode (kjb::Quaternion::Euler_mode imode) |
|
const kjb::Quaternion & | get_orientation () const |
| returns the quaternion defining this object's orientation More...
|
|
void | set_orientation (const Quaternion &orientation) |
| sets the orientation of this object from an input quaternion More...
|
|
virtual | ~Transformable () |
| Deletes this Transformable. More...
|
|
virtual | ~Transformable () |
| Deletes this Transformable_d. More...
|
|
virtual | ~Cloneable () |
| Deletes this Cloneable. More...
|
|
virtual | ~Readable () |
| Deletes this Readable. More...
|
|
virtual void | read (const char *fname) |
| Reads this Readable from a file. More...
|
|
virtual | ~Writeable () |
| Deletes this Writeable. More...
|
|
Triangular_mesh: a polygonal mesh of which each face is a triangle.