00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef __SO3_BASE_MESHS_TOOLS_H__
00029 #define __SO3_BASE_MESHS_TOOLS_H__
00030
00031 #include "../SCOLBasic/SO3Std.h"
00032
00033 namespace SO3
00034 {
00035
00040 class SBaseMeshsTools
00041 {
00042 public:
00043 protected:
00044 private:
00045
00046 public:
00050 static void CreateSphere(const Ogre::String& strName, float radius, int nRings, int nSegments, bool bNormals, bool bTexCoords, Ogre::String groupName=Ogre::ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME);
00051
00055 static void CreateSphere(Ogre::VertexData*& vertexData, Ogre::IndexData*& indexData, float radius, int nRings, int nSegments, bool bNormals, bool bTexCoords);
00056
00061 static void CreateCone(const Ogre::String& strName, float radius, float height, int nVerticesInBase, Ogre::String groupName=Ogre::ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME);
00062
00066 static void CreateCone(Ogre::VertexData*& vertexData, Ogre::IndexData*& indexData, float radius, float height, int nVerticesInBase);
00067
00075 static void CreateOctahedron(const Ogre::String& strName, float baseLength, float bottomDistance, float upDistance, Ogre::String groupName=Ogre::ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME);
00076
00080 static void CreateOctahedron(Ogre::VertexData*& vertexData, Ogre::IndexData*& indexData, float baseLength, float bottomDistance, float upDistance);
00081
00085 static void CreateQuad(Ogre::VertexData*& vertexData);
00086 protected:
00087 private:
00091 SBaseMeshsTools();
00092 };
00093
00094 }
00095
00096 #endif