diff --git a/Apps/Examples/Release/CMakeLists.txt b/Apps/Examples/Release/CMakeLists.txt index d741b7ed37e7cf6cdbada7e391cb5ee7e1182e92..ed1f85f1b109f51ef1c24a16d5e119f47bb08178 100644 --- a/Apps/Examples/Release/CMakeLists.txt +++ b/Apps/Examples/Release/CMakeLists.txt @@ -59,6 +59,11 @@ QT4_WRAP_CPP(simpleGMap2_moc ../simpleGMap2.h) add_executable( simpleGMap2 ../simpleGMap2.cpp ${simpleGMap2_moc} ) target_link_libraries( simpleGMap2 ${CGoGN_LIBS_R} ${COMMON_LIBS} ${QT_LIBRARIES} ) + +QT4_WRAP_CPP(simpleGMap3_moc ../simpleGMap3.h) +add_executable( simpleGMap3 ../simpleGMap3.cpp ${simpleGMap3_moc} ) +target_link_libraries( simpleGMap3 + ${CGoGN_LIBS_R} ${COMMON_LIBS} ${QT_LIBRARIES} ) QT4_WRAP_CPP(extrusionView_moc ../extrusionView.h) add_executable( extrusionView ../extrusionView.cpp ${extrusionView_moc}) diff --git a/Apps/Examples/simpleGMap3.cpp b/Apps/Examples/simpleGMap3.cpp index ec9241f8fe8afbb0ade57de72c3d73f2fcbbcc78..b5383791ae1798d9e7ebfdb88cd749a42a027a47 100644 --- a/Apps/Examples/simpleGMap3.cpp +++ b/Apps/Examples/simpleGMap3.cpp @@ -32,27 +32,29 @@ SimpleGMap3::SimpleGMap3() { position = myMap.addAttribute(VERTEX, "position"); -// Algo::Modelisation::Primitive3D prim(myMap,position); -// Dart d = prim.hexaGrid_topo(2,2,1); -// prim.embedHexaGrid(1,1,1); -// -// Dart d1 = myMap.phi1(myMap.phi1(myMap.phi2(myMap.phi1(myMap.phi1(d))))); -// VEC3 mid0 = (position[d1]+position[myMap.phi1(d1)])/2.0f; -// myMap.cutEdge(d1); -// position[myMap.phi1(d1)] = mid0; -// -// VEC3 mid1 = (position[d]+position[myMap.phi1(d)])/2.0f; -// myMap.cutEdge(d); -// position[myMap.phi1(d)] = mid1; -// -//// d = myMap.phi1(myMap.phi1(d)); -// d = myMap.phi1(myMap.phi1(myMap.phi2(myMap.phi1(myMap.phi1(d))))); -// VEC3 mid = (position[d]+position[myMap.phi1(d)])/2.0f; -// myMap.cutEdge(d); -// position[myMap.phi1(d)] = mid; + Algo::Modelisation::Primitive3D prim(myMap,position); + Dart d = prim.hexaGrid_topo(2,2,1); + prim.embedHexaGrid(1,1,1); + + Dart d1 = myMap.phi1(myMap.phi1(myMap.phi2(myMap.phi1(myMap.phi1(d))))); + VEC3 mid0 = (position[d1]+position[myMap.phi1(d1)])/2.0f; + myMap.cutEdge(d1); + position[myMap.phi1(d1)] = mid0; + + VEC3 mid1 = (position[d]+position[myMap.phi1(d)])/2.0f; + myMap.cutEdge(d); + position[myMap.phi1(d)] = mid1; + + d = myMap.phi1(myMap.phi1(myMap.phi2(myMap.phi1(myMap.phi1(d))))); + VEC3 mid = (position[d]+position[myMap.phi1(d)])/2.0f; + myMap.cutEdge(d); + position[myMap.phi1(d)] = mid; + + for(unsigned int i = position.begin() ; i != position.end() ; position.next(i)) + position[i] += VEC3(2,0,0); Algo::Modelisation::Primitive3D prim2(myMap,position); - Dart d = prim2.hexaGrid_topo(2,1,1); + d = prim2.hexaGrid_topo(2,1,1); prim2.embedHexaGrid(1,1,1); d = myMap.phi2(myMap.phi1(myMap.phi1(myMap.phi2(d))));