#include "GeoBase.h" #include namespace Geometry { /// LodStripsLibrary interface class. /** This module contains functions that handle the levels of detail of the input multiresolution objects made of polygonal meshes. For any given resolution and object, this module returns a set of triangle strips representing the object at that resolution, that is, at the level of detail requested. These models use triangle strips to reduce storage usage and to speed up realistic rendering. \n\n Inputs:\n - The module receives a file describing a multiresolution object. . Outputs:\n - The module returns a strip set that represents the level of detail requested. . */ class LodStripsLibrary: public Ogre::Renderable,Ogre::MovableObject { public: /// Constructor, receives as a parameter the name of the file including the multiresolution object. LodStripsLibrary (std::string); /// Destructor. ~LodStripsLibrary (void); /// Copy constructor //LodStripsLibrary(const LodStripsLibrary&); /// Assignment operator //LodStripsLibrary& operator =(const LodStripsLibrary&); /// Returns the highest LOD. uint32 MaxLod(); /// Returns the lowest LOD. uint32 MinLod(); /// Returns de current LOD and changes to the specified LOD. uint32 GoToLod(uint32); /// Establishes the new LOD range. /// Only the LODs in that range are stored and used. void TrimByLod(uint32, uint32); /// Returns the number of triangles of the highest LOD. uint32 MaxFaces(); /// Returns the number of triangles of the lowest LOD. uint32 MinFaces(); /// Returns the number of vertices of the highest LOD. uint32 MaxVertices(); /// Returns the number of vertices of the lowest LOD. uint32 MinVertices(); }; }