occt: master f751596e
Author | Committer | Branch | Timestamp | Parent |
---|---|---|---|---|
bugmaster | master | 2015-04-06 09:31:00 | master 7a91ad6e | |
Affected Issues | 0024623: Visualization - improve selection mechanism | |||
Changeset | 0024623: Visualization - improve selection mechanism Redesign of selection mechanism: - implemented 3-level BVH tree for selection; - selection now calculates in 3D space; - intersection tests were moved to SelectMgr_BaseFrustum descendants; - removed .cdl files in Select3D and .cdl related to selection in MeshVS; - SelectMgr_ViewerSelectors are now shared between local and global contexts; - transformations of sensitive entities are now stored in SelectMgr_SelectableObject only. Sensitive entities are independent from transformations, it is applied to SelectMgr_SelectingVolumeManager instance only; - connected and multiple connected interactive objects are now represented by their child objects only for SelectMgr_SelectionManager; - if interactive object has child objects, they will be stored as separate objects in SelectMgr_SelectionManager now. - test cases bugs/vis/bug24623_1, bug24623_2, bug24623_3, bug24623_4 to test performance and memory issues. |
|||
mod - samples/mfc/standard/01_Geometry/adm/win/vc10/Geometry.vcxproj | Diff File | |||
mod - samples/mfc/standard/01_Geometry/adm/win/vc10/Geometry.vcxproj.filters | Diff File | |||
mod - samples/mfc/standard/01_Geometry/CMakeLists.txt | Diff File | |||
rm - samples/mfc/standard/01_Geometry/src/ISession2D/ISession2D_SensitiveCurve.cpp | Diff File | |||
rm - samples/mfc/standard/01_Geometry/src/ISession2D/ISession2D_SensitiveCurve.h | Diff File | |||
mod - samples/mfc/standard/01_Geometry/src/StdAfx.h | Diff File | |||
mod - samples/mfc/standard/03_Viewer2d/src/StdAfx.h | Diff File | |||
mod - samples/mfc/standard/04_Viewer3d/src/Viewer3dView.cpp | Diff File | |||
mod - samples/mfc/standard/05_ImportExport/src/StdAfx.h | Diff File | |||
mod - samples/mfc/standard/06_Ocaf/src/StdAfx.h | Diff File | |||
mod - samples/mfc/standard/08_HLR/src/StdAfx.h | Diff File | |||
mod - samples/mfc/standard/09_Animation/src/AnimationView3D.cpp | Diff File | |||
mod - samples/mfc/standard/09_Animation/src/StdAfx.h | Diff File | |||
mod - samples/mfc/standard/10_Convert/src/WNT/OCCDemoView.cpp | Diff File | |||
mod - samples/mfc/standard/Common/OCC_2dView.cpp | Diff File | |||
mod - samples/mfc/standard/Common/OCC_3dView.cpp | Diff File | |||
mod - samples/mfc/standard/Common/StdAfx.h | Diff File | |||
mod - src/AIS/AIS_Axis.cxx | Diff File | |||
mod - src/AIS/AIS_Chamf2dDimension.cxx | Diff File | |||
mod - src/AIS/AIS_Chamf3dDimension.cxx | Diff File | |||
mod - src/AIS/AIS_Circle.cxx | Diff File | |||
mod - src/AIS/AIS_ConcentricRelation.cxx | Diff File | |||
mod - src/AIS/AIS_ConnectedInteractive.cxx | Diff File | |||
mod - src/AIS/AIS_Dimension.cxx | Diff File | |||
mod - src/AIS/AIS_Dimension.hxx | Diff File | |||
mod - src/AIS/AIS_EqualRadiusRelation.cxx | Diff File | |||
mod - src/AIS/AIS_FixRelation.cxx | Diff File | |||
mod - src/AIS/AIS_IdenticRelation.cxx | Diff File | |||
mod - src/AIS/AIS_InteractiveContext.cdl | Diff File | |||
mod - src/AIS/AIS_InteractiveContext.cxx | Diff File | |||
mod - src/AIS/AIS_InteractiveContext_1.cxx | Diff File | |||
mod - src/AIS/AIS_InteractiveContext_2.cxx | Diff File | |||
mod - src/AIS/AIS_InteractiveObject.cdl | Diff File | |||
mod - src/AIS/AIS_InteractiveObject.cxx | Diff File | |||
mod - src/AIS/AIS_Line.cxx | Diff File | |||
mod - src/AIS/AIS_LocalContext.cdl | Diff File | |||
mod - src/AIS/AIS_LocalContext.cxx | Diff File | |||
mod - src/AIS/AIS_LocalContext_1.cxx | Diff File | |||
mod - src/AIS/AIS_MaxRadiusDimension.cxx | Diff File | |||
mod - src/AIS/AIS_MidPointRelation.cxx | Diff File | |||
mod - src/AIS/AIS_MinRadiusDimension.cxx | Diff File | |||
mod - src/AIS/AIS_MultipleConnectedInteractive.cxx | Diff File | |||
mod - src/AIS/AIS_OffsetDimension.cxx | Diff File | |||
mod - src/AIS/AIS_ParallelRelation.cxx | Diff File | |||
mod - src/AIS/AIS_PerpendicularRelation.cxx | Diff File | |||
mod - src/AIS/AIS_Plane.lxx | Diff File | |||
mod - src/AIS/AIS_PlaneTrihedron.cxx | Diff File | |||
mod - src/AIS/AIS_SymmetricRelation.cxx | Diff File | |||
mod - src/AIS/AIS_TangentRelation.cxx | Diff File | |||
mod - src/BVH/BVH_BinnedBuilder.hxx | Diff File | |||
mod - src/BVH/BVH_BinnedBuilder.lxx | Diff File | |||
mod - src/BVH/BVH_SpatialMedianBuilder.hxx | Diff File | |||
mod - src/BVH/BVH_SpatialMedianBuilder.lxx | Diff File | |||
mod - src/IVtk/IVtk_IShapePickerAlgo.hxx | Diff File | |||
mod - src/IVtk/IVtk_IView.hxx | Diff File | |||
mod - src/IVtkOCC/IVtkOCC_SelectableObject.cxx | Diff File | |||
mod - src/IVtkOCC/IVtkOCC_SelectableObject.hxx | Diff File | |||
mod - src/IVtkOCC/IVtkOCC_ShapePickerAlgo.cxx | Diff File | |||
mod - src/IVtkOCC/IVtkOCC_ShapePickerAlgo.hxx | Diff File | |||
mod - src/IVtkOCC/IVtkOCC_ViewerSelector.cxx | Diff File | |||
mod - src/IVtkOCC/IVtkOCC_ViewerSelector.hxx | Diff File | |||
mod - src/IVtkVTK/IVtkVTK_View.cxx | Diff File | |||
mod - src/IVtkVTK/IVtkVTK_View.hxx | Diff File | |||
mod - src/MeshVS/FILES | Diff File | |||
mod - src/MeshVS/MeshVS.cdl | Diff File | |||
rm - src/MeshVS/MeshVS_DummySensitiveEntity.cdl | Diff File | |||
mod - src/MeshVS/MeshVS_DummySensitiveEntity.cxx | Diff File | |||
add - src/MeshVS/MeshVS_DummySensitiveEntity.hxx | Diff File | |||
mod - src/MeshVS/MeshVS_Mesh.cdl | Diff File | |||
rm - src/MeshVS/MeshVS_SensitiveFace.cdl | Diff File | |||
mod - src/MeshVS/MeshVS_SensitiveFace.cxx | Diff File | |||
add - src/MeshVS/MeshVS_SensitiveFace.hxx | Diff File | |||
rm - src/MeshVS/MeshVS_SensitiveMesh.cdl | Diff File | |||
mod - src/MeshVS/MeshVS_SensitiveMesh.cxx | Diff File | |||
add - src/MeshVS/MeshVS_SensitiveMesh.hxx | Diff File | |||
rm - src/MeshVS/MeshVS_SensitivePolyhedron.cdl | Diff File | |||
mod - src/MeshVS/MeshVS_SensitivePolyhedron.cxx | Diff File | |||
add - src/MeshVS/MeshVS_SensitivePolyhedron.hxx | Diff File | |||
rm - src/MeshVS/MeshVS_SensitiveSegment.cdl | Diff File | |||
mod - src/MeshVS/MeshVS_SensitiveSegment.cxx | Diff File | |||
add - src/MeshVS/MeshVS_SensitiveSegment.hxx | Diff File | |||
mod - src/PrsMgr/PrsMgr_PresentableObject.cdl | Diff File | |||
mod - src/PrsMgr/PrsMgr_PresentableObject.cxx | Diff File | |||
mod - src/PrsMgr/PrsMgr_PresentableObject.lxx | Diff File | |||
mod - src/QABugs/QABugs_11.cxx | Diff File | |||
mod - src/QABugs/QABugs_9.cxx | Diff File | |||
mod - src/QABugs/QABugs_MyText.cdl | Diff File | |||
mod - src/QABugs/QABugs_MyText.cxx | Diff File | |||
mod - src/Select3D/FILES | Diff File | |||
mod - src/Select3D/Select3D.cdl | Diff File | |||
add - src/Select3D/Select3D_BoundarySensitivePointSet.cxx | Diff File | |||
add - src/Select3D/Select3D_BoundarySensitivePointSet.hxx | Diff File | |||
rm - src/Select3D/Select3D_Box2d.hxx | Diff File | |||
add - src/Select3D/Select3D_BVHPrimitiveContent.cxx | Diff File | |||
add - src/Select3D/Select3D_BVHPrimitiveContent.hxx | Diff File | |||
add - src/Select3D/Select3D_EntitySequence.hxx | Diff File | |||
add - src/Select3D/Select3D_InteriorSensitivePointSet.cxx | Diff File | |||
add - src/Select3D/Select3D_InteriorSensitivePointSet.hxx | Diff File | |||
add - src/Select3D/Select3D_ISensitivePointSet.hxx | Diff File | |||
rm - src/Select3D/Select3D_Pnt2d.hxx | Diff File | |||
mod - src/Select3D/Select3D_PointData.hxx | Diff File | |||
rm - src/Select3D/Select3D_Projector.cdl | Diff File | |||
rm - src/Select3D/Select3D_Projector.cxx | Diff File | |||
rm - src/Select3D/Select3D_Projector.lxx | Diff File | |||
rm - src/Select3D/Select3D_SensitiveBox.cdl | Diff File | |||
mod - src/Select3D/Select3D_SensitiveBox.cxx | Diff File | |||
add - src/Select3D/Select3D_SensitiveBox.hxx | Diff File | |||
rm - src/Select3D/Select3D_SensitiveCircle.cdl | Diff File | |||
mod - src/Select3D/Select3D_SensitiveCircle.cxx | Diff File | |||
add - src/Select3D/Select3D_SensitiveCircle.hxx | Diff File | |||
rm - src/Select3D/Select3D_SensitiveCurve.cdl | Diff File | |||
mod - src/Select3D/Select3D_SensitiveCurve.cxx | Diff File | |||
add - src/Select3D/Select3D_SensitiveCurve.hxx | Diff File | |||
rm - src/Select3D/Select3D_SensitiveCurve.lxx | Diff File | |||
rm - src/Select3D/Select3D_SensitiveEntity.cdl | Diff File | |||
mod - src/Select3D/Select3D_SensitiveEntity.cxx | Diff File | |||
add - src/Select3D/Select3D_SensitiveEntity.hxx | Diff File | |||
rm - src/Select3D/Select3D_SensitiveFace.cdl | Diff File | |||
mod - src/Select3D/Select3D_SensitiveFace.cxx | Diff File | |||
add - src/Select3D/Select3D_SensitiveFace.hxx | Diff File | |||
rm - src/Select3D/Select3D_SensitiveGroup.cdl | Diff File | |||
mod - src/Select3D/Select3D_SensitiveGroup.cxx | Diff File | |||
add - src/Select3D/Select3D_SensitiveGroup.hxx | Diff File | |||
mod - src/Select3D/Select3D_SensitiveGroup.lxx | Diff File | |||
rm - src/Select3D/Select3D_SensitivePoint.cdl | Diff File | |||
mod - src/Select3D/Select3D_SensitivePoint.cxx | Diff File | |||
add - src/Select3D/Select3D_SensitivePoint.hxx | Diff File | |||
rm - src/Select3D/Select3D_SensitivePoly.cdl | Diff File | |||
mod - src/Select3D/Select3D_SensitivePoly.cxx | Diff File | |||
add - src/Select3D/Select3D_SensitivePoly.hxx | Diff File | |||
mod - src/Select3D/Select3D_SensitivePoly.lxx | Diff File | |||
rm - src/Select3D/Select3D_SensitiveSegment.cdl | Diff File | |||
mod - src/Select3D/Select3D_SensitiveSegment.cxx | Diff File | |||
add - src/Select3D/Select3D_SensitiveSegment.hxx | Diff File | |||
mod - src/Select3D/Select3D_SensitiveSegment.lxx | Diff File | |||
add - src/Select3D/Select3D_SensitiveSet.cxx | Diff File | |||
add - src/Select3D/Select3D_SensitiveSet.hxx | Diff File | |||
rm - src/Select3D/Select3D_SensitiveTriangle.cdl | Diff File | |||
mod - src/Select3D/Select3D_SensitiveTriangle.cxx | Diff File | |||
add - src/Select3D/Select3D_SensitiveTriangle.hxx | Diff File | |||
rm - src/Select3D/Select3D_SensitiveTriangulation.cdl | Diff File | |||
mod - src/Select3D/Select3D_SensitiveTriangulation.cxx | Diff File | |||
add - src/Select3D/Select3D_SensitiveTriangulation.hxx | Diff File | |||
mod - src/Select3D/Select3D_SensitiveTriangulation.lxx | Diff File | |||
rm - src/Select3D/Select3D_SensitiveWire.cdl | Diff File | |||
mod - src/Select3D/Select3D_SensitiveWire.cxx | Diff File | |||
add - src/Select3D/Select3D_SensitiveWire.hxx | Diff File | |||
add - src/Select3D/Select3D_TypeOfSensitivity.hxx | Diff File | |||
mod - src/SelectBasics/FILES | Diff File | |||
mod - src/SelectBasics/SelectBasics.cdl | Diff File | |||
rm - src/SelectBasics/SelectBasics_BasicTool.cdl | Diff File | |||
rm - src/SelectBasics/SelectBasics_BasicTool.cxx | Diff File | |||
mod - src/SelectBasics/SelectBasics_EntityOwner.cxx | Diff File | |||
rm - src/SelectBasics/SelectBasics_PickArgs.hxx | Diff File | |||
add - src/SelectBasics/SelectBasics_PickResult.hxx | Diff File | |||
add - src/SelectBasics/SelectBasics_SelectingVolumeManager.hxx | Diff File | |||
mod - src/SelectBasics/SelectBasics_SensitiveEntity.cdl | Diff File | |||
mod - src/SelectBasics/SelectBasics_SensitiveEntity.cxx | Diff File | |||
mod - src/SelectBasics/SelectBasics_SensitiveEntity.lxx | Diff File | |||
rm - src/SelectBasics/SelectBasics_SortAlgo.cdl | Diff File | |||
rm - src/SelectBasics/SelectBasics_SortAlgo.cxx | Diff File | |||
mod - src/SelectMgr/FILES | Diff File | |||
mod - src/SelectMgr/SelectMgr.cdl | Diff File | |||
add - src/SelectMgr/SelectMgr_BaseFrustum.cxx | Diff File | |||
add - src/SelectMgr/SelectMgr_BaseFrustum.hxx | Diff File | |||
mod - src/SelectMgr/SelectMgr_EntityOwner.cxx | Diff File | |||
add - src/SelectMgr/SelectMgr_Frustum.hxx | Diff File | |||
add - src/SelectMgr/SelectMgr_Frustum.lxx | Diff File | |||
add - src/SelectMgr/SelectMgr_FrustumBuilder.cxx | Diff File | |||
add - src/SelectMgr/SelectMgr_FrustumBuilder.hxx | Diff File | |||
add - src/SelectMgr/SelectMgr_RectangularFrustum.cxx | Diff File | |||
add - src/SelectMgr/SelectMgr_RectangularFrustum.hxx | Diff File | |||
mod - src/SelectMgr/SelectMgr_SelectableObject.cdl | Diff File | |||
mod - src/SelectMgr/SelectMgr_SelectableObject.cxx | Diff File | |||
add - src/SelectMgr/SelectMgr_SelectableObjectSet.cxx | Diff File | |||
add - src/SelectMgr/SelectMgr_SelectableObjectSet.hxx | Diff File | |||
add - src/SelectMgr/SelectMgr_SelectingVolumeManager.cxx | Diff File | |||
add - src/SelectMgr/SelectMgr_SelectingVolumeManager.hxx | Diff File | |||
rm - src/SelectMgr/SelectMgr_Selection.cdl | Diff File | |||
mod - src/SelectMgr/SelectMgr_Selection.cxx | Diff File | |||
add - src/SelectMgr/SelectMgr_Selection.hxx | Diff File | |||
mod - src/SelectMgr/SelectMgr_Selection.lxx | Diff File | |||
mod - src/SelectMgr/SelectMgr_SelectionManager.cdl | Diff File | |||
mod - src/SelectMgr/SelectMgr_SelectionManager.cxx | Diff File | |||
add - src/SelectMgr/SelectMgr_SensitiveEntity.cxx | Diff File | |||
add - src/SelectMgr/SelectMgr_SensitiveEntity.hxx | Diff File | |||
add - src/SelectMgr/SelectMgr_SensitiveEntitySet.cxx | Diff File | |||
add - src/SelectMgr/SelectMgr_SensitiveEntitySet.hxx | Diff File | |||
add - src/SelectMgr/SelectMgr_TriangularFrustum.cxx | Diff File | |||
add - src/SelectMgr/SelectMgr_TriangularFrustum.hxx | Diff File | |||
add - src/SelectMgr/SelectMgr_TriangularFrustumSet.cxx | Diff File | |||
add - src/SelectMgr/SelectMgr_TriangularFrustumSet.hxx | Diff File | |||
add - src/SelectMgr/SelectMgr_VectorTypes.hxx | Diff File | |||
rm - src/SelectMgr/SelectMgr_ViewerSelector.cdl | Diff File | |||
mod - src/SelectMgr/SelectMgr_ViewerSelector.cxx | Diff File | |||
add - src/SelectMgr/SelectMgr_ViewerSelector.hxx | Diff File | |||
mod - src/SelectMgr/SelectMgr_ViewerSelector.lxx | Diff File | |||
add - src/StdSelect/FILES | Diff File | |||
mod - src/StdSelect/StdSelect.cdl | Diff File | |||
mod - src/StdSelect/StdSelect.cxx | Diff File | |||
mod - src/StdSelect/StdSelect_BRepSelectionTool.cdl | Diff File | |||
mod - src/StdSelect/StdSelect_BRepSelectionTool.cxx | Diff File | |||
rm - src/StdSelect/StdSelect_ViewerSelector3d.cdl | Diff File | |||
mod - src/StdSelect/StdSelect_ViewerSelector3d.cxx | Diff File | |||
add - src/StdSelect/StdSelect_ViewerSelector3d.hxx | Diff File | |||
mod - src/StdSelect/StdSelect_ViewerSelector3d.lxx | Diff File | |||
mod - src/ViewerTest/ViewerTest.cxx | Diff File | |||
mod - src/ViewerTest/ViewerTest_ObjectCommands.cxx | Diff File | |||
mod - src/ViewerTest/ViewerTest_RelationCommands.cxx | Diff File | |||
mod - src/Voxel/Voxel_Prs.cdl | Diff File | |||
mod - tests/bugs/modalg_2/bug22781_2 | Diff File | |||
mod - tests/bugs/modalg_2/bug22781_4 | Diff File | |||
mod - tests/bugs/vis/bug23012 | Diff File | |||
mod - tests/bugs/vis/bug23539_2 | Diff File | |||
mod - tests/bugs/vis/bug23649_3 | Diff File | |||
mod - tests/bugs/vis/bug23649_4 | Diff File | |||
mod - tests/bugs/vis/bug24389 | Diff File | |||
mod - tests/bugs/vis/bug24564 | Diff File | |||
mod - tests/bugs/vis/bug24569 | Diff File | |||
add - tests/bugs/vis/bug24623_1 | Diff File | |||
add - tests/bugs/vis/bug24623_2 | Diff File | |||
add - tests/bugs/vis/bug24623_3 | Diff File | |||
add - tests/bugs/vis/bug24623_4 | Diff File | |||
mod - tests/bugs/vis/bug25098 | Diff File | |||
mod - tests/bugs/vis/bug25532 | Diff File | |||
mod - tests/bugs/vis/bug25552 | Diff File | |||
mod - tests/bugs/vis/bug25723 | Diff File | |||
mod - tests/bugs/vis/bug25935 | Diff File | |||
mod - tests/v3d/edge_face/E2 | Diff File | |||
mod - tests/v3d/edge_face/E9 | Diff File | |||
mod - tests/v3d/edge_face/J4 | Diff File | |||
mod - tests/v3d/edge_face/K2 | Diff File | |||
mod - tests/v3d/edge_face/O6 | Diff File | |||
mod - tests/v3d/edge_face/P4 | Diff File | |||
mod - tests/v3d/edge_solid/E2 | Diff File | |||
mod - tests/v3d/edge_solid/E9 | Diff File | |||
mod - tests/v3d/edge_solid/J4 | Diff File | |||
mod - tests/v3d/edge_solid/K2 | Diff File | |||
mod - tests/v3d/edge_solid/O6 | Diff File | |||
mod - tests/v3d/edge_solid/P4 | Diff File | |||
mod - tests/v3d/vertex_edge/E7 | Diff File | |||
mod - tests/v3d/vertex_edge/F1 | Diff File | |||
mod - tests/v3d/vertex_edge/J9 | Diff File | |||
mod - tests/v3d/vertex_edge/K1 | Diff File | |||
mod - tests/v3d/vertex_edge/K3 | Diff File | |||
mod - tests/v3d/vertex_face/E7 | Diff File | |||
mod - tests/v3d/vertex_face/F1 | Diff File | |||
mod - tests/v3d/vertex_face/J9 | Diff File | |||
mod - tests/v3d/vertex_face/K1 | Diff File | |||
mod - tests/v3d/vertex_face/K3 | Diff File | |||
mod - tests/v3d/vertex_solid/E7 | Diff File | |||
mod - tests/v3d/vertex_solid/F1 | Diff File | |||
mod - tests/v3d/vertex_solid/J9 | Diff File | |||
mod - tests/v3d/vertex_solid/K3 | Diff File | |||
mod - tests/v3d/vertex_wire/E7 | Diff File | |||
mod - tests/v3d/vertex_wire/F1 | Diff File | |||
mod - tests/v3d/vertex_wire/J9 | Diff File | |||
mod - tests/v3d/vertex_wire/K3 | Diff File | |||
mod - tests/v3d/wire/E9 | Diff File | |||
mod - tests/v3d/wire/F1 | Diff File | |||
mod - tests/v3d/wire/F2 | Diff File | |||
mod - tests/v3d/wire_solid/E2 | Diff File | |||
mod - tests/v3d/wire_solid/E7 | Diff File | |||
mod - tests/v3d/wire_solid/F1 | Diff File | |||
mod - tests/v3d/wire_solid/J4 | Diff File | |||
mod - tests/v3d/wire_solid/J9 | Diff File | |||
mod - tests/v3d/wire_solid/K3 | Diff File |