20 lines
729 B
JavaScript
20 lines
729 B
JavaScript
<script>
|
|
// JavaScript to update needle and speed text
|
|
function setSpeed(speed) {
|
|
// Clamp speed
|
|
speed = Math.max(0, Math.min(250, speed));
|
|
// Map speed to angle: 0 = -120deg, 250 = +120deg
|
|
var angle = -120 + (speed / 250) * 240;
|
|
var rad = angle * Math.PI / 180;
|
|
var r = 100; // needle length
|
|
var cx = 150, cy = 150;
|
|
var x2 = cx + r * Math.cos(rad);
|
|
var y2 = cy + r * Math.sin(rad);
|
|
document.getElementById('needle').setAttribute('x2', x2);
|
|
document.getElementById('needle').setAttribute('y2', y2);
|
|
document.getElementById('speedText').textContent = speed;
|
|
}
|
|
// Example: set speed to 120 after 1s
|
|
setTimeout(function(){ setSpeed(120); }, 1000);
|
|
// You can call setSpeed(value) from other JS code
|
|
</script> |