Changeset 1001 for GTP/trunk/Lib/Vis/Preprocessing/src/ViewCellBsp.cpp
- Timestamp:
- 06/05/06 23:14:04 (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
GTP/trunk/Lib/Vis/Preprocessing/src/ViewCellBsp.cpp
r882 r1001 647 647 for (int i = 0; i < limit; ++i) 648 648 { 649 Intersectable *object = objects[i];//*it; 649 Intersectable *object = objects[i]; 650 650 651 Mesh *mesh = NULL; 651 652 … … 658 659 mesh = dynamic_cast<ViewCell *>(object)->GetMesh(); 659 660 break; 660 // TODO: handle transformed mesh instances 661 case Intersectable::TRANSFORMED_MESH_INSTANCE: 662 { 663 TransformedMeshInstance *mi = 664 dynamic_cast<TransformedMeshInstance *>(object); 665 666 if (!mi->GetMesh()) 667 break; 668 669 mesh = new Mesh(*mi->GetMesh()); 670 671 Matrix4x4 m; 672 mi->GetWorldTransform(m); 673 mesh->ApplyTransformation(m); 674 675 break; 676 } 661 677 default: 662 678 Debug << "intersectable type not supported" << endl; … … 667 683 { 668 684 if (addToBbox) 669 {670 685 mBox.Include(object->GetBox()); // add to BSP tree aabb 671 } 672 686 673 687 AddMeshToPolygons(mesh, polys, mOutOfBoundsCell); 674 } 688 689 // cleanup 690 if (object->Type() == Intersectable::TRANSFORMED_MESH_INSTANCE) 691 DEL_PTR(mesh); 692 } 675 693 } 676 694 … … 2851 2869 mPolys.reserve(rhs.mPolys.size()); 2852 2870 mPlanes.reserve(rhs.mPolys.size()); 2853 2854 2871 2855 2872 PolygonContainer::const_iterator it, it_end = rhs.mPolys.end();
Note: See TracChangeset
for help on using the changeset viewer.