Changeset 829 for GTP/trunk/Lib/Geom/shared/GTGeometry/include
- Timestamp:
- 04/26/06 16:00:29 (19 years ago)
- Location:
- GTP/trunk/Lib/Geom/shared/GTGeometry/include
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
GTP/trunk/Lib/Geom/shared/GTGeometry/include/GeoLodStripsLibrary.h
r774 r829 9 9 * @file GeoLodStripsLibrary.h 10 10 /*===========================================================================*/ 11 12 #ifndef _GEOLODSTRIPSLIBRARY 13 #define _GEOLODSTRIPSLIBRARY 11 14 12 15 #include "GeoMesh.h" … … 150 153 151 154 // (New) Get the number of strips. 152 uint32 GetStripCount(); 155 uint32 GetStripCount() const; 156 uint32 GetIndexCountByStrip(uint32) const; 153 157 }; 154 158 } 155 159 160 161 #endif -
GTP/trunk/Lib/Geom/shared/GTGeometry/include/GeoLodTreeLibrary.h
r774 r829 1 #include "GeoBase.h" 1 //#include <string> 2 //#include <exception> 3 //#include "vertexdata.h" 2 4 5 #ifndef _GEOLODSTREELIBRARY 6 #define _GEOLODSTREELIBRARY 7 8 #include "GeoMesh.h" 9 #include "GeoLodStripsLibrary.h" 10 11 /*class LodStrip; 12 class Arbol; 13 class Foliage; 14 class Point3D; 15 */ 3 16 namespace Geometry 4 { 5 /// LodTreeLibrary interface class. 6 /** This module contains functions that handle the levels of detail of the input multiresolution trees. 7 For Any given resolution and object this module returns two thins: a set of triangle strips representing the trunk 8 and the branches at that resolution, and a triangle list representing the leaves at the same resolution. 9 \n\n 10 11 Inputs:\n 12 - The module receives a file describing a multiresolution tree object. 13 . 14 15 Outputs:\n 16 - The module returns a strip set that represents the level of deatil demanded for the trunk and a triangle list 17 that representes the level of detail for leaves. 18 . 19 20 */ 17 { 21 18 class LodTreeLibrary 22 19 { 23 20 public: 24 /// Constructor, receives as a parameter the name of the file including the multiresolution object. 25 LodTreeLibrary (std::string); 21 /* LodTreeLibrary( const LodTreeLibrary &); 22 LodTreeLibrary(LodTreeLibrary*);*/ 23 LodTreeLibrary( std::string trunkSimpSeqFile, 24 Geometry::Mesh *treeGeoMesh 25 /*, 26 std::string foliage_verts, 27 std::string foliage_leafs, 28 std::string foliage_simpl, 29 uint32 leafSubMeshID, 30 CREATEVERTEXDATAFUNC vdfun=NULL, 31 CREATEINDEXDATAFUNC idfun=NULL, 32 CREATEMULTIINDEXDATAFUNC midfun=NULL*/); // throws a FileNotFound exception 33 ~LodTreeLibrary(void); 34 uint32 GetUniqueID(void) const { return uniqueID; } 26 35 27 /// Destructor. 28 ~LodTreeLibrary (void); 36 // funciones ya descritas en la API 37 uint32 GoToTrunkLod(uint32 newlod); 38 uint32 MinTrunkLod(void) const; 39 uint32 MaxTrunkLod(void) const; 40 /* uint32 GoToFoliageLod(uint32 newlod); 41 uint32 MinFoliageLod(void) const; 42 uint32 MaxFoliageLod(void) const;*/ 29 43 30 /// Copy constructor 31 //LodTreeLibrary(const LodTreeLibrary&); 44 // funciones nuevas propuestas 45 // uint32 Get_Trunk_VertexCount(void) const; 46 // uint32 Get_Trunk_MaxIndexCount(uint32 istrip) const; 47 uint32 CurrentLOD_Trunk_StripCount(void) const; 48 // uint32 CurrentLOD_Trunk_IndexCount(void) const; 49 uint32 CurrentLOD_Trunk_IndexCountByStrip(uint32 istrip) const; 50 /* const VertexData* Get_Trunk_VertexData(void) const; 51 // const MultiIndexData* CurrentLOD_Trunk_Indices(void) const;*/ 32 52 33 /// Assignment operator 34 //LodTreeLibrary& operator =(const LodTreeLibrary&); 53 // uint32 Get_Foliage_VertexCount(void) const; 54 // uint32 Get_Foliage_MaxIndexCount(void) const; 55 // uint32 CurrentLOD_Foliage_IndexCount(void) const; 56 /* const IndexData* CurrentLOD_Foliage_Indices(void) const; 57 const VertexData* Get_Foliage_VertexData(void) const; 58 */ 59 // Geometry::IndexData *trunk_all_indices; 60 // unsigned int *indices_offsets; 35 61 36 /// Returns the highest LOD of the foliage. 37 uint32 MaxFoliageLod(); 62 const Geometry::SmallIntVector & GetStrip(uint32 istrip) const { return trunk->mStrips[istrip]; } 38 63 39 /// Returns the highest LOD of the trunk. 40 uint32 MaxTrunkLod(); 41 42 /// Returns the lowest LOD of the foliage. 43 uint32 MinFoliageLod(); 44 45 /// Returns the lowest LOD of the trunk. 46 uint32 MinTrunkLod(); 47 48 /// Returns de current foliage LOD and changes to the specified LOD. 49 uint32 GoToFoliageLod(uint32); 50 51 /// Returns de current trunk LOD and changes to the specified LOD. 52 uint32 GoToTrunkLod(uint32); 53 54 /// Establishes the new LOD range. 55 /// Only the LODs in that range are stored and used. 56 void TrimFoliageByLod(uint32, uint32); 57 58 /// Establishes the new LOD range. 59 /// Only the LODs in that range are stored and used. 60 void TrimTrunkByLod(uint32, uint32); 61 62 /// Returns the number of triangles of the foliage at the highest LOD. 63 uint32 MaxFoliageFaces(); 64 65 /// Returns the number of triangles of the trunk at the highest LOD. 66 uint32 MaxTrunkFaces(); 67 68 /// Returns the number of triangles of the foliage at the lowest LOD. 69 uint32 MinFoliageFaces(); 70 71 /// Returns the number of triangles of the trunk at the lowest LOD. 72 uint32 MinTrunkFaces(); 73 74 /// Returns the number of vertices of the foliage at the highest LOD. 75 uint32 MaxFoliageVertices(); 76 77 /// Returns the number of vertices of the trunk at the highest LOD. 78 uint32 MaxTrunkVertices(); 79 80 /// Returns the number of vertices of the foliage at the lowest LOD. 81 uint32 MinFoliageVertices(); 82 83 /// Returns the number of vertices of the trunk at the lowest LOD. 84 uint32 MinTrunkVertices(); 64 private: 65 uint32 uniqueID; 66 Geometry::LodStripsLibrary *trunk; 67 // Arbol *arbol; 68 // Foliage *foliage; 85 69 86 70 }; 87 71 } 72 73 #endif
Note: See TracChangeset
for help on using the changeset viewer.