Pregunta

¿Alguien ha hecho que Trimesh refine en el Biblioteca VCG? Agregaría eso como etiqueta, pero todavía no tengo una reputación lo suficientemente alta. Cada vez que incluyo cualquiera de las bibliotecas de refinos, recibo los siguientes errores:

../../../addons/ofxVCGLib/vcglib/vcg/complex/trimesh/refine.h:880:0 
../../../addons/ofxVCGLib/vcglib/vcg/complex/trimesh/refine.h:880: error: expected 
unqualified-id before numeric constant

que está en esta línea:

typename TRIMESH_TYPE::FacePointer FF0;

La definición que contiene que (disculpe el gigante C/P) se ve así:

template<class TRIMESH_TYPE, class CenterPoint>
void TriSplit(typename TRIMESH_TYPE::FacePointer f,
                            typename TRIMESH_TYPE::FacePointer f1,typename TRIMESH_TYPE::FacePointer f2,
                            typename TRIMESH_TYPE::VertexPointer vB, CenterPoint    Center)
{

Mi vértice, mi cara y malla se declaran así:

class innerMeshFace:public Face<myTypes, face::FFAdj, face::Mark, face::VertexRef, face::BitFlags, face::Normal3f, face::InfoOcf> {

};

class myVertex: 
public Vertex<myTypes, vertex::Coord3f, vertex::BitFlags, vertex::TexCoord2f, vertex::Normal3f, vertex::Mark, vertex::Color4b, vertex::VFAdj, vertex::InfoOcf>  
{}

class myMesh:public tri::TriMesh< vector<myVertex>, vector<innerMeshFace> > { }

Así que no estoy seguro de si hay algo allí que soy malentendido. Uso el mymesh :: facepointer en otra parte de mi código, creo que hay algo en la pila de plantilla que me estoy perdiendo. Todo esto funciona bien (es decir, compila y hace lo que se supone que debe) hasta que intente incluir la refine.h. Cualquier consejo de cualquier persona con experiencia en VCG sería muy apreciado.

No hay solución correcta

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top