mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-09-08 14:17:06 +03:00
0024070: OpenGL capped object-level clipping planes
Graphical clipping: - Use "Graphic3d_ClipPlane" to defined clipping for PrsMgr_PresentableObject (local clipping), for V3d_View (global clipping). Get rid of old implementations: - Remove Visual3d_ClipPlane. - Port V3d_Plane to Graphic3d_ClipPlane core. Selection Sensitives: - Port "Matches" method to add full set of arguments (SelectBasics_PickArgs), including min-max depth coming from selector. - Get rid of transient data for pair Matches -> ComputeDepth. - Extend SelectMgr_ViewerSelector::LoadResult to work with local clipping, add virtual callbacks to compute globa/local depth clipping for picking. Capping rendering algorithm: - Recursive rendering algorithm for OpenGl_Groups. - Introduced Rendering filter for groups. Clipping plane management in TKOpenGl: - Added OpenGl_ClippingState to OpenGl_Context. DRAWEXE commands: - Ported "vclipplane" command for new approach. - Added "vsettexturemode" command for changing texture details in views (enable / disable textures). Correct DownCast syntax (compilation error) Fix new compiler warnings tests/bugs/vis/bug22906 migrated to the new vclipplane syntax
This commit is contained in:
@@ -144,7 +144,6 @@ To solve the problem (for lack of a better solution) I make 2 passes.
|
||||
#include <Standard_TypeMismatch.hxx>
|
||||
#include <Visual3d_ViewManager.hxx>
|
||||
#include <Visual3d_Light.hxx>
|
||||
#include <Visual3d_ClipPlane.hxx>
|
||||
#include <Graphic3d_Structure.hxx>
|
||||
#include <Graphic3d_MapIteratorOfMapOfStructure.hxx>
|
||||
#include <Graphic3d_MapOfStructure.hxx>
|
||||
@@ -269,10 +268,8 @@ V3d_View::V3d_View(const Handle(V3d_Viewer)& VM, const V3d_TypeOfView Type ) :
|
||||
MyType ( Type ),
|
||||
MyViewer(VM.operator->()),
|
||||
MyActiveLights(),
|
||||
MyActivePlanes(),
|
||||
MyViewContext (),
|
||||
myActiveLightsIterator(),
|
||||
myActivePlanesIterator(),
|
||||
SwitchSetFront(Standard_False),
|
||||
MyTrsf (1, 4, 1, 4), // S3892
|
||||
MyProjModel(V3d_TPM_SCREEN)
|
||||
@@ -372,10 +369,8 @@ V3d_View::V3d_View(const Handle(V3d_Viewer)& VM,const Handle(V3d_View)& V, const
|
||||
MyType ( Type ),
|
||||
MyViewer(VM.operator->()),
|
||||
MyActiveLights(),
|
||||
MyActivePlanes(),
|
||||
MyViewContext (),
|
||||
myActiveLightsIterator(),
|
||||
myActivePlanesIterator(),
|
||||
SwitchSetFront(Standard_False),
|
||||
MyTrsf (1, 4, 1, 4), // S3892
|
||||
MyProjModel(V3d_TPM_SCREEN)
|
||||
@@ -387,8 +382,6 @@ MyProjModel(V3d_TPM_SCREEN)
|
||||
|
||||
for (V->InitActiveLights();V->MoreActiveLights();V->NextActiveLights()){
|
||||
MyActiveLights.Append(V->ActiveLight());}
|
||||
for (V->InitActivePlanes();V->MoreActivePlanes();V->NextActivePlanes()){
|
||||
MyActivePlanes.Append(V->ActivePlane());}
|
||||
|
||||
MyViewContext = FromView->Context() ;
|
||||
|
||||
|
Reference in New Issue
Block a user