25 #ifndef GEOMETRYCOREFACTORY_H_ 26 #define GEOMETRYCOREFACTORY_H_ 128 int nSlices,
int nStacks,
bool hasCap =
true);
142 int nSlices,
int nStacks,
bool hasCaps =
true);
158 GLfloat height,
int nSlices,
int nStacks,
bool hasCaps =
true);
GeometryCoreSP createCuboid(glm::vec3 sizeXYZ)
GeometryCoreSP createConicalFrustum(GLfloat baseRadius, GLfloat topRadius, GLfloat height, int nSlices, int nStacks, bool hasCaps=true)
A core that contains geometry information to be rendered.
virtual ~GeometryCoreFactory()
Local header file for GLM OpenGL Mathematics library.
std::vector< glm::vec2 > texCoords
GeometryCoreSP createRGBCube(GLfloat size)
GeometryCoreSP createCube(GLfloat size)
void addFilePath(const std::string &filePath)
std::vector< FaceEntry > entries
std::vector< Face > faces
GeometryCoreSP createSphere(GLfloat radius, int nSlices, int nStacks)
GeometryCoreSP createCone(GLfloat radius, GLfloat height, int nSlices, int nStacks, bool hasCap=true)
std::vector< std::string > filePaths_
Local header file for GLEW library.
std::vector< glm::vec3 > vertices
GeometryCoreSP createTeapot(GLfloat size)
int loadOBJFile_(const std::string &fileName, OBJModel &model) const
GeometryCoreSP createRectangle(glm::vec2 sizeXY)
std::vector< glm::vec3 > normals
GeometryCoreSP createCylinder(GLfloat radius, GLfloat height, int nSlices, int nStacks, bool hasCaps=true)
GeometryCoreSP createTeapotFlat(GLfloat size)
GeometryCoreSP createXYZAxes(GLfloat size)
A factory to create geometry cores.
Internal definitions required by most classes.
GeometryCoreSP createModelFromOBJFile(const std::string &fileName)