mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-08-19 13:40:49 +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,8 +195,7 @@ Standard_Integer AIS_MultipleConnectedInteractive::Signature() const
|
||||
//=======================================================================
|
||||
Handle(AIS_InteractiveObject) AIS_MultipleConnectedInteractive::Connect (const Handle(AIS_InteractiveObject)& theAnotherObj,
|
||||
const gp_Trsf& theTransformation,
|
||||
const Graphic3d_TransModeFlags& theTrsfPersFlag,
|
||||
const gp_Pnt& theTrsfPersPoint)
|
||||
const Handle(Graphic3d_TransformPers)& theTrsfPers)
|
||||
{
|
||||
if (myAssemblyOwner.IsNull())
|
||||
myAssemblyOwner = new SelectMgr_EntityOwner (this);
|
||||
@@ -234,9 +233,9 @@ Handle(AIS_InteractiveObject) AIS_MultipleConnectedInteractive::Connect (const H
|
||||
}
|
||||
|
||||
anObjectToAdd->SetLocalTransformation (theTransformation);
|
||||
if (theTrsfPersFlag != Graphic3d_TMF_None)
|
||||
if (!theTrsfPers.IsNull())
|
||||
{
|
||||
anObjectToAdd->SetTransformPersistence (theTrsfPersFlag, theTrsfPersPoint);
|
||||
anObjectToAdd->SetTransformPersistence (theTrsfPers);
|
||||
}
|
||||
AddChild (anObjectToAdd);
|
||||
return anObjectToAdd;
|
||||
@@ -248,9 +247,7 @@ Handle(AIS_InteractiveObject) AIS_MultipleConnectedInteractive::Connect (const H
|
||||
//=======================================================================
|
||||
Handle(AIS_InteractiveObject) AIS_MultipleConnectedInteractive::Connect (const Handle(AIS_InteractiveObject)& theAnotherObj)
|
||||
{
|
||||
return Connect (theAnotherObj, theAnotherObj->LocalTransformation(),
|
||||
theAnotherObj->GetTransformPersistenceMode(),
|
||||
theAnotherObj->GetTransformPersistencePoint());
|
||||
return Connect (theAnotherObj, theAnotherObj->LocalTransformation(), theAnotherObj->TransformPersistence());
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
@@ -260,9 +257,7 @@ Handle(AIS_InteractiveObject) AIS_MultipleConnectedInteractive::Connect (const H
|
||||
Handle(AIS_InteractiveObject) AIS_MultipleConnectedInteractive::Connect (const Handle(AIS_InteractiveObject)& theAnotherObj,
|
||||
const gp_Trsf& theTransformation)
|
||||
{
|
||||
return Connect (theAnotherObj, theTransformation,
|
||||
theAnotherObj->GetTransformPersistenceMode(),
|
||||
theAnotherObj->GetTransformPersistencePoint());
|
||||
return Connect (theAnotherObj, theTransformation, theAnotherObj->TransformPersistence());
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
|
Reference in New Issue
Block a user