From 092211c82c80250670e4a7ea7c2284b868d7d16f Mon Sep 17 00:00:00 2001 From: cignoni Date: Tue, 27 Oct 2009 21:43:01 +0000 Subject: [PATCH] cleaned up a bit --- apps/sample/trimesh_base/trimesh_base.cpp | 127 +++++++++++++--------- apps/sample/trimesh_base/trimesh_base.pro | 2 + 2 files changed, 77 insertions(+), 52 deletions(-) diff --git a/apps/sample/trimesh_base/trimesh_base.cpp b/apps/sample/trimesh_base/trimesh_base.cpp index 5a8324a9..7f8976a7 100644 --- a/apps/sample/trimesh_base/trimesh_base.cpp +++ b/apps/sample/trimesh_base/trimesh_base.cpp @@ -1,52 +1,75 @@ -#include - -#include// -#include -#include// -#include -#include// -#include// - -// input output -#include -#include//just in case - -// topology computation -#include// -#include// - -// half edge iterators -//#include - -// normals and curvature -#include //class UpdateNormals -#include //class curvature - -using namespace vcg; -using namespace std; - -class MyEdge; // dummy prototype -class MyFace; -class MyVertex; - -class MyVertex : public VertexSimp2< MyVertex, MyEdge, MyFace, vertex::Coord3f, vertex::Normal3f, vertex::BitFlags >{}; -class MyFace : public FaceSimp2 < MyVertex, MyEdge, MyFace, face::FFAdj, face::VertexRef, face::BitFlags > {}; -class MyMesh : public vcg::tri::TriMesh< vector, vector > {}; - -int main( int argc, char **argv ) { -MyMesh m; -// this is the section with problems -if(vcg::tri::io::ImporterPLY::Open(m,argv[1])!=0) -{ -printf("Error reading file %s\n",argv[1]); -exit(0); -} // from here no problems - -vcg::tri::UpdateTopology::FaceFace(m); -vcg::tri::UpdateFlags::FaceBorderFromFF(m); -vcg::tri::UpdateNormals::PerVertexNormalized(m); -printf("Input mesh vn:%i fn:%i\n",m.vn,m.fn); -printf( "Mesh has %i vert and %i faces\n", m.vn, m.fn ); - -return 0; -} \ No newline at end of file +/**************************************************************************** +* VCGLib o o * +* Visual and Computer Graphics Library o o * +* _ O _ * +* Copyright(C) 2004-2009 \/)\/ * +* Visual Computing Lab /\/| * +* ISTI - Italian National Research Council | * +* \ * +* All rights reserved. * +* * +* This program is free software; you can redistribute it and/or modify * +* it under the terms of the GNU General Public License as published by * +* the Free Software Foundation; either version 2 of the License, or * +* (at your option) any later version. * +* * +* This program is distributed in the hope that it will be useful, * +* but WITHOUT ANY WARRANTY; without even the implied warranty of * +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +* GNU General Public License (http://www.gnu.org/licenses/gpl.txt) * +* for more details. * +* * +****************************************************************************/ + +#include +#include +#include +#include +#include +#include + +// input output +#include +#include + +// topology computation +#include + +// normals +#include //class UpdateNormals + +using namespace vcg; +using namespace std; + +class MyEdge; // dummy prototype +class MyFace; +class MyVertex; + +class MyVertex : public VertexSimp2< MyVertex, MyEdge, MyFace, vertex::Coord3f, vertex::Normal3f, vertex::BitFlags >{}; +class MyFace : public FaceSimp2 < MyVertex, MyEdge, MyFace, face::FFAdj, face::VertexRef, face::BitFlags > {}; +class MyMesh : public vcg::tri::TriMesh< vector, vector > {}; + +int main( int argc, char **argv ) +{ + if(argc<2) + { + printf("Usage trimesh_base \n"); + return -1; + } + + MyMesh m; + + if(vcg::tri::io::ImporterPLY::Open(m,argv[1])!=0) + { + printf("Error reading file %s\n",argv[1]); + exit(0); + } + + vcg::tri::UpdateTopology::FaceFace(m); + vcg::tri::UpdateFlags::FaceBorderFromFF(m); + vcg::tri::UpdateNormals::PerVertexNormalized(m); + printf("Input mesh vn:%i fn:%i\n",m.vn,m.fn); + printf( "Mesh has %i vert and %i faces\n", m.vn, m.fn ); + + return 0; +} diff --git a/apps/sample/trimesh_base/trimesh_base.pro b/apps/sample/trimesh_base/trimesh_base.pro index e2f1411f..139ae774 100644 --- a/apps/sample/trimesh_base/trimesh_base.pro +++ b/apps/sample/trimesh_base/trimesh_base.pro @@ -9,3 +9,5 @@ INCLUDEPATH += . ../../.. CONFIG += console stl TEMPLATE = app SOURCES += trimesh_base.cpp ../../../wrap/ply/plylib.cpp +# Mac specific Config required to avoid to make application bundles +CONFIG -= app_bundle \ No newline at end of file