mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-08-09 13:22:24 +03:00
0027860: Visualization - clean up Transformation Persistence API
Graphic3d_Camera::TransformMatrices redundant NCollection_Handle usage has been replaced with validity flags. Graphic3d_TransModeFlags now defined as enumeration, not integer bit flags. Graphic3d_TMF_PanPers and Graphic3d_TMF_FullPers have been removed. Graphic3d_TMF_ZoomRotatePers has been introduced. Graphic3d_TransformPers is now inherits Standard_Transient. Graphic3d_TransformPers now defines dedicated constructors for 3D persistence (zoom / rotate) and 2D persistence (2d / trihedron). 2D persistence now supports dedicated values for X and Y offsets. The corner is now specified by enumeration Aspect_TypeOfTriedronPosition instead of indirect interpretation of anchor point values. Fixed handling of Graphic3d_TMF_ZoomRotatePers (combination of Graphic3d_TMF_RotatePers + Graphic3d_TMF_ZoomPers). PrsMgr_PresentableObject, Graphic3d_CStructure now hold Handle(Graphic3d_TransformPers) instead of a value. Method ::SetTransformPersistence(), ::TransformPersistence() now works with Handle(Graphic3d_TransformPers). Old methods have been marked deprecated.
This commit is contained in:
@@ -195,7 +195,7 @@ void StdSelect_ViewerSelector3d::DisplaySensitive (const Handle(V3d_View)& theVi
|
||||
{
|
||||
if (anObj->CurrentSelection()->GetSelectionState() == SelectMgr_SOS_Activated)
|
||||
{
|
||||
computeSensitivePrs (aStruct, anObj->CurrentSelection(), anObj->Transformation(), Graphic3d_TransformPers());
|
||||
computeSensitivePrs (aStruct, anObj->CurrentSelection(), anObj->Transformation(), Handle(Graphic3d_TransformPers)());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -247,7 +247,7 @@ void StdSelect_ViewerSelector3d::DisplaySensitive (const Handle(SelectMgr_Select
|
||||
|
||||
Handle(Graphic3d_Structure) aStruct = new Graphic3d_Structure (theView->Viewer()->StructureManager());
|
||||
|
||||
computeSensitivePrs (aStruct, theSel, theTrsf, Graphic3d_TransformPers());
|
||||
computeSensitivePrs (aStruct, theSel, theTrsf, Handle(Graphic3d_TransformPers)());
|
||||
|
||||
myStructs.Append (aStruct);
|
||||
myStructs.Last()->SetDisplayPriority (10);
|
||||
@@ -263,11 +263,9 @@ void StdSelect_ViewerSelector3d::DisplaySensitive (const Handle(SelectMgr_Select
|
||||
void StdSelect_ViewerSelector3d::computeSensitivePrs (const Handle(Graphic3d_Structure)& theStructure,
|
||||
const Handle(SelectMgr_Selection)& theSel,
|
||||
const gp_Trsf& theLoc,
|
||||
const Graphic3d_TransformPers& theTransPers)
|
||||
const Handle(Graphic3d_TransformPers)& theTrsfPers)
|
||||
{
|
||||
theStructure->SetTransformPersistence (theTransPers.Flags, gp_Pnt (theTransPers.Point.x(),
|
||||
theTransPers.Point.y(),
|
||||
theTransPers.Point.z()));
|
||||
theStructure->SetTransformPersistence (theTrsfPers);
|
||||
|
||||
Handle(Graphic3d_Group) aSensGroup = theStructure->NewGroup();
|
||||
|
||||
|
Reference in New Issue
Block a user