occt: master 3202bf1e

Author Committer Branch Timestamp Parent
kgv bugmaster master 2016-09-14 10:44:47 master ef444297
Affected Issues  0027816: Visualization - provide an API for overriding clipping planes list
Changeset 0027816: Visualization - provide an API for overriding clipping planes list

Graphic3d_SequenceOfHClipPlane now inherits Standard_Transient.
PrsMgr_PresentableObject, Graphic3d_Structure, Graphic3d_CStructure,
V3d_View, OpenGl_View now manages the plane list by Handle.
The getters ::GetClipPlanes() has been removed,
setters taking non-handle ::SetClipPlanes() has been marked deprecated.

OpenGl_Structure::Render() and SelectMgr_ViewerSelector::checkOverlap()
now disable global (view) clipping planes for objects
with flags Graphic3d_TMF_TriedronPers and Graphic3d_TMF_2d
or with new flag Graphic3d_SequenceOfHClipPlane::ToOverrideGlobal().

OpenGl_Clipping now implements interface for managing clipping planes
without copying the sequences.
The filtering of duplicates is no more performed by OpenGl_Clipping
- application is responsible to not do this.
OpenGl_Clipping tries avoiding unnecessary allocations for managing
list of active planes.

MFC sample has been updated to use V3d_View::ClipPlanes() method.
mod - samples/mfc/standard/04_Viewer3d/src/ModelClippingDlg.cpp Diff File
mod - src/Graphic3d/Graphic3d_CStructure.hxx Diff File
mod - src/Graphic3d/Graphic3d_CView.hxx Diff File
mod - src/Graphic3d/Graphic3d_SequenceOfHClipPlane.hxx Diff File
mod - src/Graphic3d/Graphic3d_Structure.cxx Diff File
mod - src/Graphic3d/Graphic3d_Structure.hxx Diff File
mod - src/OpenGl/OpenGl_CappingAlgo.cxx Diff File
mod - src/OpenGl/OpenGl_Clipping.cxx Diff File
mod - src/OpenGl/OpenGl_Clipping.hxx Diff File
mod - src/OpenGl/OpenGl_ShaderManager.cxx Diff File
mod - src/OpenGl/OpenGl_Structure.cxx Diff File
mod - src/OpenGl/OpenGl_View.hxx Diff File
mod - src/OpenGl/OpenGl_View_Redraw.cxx Diff File
mod - src/PrsMgr/FILES Diff File
mod - src/PrsMgr/PrsMgr_PresentableObject.cxx Diff File
mod - src/PrsMgr/PrsMgr_PresentableObject.hxx Diff File
rm - src/PrsMgr/PrsMgr_PresentableObject.lxx Diff File
mod - src/PrsMgr/PrsMgr_PresentationManager.cxx Diff File
mod - src/SelectMgr/SelectMgr_BaseFrustum.hxx Diff File
mod - src/SelectMgr/SelectMgr_RectangularFrustum.cxx Diff File
mod - src/SelectMgr/SelectMgr_RectangularFrustum.hxx Diff File
mod - src/SelectMgr/SelectMgr_SelectingVolumeManager.cxx Diff File
mod - src/SelectMgr/SelectMgr_SelectingVolumeManager.hxx Diff File
mod - src/SelectMgr/SelectMgr_ViewerSelector.cxx Diff File
mod - src/StdSelect/StdSelect_ViewerSelector3d.cxx Diff File
mod - src/V3d/V3d_View.hxx Diff File
mod - src/V3d/V3d_View_2.cxx Diff File