From 6cc7196c5739ee9c329ec5877627060c961b7468 Mon Sep 17 00:00:00 2001
From: Lucio Zambon <lucio.zambon@elettra.eu>
Date: Wed, 19 Feb 2025 00:06:03 +0000
Subject: [PATCH] Update panther2d.js

---
 panther2d.js | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

diff --git a/panther2d.js b/panther2d.js
index 4d0919f..2fda65d 100644
--- a/panther2d.js
+++ b/panther2d.js
@@ -124,20 +124,22 @@
 		const scalev = ($('#'+scaleprefix+'scalev').children().eq(1).children()[1].value-0)*cfactor;
 		const scalevunit = Math.ceil(Math.log10(scalev));
 		const scalevfactor = scalev/Math.pow(10, scalevunit);
+		const hfactor = scalehfactor<0.2? 5: (scalehfactor<0.5? 2: 1);
+		const vfactor = scalevfactor<0.2? 5: (scalevfactor<0.5? 2: 1);
 		console.log('scaleh', scaleh, 'scalehunit', scalehunit, 'scalehfactor', scalehfactor);
-		$('#redruler1').attr('y2', -10100*scalehfactor);
-		$('#greenruler1').attr('y2', 10100*scalevfactor);
+		$('#redruler1').attr('y2', -10100*scalehfactor*hfactor);
+		$('#greenruler1').attr('y2', 10100*scalevfactor*vfactor);
 		for (let i=0; i<=10; i++) {
-			const yh = (-i*1000*scalehfactor);
+			const yh = (-i*hfactor*1000*scalehfactor);
 			$('#redtick1'+(100-i)).attr('y1', yh);
 			$('#redtick1'+(100-i)).attr('y2', yh);
 			$('#redlabel'+(100-i)).attr('y', yh);
-			$('#redlabel'+(100-i)).html(i+units[scalehunit]);
-			const yv = (-i*1000*scalevfactor);
+			$('#redlabel'+(100-i)).html(i*hfactor+units[scalehunit]);
+			const yv = (-i*vfactor*1000*scalevfactor);
 			$('#greentick1'+(100-i)).attr('y1', -yv);
 			$('#greentick1'+(100-i)).attr('y2', -yv);
 			$('#greenlabel'+(100-i)).attr('y', -yv);
-			$('#greenlabel'+(100-i)).html(i+units[scalevunit]);
+			$('#greenlabel'+(100-i)).html(i*vfactor+units[scalevunit]);
 		}
 	}
 
-- 
GitLab