From 3f7cad32f05a37a2427ab332a83eab560615a612 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Sun, 17 Jun 2012 12:58:11 +0200 Subject: [PATCH] Improved trim detection algorithm --- src/Mod/Ship/tankGZ/TaskPanel.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Mod/Ship/tankGZ/TaskPanel.py b/src/Mod/Ship/tankGZ/TaskPanel.py index 5408cb61f..a27b5a033 100644 --- a/src/Mod/Ship/tankGZ/TaskPanel.py +++ b/src/Mod/Ship/tankGZ/TaskPanel.py @@ -247,9 +247,9 @@ class TaskPanel: # Iterate looking stability point dVar = math.copysign(0.01, var) while True: - if (dVar*math.copysign(dVar, var) < 0.0): + if (dVar*var < 0.0) or (abs(var) < 0.1): break - trim = trim - math.copysign(dVar, var) + trim = trim - math.copysign(max(dVar, abs(var)/200.0), var) # Get center of gravity disp = self.computeDisplacement(trim) G = [disp[1], disp[2], disp[3]]