0027818: Visualization - provide an interface to define highlight presentation properties
authorvpa <vpa@opencascade.com>
Wed, 28 Sep 2016 09:43:17 +0000 (12:43 +0300)
committerkgv <kgv@opencascade.com>
Fri, 30 Sep 2016 08:17:11 +0000 (11:17 +0300)
commit8e5fb5eabc309751064ef241ba5ae45995697204
tree1fdefc3a8945cff077d43d05cfb2926618713dfd
parent3a9b5dc86a1d69f2deaf0f6f2e8b2a8c87668c39
0027818: Visualization - provide an interface to define highlight presentation properties

- introduces a wrapper for setting up highlight properties: Graphic3d_HighlightStyle;
- API of all methods that use highlight or selection color is changed to deal with Graphic3d_HighlightStyle;
- highlight in shading mode now supports transparency, implemented via blending;
- transparency for selection can also be set, but implementing custom entity owners with additional presentation on application level;
- methods PrsMgr_PresentationManager::Highlight, PrsMgr_PresentationManager::BoundBox that highlight object with hard-coded color are removed;
- deprecated methods of SelectMgr_EntityOwner, that use presentation manager's highlight method, were removed;
- methods of IsHilighted AIS context with selection color checks were replaced;
- added API to store dynamic and selection highlight to Prs3d_Drawer class;
- customization of dynamic and selection highlight for particular objects is now available through SelectMgr_SelectableObject::HilightAttributes();
- AIS_InteractiveContext highlight methods were updated to support individual highlight styles of interactive objects;
- introduced new command - vselprops, that allows to customize global selection and highlight properties like autoactivation, pixel tolerance and colors;
- Draw Harness commands vautoactivatesel and vselprecision were removed, use vselprops instead;
- fixed bug in command's parser;
- test case for issue #27818
69 files changed:
dox/dev_guides/upgrade/upgrade.md
samples/mfc/standard/Common/Primitive/Sample2D_Face.cpp
samples/mfc/standard/Common/Primitive/Sample2D_Face.h
src/AIS/AIS_DimensionOwner.cxx
src/AIS/AIS_DimensionOwner.hxx
src/AIS/AIS_GlobalStatus.cxx
src/AIS/AIS_GlobalStatus.hxx
src/AIS/AIS_GlobalStatus.lxx
src/AIS/AIS_InteractiveContext.cxx
src/AIS/AIS_InteractiveContext.hxx
src/AIS/AIS_InteractiveContext.lxx
src/AIS/AIS_InteractiveContext_1.cxx
src/AIS/AIS_InteractiveContext_2.cxx
src/AIS/AIS_LocalContext.cxx
src/AIS/AIS_LocalContext.hxx
src/AIS/AIS_LocalContext_1.cxx
src/AIS/AIS_LocalStatus.cxx
src/AIS/AIS_LocalStatus.hxx
src/AIS/AIS_LocalStatus.lxx
src/AIS/AIS_Manipulator.cxx
src/AIS/AIS_Manipulator.hxx
src/AIS/AIS_ManipulatorOwner.cxx
src/AIS/AIS_ManipulatorOwner.hxx
src/AIS/AIS_MultipleConnectedInteractive.cxx
src/Graphic3d/FILES
src/Graphic3d/Graphic3d_CStructure.hxx
src/Graphic3d/Graphic3d_CView.cxx
src/Graphic3d/Graphic3d_CView.hxx
src/Graphic3d/Graphic3d_HighlightStyle.cxx [new file with mode: 0644]
src/Graphic3d/Graphic3d_HighlightStyle.hxx [new file with mode: 0644]
src/Graphic3d/Graphic3d_Structure.cxx
src/Graphic3d/Graphic3d_Structure.hxx
src/Graphic3d/Graphic3d_StructureManager.cxx
src/Graphic3d/Graphic3d_StructureManager.hxx
src/MeshVS/MeshVS_Mesh.cxx
src/MeshVS/MeshVS_Mesh.hxx
src/MeshVS/MeshVS_MeshEntityOwner.cxx
src/MeshVS/MeshVS_MeshEntityOwner.hxx
src/MeshVS/MeshVS_MeshOwner.cxx
src/MeshVS/MeshVS_MeshOwner.hxx
src/OpenGl/OpenGl_Context.cxx
src/OpenGl/OpenGl_PrimitiveArray.cxx
src/OpenGl/OpenGl_Structure.cxx
src/OpenGl/OpenGl_Structure.hxx
src/Prs3d/Prs3d_Drawer.cxx
src/Prs3d/Prs3d_Drawer.hxx
src/PrsMgr/PrsMgr_Presentation.cxx
src/PrsMgr/PrsMgr_Presentation.hxx
src/PrsMgr/PrsMgr_PresentationManager.cxx
src/PrsMgr/PrsMgr_PresentationManager.hxx
src/QABugs/QABugs_16.cxx
src/QABugs/QABugs_19.cxx
src/SelectMgr/SelectMgr_EntityOwner.cxx
src/SelectMgr/SelectMgr_EntityOwner.hxx
src/SelectMgr/SelectMgr_SelectableObject.cxx
src/SelectMgr/SelectMgr_SelectableObject.hxx
src/SelectMgr/SelectMgr_SequenceOfOwner.hxx
src/StdSelect/StdSelect_BRepOwner.cxx
src/StdSelect/StdSelect_BRepOwner.hxx
src/ViewerTest/ViewerTest.cxx
src/ViewerTest/ViewerTest_CmdParser.cxx
src/ViewerTest/ViewerTest_CmdParser.hxx
src/ViewerTest/ViewerTest_ViewerCommands.cxx
tests/bugs/vis/bug23012
tests/bugs/vis/bug25532
tests/bugs/vis/bug26159
tests/bugs/vis/bug26413
tests/v3d/materials/bug27818_1 [new file with mode: 0644]
tests/v3d/materials/bug27818_2 [new file with mode: 0644]