mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-08-04 13:13:25 +03:00
0026272: Visualization - provide a possibility to activate selection modes without opening local context
- picked or selected objects are now highlighted via owners instead of interactive objects; - support methods for owners were added to AIS_InteractiveContext; - dynamically highlighted owners are now displayed in immediate mode; - selection without opening of local context is enabled by default; - added "-local" key to vselmode command to enable selection in local context; - selection filters are now completely supported in AIS_InteractiveContext; - the idea of differencing of selected items onto current (in interactive context) and selected (local selection) was eliminated; - all calls to "current" were replaced by calls to "selected" in terms of future local context removal; - AIS_InteractiveObject::mySelectionMode was removed; - now each selectable object can define own selection mode for "global" selection of the whole object; - whole object selection mode is 0 by default for all standard interactive objects; - immediate structures are now added to topmost and top layer lists; - added support of drawing immediate structures in different layers; - unused code for immediate mode was removed; - vfeedback and vexport commands now produce correct output for raytrace mode.
This commit is contained in:
@@ -134,6 +134,8 @@ void StdSelect_BRepOwner::HilightWithColor(const Handle(PrsMgr_PresentationManag
|
||||
const Standard_Integer aMode)
|
||||
{
|
||||
Standard_Integer M = (aMode < 0) ? myCurMode : aMode;
|
||||
Graphic3d_ZLayerId aHiLayer = this == Selectable()->GlobalSelOwner().get() ?
|
||||
Graphic3d_ZLayerId_Top : Graphic3d_ZLayerId_Topmost;
|
||||
Handle(SelectMgr_SelectableObject) aSel = Selectable();
|
||||
if (myFromDecomposition)
|
||||
{
|
||||
@@ -175,17 +177,17 @@ void StdSelect_BRepOwner::HilightWithColor(const Handle(PrsMgr_PresentationManag
|
||||
}
|
||||
|
||||
// highlight with color and set layer
|
||||
PM->Color (myPrsSh, aCol, M, aSel);
|
||||
PM->Color (myPrsSh, aCol, M, aSel, aHiLayer);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!myPrsSh.IsNull())
|
||||
{
|
||||
PM->Color (myPrsSh, aCol, M, aSel);
|
||||
PM->Color (myPrsSh, aCol, M, aSel, aHiLayer);
|
||||
}
|
||||
else
|
||||
{
|
||||
PM->Color (aSel, aCol, M);
|
||||
PM->Color (aSel, aCol, M, NULL, aHiLayer);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user