mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-08-14 13:30:48 +03:00
0027536: Visualization - incorrect behavior of zoom persisted objects
1) Zoom persistence mode now fixes object in pixel coordinates and is independent on view size 2) Used gp_GTrsf instead of gp_Trsf SelectMgr_ViewerSelector to store Graphic3d_Mat4d 3) Zoom persisted objects changed behavior (become bigger) therefore test cases were updated according to new state. 4) Corrected scale for rectangular frustum Updated test for manipulator
This commit is contained in:
@@ -26,6 +26,7 @@
|
||||
#include <Standard_Boolean.hxx>
|
||||
#include <Graphic3d_ZLayerId.hxx>
|
||||
#include <PrsMgr_PresentableObjectPointer.hxx>
|
||||
#include <gp_GTrsf.hxx>
|
||||
#include <gp_Trsf.hxx>
|
||||
#include <PrsMgr_ListOfPresentableObjects.hxx>
|
||||
#include <MMgt_TShared.hxx>
|
||||
@@ -133,7 +134,7 @@ public:
|
||||
|
||||
const gp_Trsf& Transformation() const;
|
||||
|
||||
const gp_Trsf& InversedTransformation() const;
|
||||
const gp_GTrsf& InversedTransformation() const;
|
||||
|
||||
//! resets local transformation to identity.
|
||||
Standard_EXPORT virtual void ResetTransformation();
|
||||
@@ -288,7 +289,7 @@ private:
|
||||
PrsMgr_PresentableObjectPointer myParent;
|
||||
gp_Trsf myLocalTransformation;
|
||||
gp_Trsf myTransformation;
|
||||
gp_Trsf myInvTransformation;
|
||||
gp_GTrsf myInvTransformation;
|
||||
gp_Trsf myCombinedParentTransform;
|
||||
PrsMgr_ListOfPresentableObjects myChildren;
|
||||
|
||||
|
@@ -32,7 +32,7 @@ inline const gp_Trsf& PrsMgr_PresentableObject::Transformation() const
|
||||
return myTransformation;
|
||||
}
|
||||
|
||||
inline const gp_Trsf& PrsMgr_PresentableObject::InversedTransformation() const
|
||||
inline const gp_GTrsf& PrsMgr_PresentableObject::InversedTransformation() const
|
||||
{
|
||||
return myInvTransformation;
|
||||
}
|
||||
|
Reference in New Issue
Block a user