mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-08-19 13:40:49 +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:
@@ -140,7 +140,6 @@ void AIS_InteractiveContext::CloseLocalContext(const Standard_Integer Index,
|
||||
if(updateproj)
|
||||
myMainSel->UpdateConversion();
|
||||
else{
|
||||
myMainSel->ReactivateProjector();
|
||||
myMainSel->UpdateSort();
|
||||
}
|
||||
if(debugmode)
|
||||
@@ -156,11 +155,10 @@ void AIS_InteractiveContext::CloseLocalContext(const Standard_Integer Index,
|
||||
if(GoodIndex==myCurLocalIndex){
|
||||
myCurLocalIndex = HighestIndex();
|
||||
const Handle(AIS_LocalContext)& LocCtx = myLocalContexts(myCurLocalIndex);
|
||||
if(LocCtx->HasSameProjector(VS->Projector())){
|
||||
LocCtx->MainSelector()->ReactivateProjector();
|
||||
}
|
||||
else
|
||||
if (!LocCtx->HasSameProjector (VS->Projector()))
|
||||
{
|
||||
LocCtx->MainSelector()->UpdateConversion();
|
||||
}
|
||||
}
|
||||
else if(debugmode)
|
||||
cout<<"a No Current Local Context WasClosed"<<endl;
|
||||
|
Reference in New Issue
Block a user