Created
November 16, 2010 00:36
-
-
Save od0x0/701242 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//Triangulated Mesh Editing Utility | |
#pragma once | |
#include "AE.h" | |
typedef struct AEMesh AEMesh; | |
typedef struct AEMeshVertex AEMeshVertex; | |
typedef struct AEMeshTriangle AEMeshTriangle; | |
typedef enum{ | |
AEMeshTypeTriangles, | |
AEMeshTypeQuads, | |
AEMeshTypeTriangleStrip | |
}AEMeshType; | |
AEMesh* AEMeshNew(void); | |
void AEMeshDelete(AEMesh* self); | |
size_t AEMeshTriangleCount(AEMesh* self); | |
//Notes: Returns an ID that is valid until next Add or Remove, thus, do not store IDs | |
size_t AEMeshTriangleAdd(AEMesh* self); | |
void AEMeshTriangleRemove(AEMesh* self, size_t ID); | |
void AEMeshTriangleSet(AEMesh* self, size_t ID, AEVec3* vertices, AEVec3* normals, AEVec2* texcoords, size_t texcoordsPerVertex); | |
void AEMeshTriangleGet(AEMesh* self, size_t ID, AEVec3* vertices, AEVec3* normals, AEVec2* texcoords, size_t texcoordsPerVertex); | |
//Operations | |
void AEMeshTriangleSubdivide(AEMesh* self, size_t ID); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment