]> OCCT Git - occt-copy.git/commit
0029874: Visualization - capping plane transparency does not work
authorkgv <kgv@opencascade.com>
Fri, 15 Jun 2018 16:39:31 +0000 (19:39 +0300)
committerbugmaster <bugmaster@opencascade.com>
Sun, 8 Jul 2018 07:47:07 +0000 (10:47 +0300)
commitb25b364ac248120862291d3292a3b61ea06671e5
tree42a32d2d8b0ede5a348cde7579f35b63dea68e42
parent7c7925285f48b618fde8a6a52d5a88fa8699ead3
0029874: Visualization - capping plane transparency does not work

Interface OpenGl_RenderFilter and its implementations have been merged into OpenGl_Workspace.
This limits flexibility of interface, but simplifies logic.
- OpenGl_RenderFilter_FillModeOnly flag replaces OpenGl_CappingAlgoFilter;
- OpenGl_RenderFilter_NonRaytraceableOnly flag replaces OpenGl_RaytraceFilter;
- OpenGl_RenderFilter_OpaqueOnly flag replaces OpenGl_OpaqueFilter;
- OpenGl_RenderFilter_TransparentOnly flag replaces OpenGl_TransparentFilter.

OpenGl_CappingAlgo now:
- avoids redundant Stencil clearing when Layer contains at least one transparent Element;
- renders semitransparent capping plane within transparent elements pass.

vclipplane command has been extended by new argument -transparency.
15 files changed:
src/OpenGl/FILES
src/OpenGl/OpenGl_CappingAlgo.cxx
src/OpenGl/OpenGl_CappingAlgo.hxx
src/OpenGl/OpenGl_Element.hxx
src/OpenGl/OpenGl_Group.cxx
src/OpenGl/OpenGl_LayerList.cxx
src/OpenGl/OpenGl_LayerList.hxx
src/OpenGl/OpenGl_RenderFilter.cxx [deleted file]
src/OpenGl/OpenGl_RenderFilter.hxx
src/OpenGl/OpenGl_View.hxx
src/OpenGl/OpenGl_View_Redraw.cxx
src/OpenGl/OpenGl_Workspace.cxx
src/OpenGl/OpenGl_Workspace.hxx
src/ViewerTest/ViewerTest_ViewerCommands.cxx
tests/bugs/vis/bug29874 [new file with mode: 0644]