feat: add a rotationChanged event

This commit is contained in:
MARCHAND MANON
2025-04-15 16:29:23 +02:00
committed by Matthieu Baumann
parent 6c3aa0bf00
commit b5fcd02b96
3 changed files with 9 additions and 2 deletions

View File

@@ -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)
})
});

View File

@@ -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:
* <ul>
* <li>'select' is <b>deprecated</b>, please use objectsSelected instead.</li>
* <li>'mouseMove', 'click', 'wheelTriggered' are low level event listeners allowing the user to redefine basic functions. For example listening for 'wheelTriggered' will disable the default zooming heuristic then letting you to redefine it.</li>
* <li>'objectsSelected', 'objectClicked', 'objectHovered', 'objectHoveredStop', 'footprintClicked', 'footprintHovered' are triggered when a catalog source/footprint has been clicked, hovered, ...
* <li>Whenever the position (resp the fov) of the view has been changed 'positionChanged' (resp 'zoomChanged') is called</li>
* <li>Whenever the position (resp the fov/rotation) of the view has been changed 'positionChanged' (resp 'zoomChanged'/'rotationChanged') is called</li>
* </ul>
*/
@@ -2130,6 +2130,7 @@ export let Aladin = (function () {
"positionChanged",
"zoomChanged",
"rotationChanged",
"click",
"rightClickMove",

View File

@@ -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) {