From b5fcd02b96d3da91c313557cb16f6acdbc5f9485 Mon Sep 17 00:00:00 2001 From: MARCHAND MANON Date: Tue, 15 Apr 2025 16:29:23 +0200 Subject: [PATCH] feat: add a rotationChanged event --- examples/al-zoomchanged.html | 4 ++++ src/js/Aladin.js | 5 +++-- src/js/View.js | 2 ++ 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/examples/al-zoomchanged.html b/examples/al-zoomchanged.html index 1d95f642..7695bf1b 100644 --- a/examples/al-zoomchanged.html +++ b/examples/al-zoomchanged.html @@ -17,6 +17,9 @@ aladin.on("zoomChanged", () => { console.log("zoomChanged") }) + aladin.on("rotationChanged", (rotation) => { + console.log("Rotation just changed to ", rotation); + }) aladin.on("positionChanged", ({ra, dec}) => { console.log('call to aladin', aladin.pix2world(300, 300)) console.log('positionChanged in icrs', ra, dec) @@ -25,6 +28,7 @@ aladin.gotoRaDec(0, 20); aladin.on('rightClickMove', (x, y) => { + aladin.setRotation(aladin.getRotation() + 2) console.log("right click move", x, y) }) }); diff --git a/src/js/Aladin.js b/src/js/Aladin.js index 0c4e6b97..908cfb06 100644 --- a/src/js/Aladin.js +++ b/src/js/Aladin.js @@ -225,14 +225,14 @@ import { Polyline } from "./shapes/Polyline"; */ /** - * @typedef {('select'|'objectsSelected'|'objectClicked'|'objectHovered'|'objectHoveredStop'|'footprintClicked'|'footprintHovered'|'positionChanged'|'zoomChanged'|'click'|'rightClickMove'|'mouseMove'|'wheelTriggered'|'fullScreenToggled'|'cooFrameChanged'|'resizeChanged'|'projectionChanged'|'layerChanged')} EventListener + * @typedef {('select'|'objectsSelected'|'objectClicked'|'objectHovered'|'objectHoveredStop'|'footprintClicked'|'footprintHovered'|'positionChanged'|'zoomChanged'|'rotationChanged'|'click'|'rightClickMove'|'mouseMove'|'wheelTriggered'|'fullScreenToggled'|'cooFrameChanged'|'resizeChanged'|'projectionChanged'|'layerChanged')} EventListener * * Some remarks: * */ @@ -2130,6 +2130,7 @@ export let Aladin = (function () { "positionChanged", "zoomChanged", + "rotationChanged", "click", "rightClickMove", diff --git a/src/js/View.js b/src/js/View.js index a8f4a7eb..19ea59ec 100644 --- a/src/js/View.js +++ b/src/js/View.js @@ -1543,6 +1543,8 @@ export let View = (function () { View.prototype.setRotation = function(rotation) { this.wasm.setRotation(rotation); + var rotationChangedCallback = this.aladin.callbacksByEventName["rotationChanged"]; + typeof rotationChangedCallback === "function" && rotationChangedCallback(rotation); } View.prototype.setGridOptions = function (options) {