Changeset 1024 for GTP/trunk/Lib/Geom/shared/GTGeometry/src/libs
- Timestamp:
- 06/20/06 13:02:00 (19 years ago)
- Location:
- GTP/trunk/Lib/Geom/shared/GTGeometry/src/libs/vmi
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
GTP/trunk/Lib/Geom/shared/GTGeometry/src/libs/vmi/include/change.h
r1009 r1024 4 4 #include "mesh.h" 5 5 #include <vector> 6 #include <map> 6 7 7 8 namespace VMI 8 9 { 10 typedef std::vector<int> INTVECTOR; 11 9 12 typedef struct change 10 13 { … … 63 66 // Save simplification sequence in Geometry Game Tools format. 64 67 extern void saveSimplificationSequence(Change *c); 68 69 extern std::map<int, INTVECTOR> inversemap; 65 70 } 66 71 -
GTP/trunk/Lib/Geom/shared/GTGeometry/src/libs/vmi/src/change.cpp
r1009 r1024 332 332 } 333 333 334 namespace VMI{ 335 std::map<int, INTVECTOR> inversemap; 336 } 337 334 338 // Save simplification sequence in Geometry Game Tools format. 335 339 extern void VMI::saveSimplificationSequence(Change *c) 336 340 { 337 vmiStep step; 338 step.mV0 = c->u; 339 step.mV1 = c->v; 340 341 // If only one triangle has been deleted. 342 if (c->numDel == 1) 343 { 344 step.mT0 = c->deleted[0].id; 345 step.mT1 = c->deleted[0].id; 346 } 347 // If two triangles have been deleted. 348 else 349 { 350 step.mT0 = c->deleted[0].id; 351 step.mT1 = c->deleted[1].id; 352 } 353 354 step.x = 0.0; 355 step.y = 0.0; 356 step.z = 0.0; 357 358 // Write obligatory field. 359 step.obligatory = 0; 360 361 // List of new triangles. 362 // For each modified triangle. 363 for (int i = 0; i < c->numMod; i++) 364 { 365 step.mModfaces.push_back(c->modified[i].id); 366 } 367 368 // Add step to list of changes. 369 mVMISteps.push_back(step); 370 } 371 341 342 int stepnum= 1; 343 for(INTVECTOR::iterator it= inversemap[c->u].begin(); it!=inversemap[c->u].end(); it++) 344 { 345 vmiStep step; 346 step.mV0 = *it; 347 step.mV1 = c->v; 348 349 // If only one triangle has been deleted. 350 if (c->numDel == 1) 351 { 352 step.mT0 = c->deleted[0].id; 353 step.mT1 = c->deleted[0].id; 354 } 355 // If two triangles have been deleted. 356 else 357 { 358 step.mT0 = c->deleted[0].id; 359 step.mT1 = c->deleted[1].id; 360 } 361 362 step.x = 0.0; 363 step.y = 0.0; 364 step.z = 0.0; 365 366 // Write obligatory field. 367 if (stepnum==inversemap[c->u].size()) 368 step.obligatory = 0; 369 else 370 step.obligatory = 1; 371 stepnum++; 372 373 // List of new triangles. 374 // For each modified triangle. 375 for (int i = 0; i < c->numMod; i++) 376 { 377 step.mModfaces.push_back(c->modified[i].id); 378 } 379 380 // Add step to list of changes. 381 mVMISteps.push_back(step); 382 } 383 }
Note: See TracChangeset
for help on using the changeset viewer.