1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-09-03 14:10:33 +03:00

0024389: Invalid hilight of AIS dimension line in local selection

- Fixed invalid presentation of dimension highlight.
- Fixed bug on switching between selection modes. Individual sensitive entities generated for each selection mode.
- Revised selection: AIS_DimensionSelectionMode enumeration added, redundant AIS_DimensionDisplayMode is removed.
- Revised entity owner usage: used standard SelectMgr_EntityOwner for neutral selection, AIS_DimensionOwner for "line", "text" selection modes.
- Made arrows selectable.
- Got rid of predefined arrow angle. The arrow angle is now taken from dimension aspect.
- The 3D text is now centered by bounding box for better alignment.
This commit is contained in:
apl
2013-12-07 14:07:41 +04:00
committed by abv
parent 73cd8a8afd
commit fe83e1ea69
18 changed files with 1164 additions and 596 deletions

View File

@@ -108,6 +108,7 @@ void AIS_DiameterDimension::Compute (const Handle(PrsMgr_PresentationManager3d)&
const Standard_Integer theMode)
{
thePresentation->Clear();
mySelectionGeom.Clear (theMode);
Handle(Prs3d_DimensionAspect) aDimensionAspect = myDrawer->DimensionAspect();
Prs3d_Root::CurrentGroup (thePresentation)->SetPrimitivesAspect (aDimensionAspect->LineAspect()->Aspect());
@@ -126,7 +127,7 @@ void AIS_DiameterDimension::Compute (const Handle(PrsMgr_PresentationManager3d)&
countDefaultPlane();
}
drawLinearDimension (thePresentation, (AIS_DimensionDisplayMode)theMode);
drawLinearDimension (thePresentation, theMode);
}
//=======================================================================