2018-04-08 08:05:12 +00:00
|
|
|
#ifndef MESH_UTIL_H
|
|
|
|
#define MESH_UTIL_H
|
2018-03-29 09:10:59 +00:00
|
|
|
#include <vector>
|
2018-06-16 06:41:52 +00:00
|
|
|
#include <set>
|
2018-09-06 15:04:59 +00:00
|
|
|
#include <QVector3D>
|
2018-03-29 09:10:59 +00:00
|
|
|
|
2018-09-14 09:45:05 +00:00
|
|
|
#define MAX_VERTICES_PER_FACE 100
|
|
|
|
|
2018-03-30 14:05:47 +00:00
|
|
|
int mergeMeshs(void *meshliteContext, const std::vector<int> &meshIds);
|
2018-06-16 06:41:52 +00:00
|
|
|
int unionMeshs(void *meshliteContext, const std::vector<int> &meshIds, const std::set<int> &inverseIds, int *errorCount=0);
|
2018-04-11 12:49:00 +00:00
|
|
|
int subdivMesh(void *meshliteContext, int meshId, int *errorCount=0);
|
2018-04-15 15:15:29 +00:00
|
|
|
int fixMeshHoles(void *meshliteContext, int meshId);
|
2018-03-29 09:10:59 +00:00
|
|
|
|
2018-08-27 08:50:40 +00:00
|
|
|
void initMeshUtils();
|
|
|
|
void *convertToCombinableMesh(void *meshliteContext, int meshId);
|
|
|
|
void *unionCombinableMeshs(void *first, void *second);
|
|
|
|
void *diffCombinableMeshs(void *first, void *second);
|
|
|
|
int convertFromCombinableMesh(void *meshliteContext, void *mesh);
|
|
|
|
void deleteCombinableMesh(void *mesh);
|
|
|
|
void *cloneCombinableMesh(void *mesh);
|
2018-08-31 04:54:32 +00:00
|
|
|
void *convertToCombinableConvexHullMesh(void *meshliteContext, int meshId);
|
2018-09-06 15:04:59 +00:00
|
|
|
void loadMeshVerticesPositions(void *meshliteContext, int meshId, std::vector<QVector3D> &positions);
|
|
|
|
void loadCombinableMeshVerticesPositions(void *mesh, std::vector<QVector3D> &positions);
|
2018-08-27 08:50:40 +00:00
|
|
|
|
2018-03-29 09:10:59 +00:00
|
|
|
#endif
|