import {AngleMeasurementsMouseControl} from '@xeokit/xeokit-sdk/src/plugins/AngleMeasurementsPlugin/AngleMeasurementsMouseControl.js'
AngleMeasurementsMouseControl
Extends:
Creates AngleMeasurements in an AngleMeasurementsPlugin from mouse input.
Usage
import {Viewer, XKTLoaderPlugin, AngleMeasurementsPlugin, AngleMeasurementsMouseControl, PointerLens} from "xeokit-sdk.es.js";
const viewer = new Viewer({
canvasId: "myCanvas",
});
viewer.camera.eye = [-3.93, 2.85, 27.01];
viewer.camera.look = [4.40, 3.72, 8.89];
viewer.camera.up = [-0.01, 0.99, 0.039];
const xktLoader = new XKTLoaderPlugin(viewer);
const sceneModel = xktLoader.load({
id: "myModel",
src: "Duplex.xkt"
});
const angleMeasurements = new AngleMeasurementsPlugin(viewer);
const angleMeasurementsMouseControl = new AngleMeasurementsMouseControl(angleMeasurements, {
pointerLens : new PointerLens(viewer)
})
angleMeasurementsMouseControl.snapping = true;
angleMeasurementsMouseControl.activate();
Constructor Summary
Public Constructor | ||
public |
constructor(angleMeasurementsPlugin: AngleMeasurementsPlugin, cfg: *) Creates a AngleMeasurementsMouseControl bound to the given AngleMeasurementsPlugin. |
Member Summary
Public Members | ||
public get |
Gets if this AngleMeasurementsMouseControl is currently active, where it is responding to input. |
|
public |
The AngleMeasurementsPlugin that owns this AngleMeasurementsMouseControl. |
|
public get |
Gets the AngleMeasurement under construction by this AngleMeasurementsMouseControl, if any. |
|
public |
markerDiv: * |
|
public |
The AngleMeasurementsPlugin that owns this AngleMeasurementsMouseControl. |
|
public |
pointerLens: * |
|
public set |
Sets whether snap-to-vertex and snap-to-edge are enabled for this AngleMeasurementsMouseControl. |
|
public get |
Gets whether snap-to-vertex and snap-to-edge are enabled for this AngleMeasurementsMouseControl. |
Method Summary
Public Methods | ||
public |
activate() Activates this AngleMeasurementsMouseControl, ready to respond to input. |
|
public |
Deactivates this AngleMeasurementsMouseControl, making it unresponsive to input. |
|
public |
destroy() Destroys this AngleMeasurementsMouseControl. |
|
public |
reset() Resets this AngleMeasurementsMouseControl. |
Inherited Summary
From class Component | ||
public get |
The Component that owns the lifecycle of this Component, if any. |
|
public |
True as soon as this Component has been destroyed |
|
public |
ID of this Component, unique within the Scene. |
|
public |
meta: * Arbitrary, user-defined metadata on this component. |
|
public |
The parent Scene that contains this Component. |
|
public |
The viewer that contains this Scene. |
|
public |
clear() Destroys all Components that are owned by this. |
|
public |
destroy() Destroys this component. |
|
public |
Logs an error for this component to the JavaScript console. |
|
public |
Fires an event on this component. |
|
public |
Returns true if there are any subscribers to the given event on this component. |
|
public |
Tests if this component is of the given type, or is a subclass of the given type. |
|
public |
Logs a console debugging message for this component. |
|
public |
Cancels an event subscription that was previously made with Component#on or Component#once. |
|
public |
Subscribes to an event on this component. |
|
public |
Subscribes to the next occurrence of the given event, then un-subscribes as soon as the event is subIdd. |
|
public |
scheduleTask(task: *) Schedule a task to perform on the next browser interval |
|
public |
Logs a warning for this component to the JavaScript console. |
From class AngleMeasurementsControl | ||
public get abstract |
Gets if this AngleMeasurementsControl is currently active, where it is responding to input. |
|
public get abstract |
Gets the AngleMeasurement under construction by this AngleMeasurementsControl, if any. |
|
public get |
Gets whether snap-to-vertex and snap-to-edge are enabled for this AngleMeasurementsControl. |
|
public set |
Sets whether snap-to-vertex and snap-to-edge are enabled for this AngleMeasurementsControl. |
|
public abstract |
activate() Activates this AngleMeasurementsMouseControl, ready to respond to input. |
|
public abstract |
Deactivates this AngleMeasurementsControl, making it unresponsive to input. |
|
public abstract |
destroy() Destroys this AngleMeasurementsMouseControl. |
|
public abstract |
reset() Resets this AngleMeasurementsControl. |
Public Constructors
public constructor(angleMeasurementsPlugin: AngleMeasurementsPlugin, cfg: *) source
Creates a AngleMeasurementsMouseControl bound to the given AngleMeasurementsPlugin.
Override:
Component#constructorParams:
Name | Type | Attribute | Description |
angleMeasurementsPlugin | AngleMeasurementsPlugin | The AngleMeasurementsPlugin to control. |
|
cfg | * |
|
Configuration |
cfg.canvasToPagePos | function |
|
Optional function to map canvas-space coordinates to page coordinates. |
cfg.pointerLens | PointerLens |
|
A PointerLens to use to provide a magnified view of the cursor when snapping is enabled. |
cfg.snapping | boolean |
|
Whether to initially enable snap-to-vertex and snap-to-edge for this AngleMeasurementsMouseControl. |
Public Members
public get active: boolean: * source
Gets if this AngleMeasurementsMouseControl is currently active, where it is responding to input.
Override:
AngleMeasurementsControl#activepublic angleMeasurementsPlugin: AngleMeasurementsPlugin source
The AngleMeasurementsPlugin that owns this AngleMeasurementsMouseControl.
public get currentMeasurement: null | AngleMeasurement: * source
Gets the AngleMeasurement under construction by this AngleMeasurementsMouseControl, if any.
public markerDiv: * source
public plugin: AngleMeasurementsPlugin source
The AngleMeasurementsPlugin that owns this AngleMeasurementsMouseControl.
public pointerLens: * source
public set snapping(snapping: boolean) source
Sets whether snap-to-vertex and snap-to-edge are enabled for this AngleMeasurementsMouseControl.
This is true
by default.
Override:
AngleMeasurementsControl#snappingpublic get snapping: boolean: * source
Gets whether snap-to-vertex and snap-to-edge are enabled for this AngleMeasurementsMouseControl.
This is true
by default.
Override:
AngleMeasurementsControl#snappingReturn:
boolean | Whether snap-to-vertex and snap-to-edge are enabled for this AngleMeasurementsMouseControl. |
Public Methods
public activate() source
Activates this AngleMeasurementsMouseControl, ready to respond to input.
Override:
AngleMeasurementsControl#activatepublic deactivate() source
Deactivates this AngleMeasurementsMouseControl, making it unresponsive to input.
Destroys any AngleMeasurement under construction by this AngleMeasurementsMouseControl.
Override:
AngleMeasurementsControl#deactivatepublic destroy() source
Destroys this AngleMeasurementsMouseControl.
Override:
AngleMeasurementsControl#destroypublic reset() source
Resets this AngleMeasurementsMouseControl.
Destroys any AngleMeasurement under construction by this AngleMeasurementsMouseControl.
Does nothing if the AngleMeasurementsMouseControl is not active.