From 38a4e312b0f8f6a626e606d18910098e568d4896 Mon Sep 17 00:00:00 2001 From: Justin Butler Date: Wed, 27 Jun 2007 22:08:27 +0000 Subject: [PATCH] fix to single axis scaling --- direct/src/directtools/DirectManipulation.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/direct/src/directtools/DirectManipulation.py b/direct/src/directtools/DirectManipulation.py index 855c5a1a16..24af957c9c 100644 --- a/direct/src/directtools/DirectManipulation.py +++ b/direct/src/directtools/DirectManipulation.py @@ -506,6 +506,10 @@ class DirectManipulationControl(DirectObject): # Reset fHitInitFlag self.fHitInit = 1 + # reset the scale of the scaling widget so the calls to + # getAxisIntersectPt calculate the correct distance + base.direct.widget.setScale(1,1,1) + # Scale factor is ratio current mag with init mag if self.constraint[:1] == 'x': currScale = Vec3(self.initScale.getX() * @@ -518,7 +522,7 @@ class DirectManipulationControl(DirectObject): elif self.constraint[:1] == 'z': currScale = Vec3(self.initScale.getX(), self.initScale.getY(), self.initScale.getZ() * self.objectHandles.getAxisIntersectPt('z').length() / self.initScaleMag) - + base.direct.widget.setScale(currScale) def scale3D(self, state):