Variable draggersConst

draggers: IDraggersRegistry = ...

A draggers registry. Use this registry to register custom draggers.

To implement custom dragger:

  1. Define a dragger class implements IDragger.
  2. Define a constructor with a viewer parameter and add mouse event listeners for the specified viewer.
  3. Define the dragger logic in the event listeners. For example, listen for the mousemove event and zoom in/out when the left mouse button is pressed.
  4. Override IDragger.dispose and remove mouse event listeners from the viewer.
  5. Register dragger provider in the draggers registry by calling the draggers.registerDragger.
import { IDragger, draggers, Viewer } from "@inweb/viewer-visualize";

class MyDragger implements IDragger {
protected viewer: Viewer;

constructor(viewer: Viewer) {
this.viewer = viewer;
this.viewer.addEventListener("pointermove", this.onPointerMove);
}

override dispose() {
this.viewer.removeEventListener("pointermove", this.onPointerMove);
}

onPointerMove = (event: PointerEvent) => {
// place custom logic here
};
}

draggers.registerDragger("MyDragger", (viewer): IDragger => new MyDragger(viewer));
viewer.setActiveDragger("MyDragger");
MMNEPVFCICPMFPCPTTAAATR