UNPKG

@deck.gl/core

Version:

deck.gl core library

125 lines 4.11 kB
import Controller from "./controller.js"; import ViewState from "./view-state.js"; import type Viewport from "../viewports/viewport.js"; import LinearInterpolator from "../transitions/linear-interpolator.js"; export type OrbitStateProps = { width: number; height: number; target?: number[]; zoom?: number | number[]; rotationX?: number; rotationOrbit?: number; /** Viewport constraints */ maxZoom?: number; minZoom?: number; minRotationX?: number; maxRotationX?: number; }; type OrbitStateInternal = { startPanPosition?: number[]; startRotatePos?: number[]; startRotationX?: number; startRotationOrbit?: number; startZoomPosition?: number[]; startZoom?: number | number[]; }; export declare class OrbitState extends ViewState<OrbitState, OrbitStateProps, OrbitStateInternal> { makeViewport: (props: Record<string, any>) => Viewport; constructor(options: OrbitStateProps & OrbitStateInternal & { makeViewport: (props: Record<string, any>) => Viewport; }); /** * Start panning * @param {[Number, Number]} pos - position on screen where the pointer grabs */ panStart({ pos }: { pos: [number, number]; }): OrbitState; /** * Pan * @param {[Number, Number]} pos - position on screen where the pointer is */ pan({ pos, startPosition }: { pos: [number, number]; startPosition?: number[]; }): OrbitState; /** * End panning * Must call if `panStart()` was called */ panEnd(): OrbitState; /** * Start rotating * @param {[Number, Number]} pos - position on screen where the pointer grabs */ rotateStart({ pos }: { pos: [number, number]; }): OrbitState; /** * Rotate * @param {[Number, Number]} pos - position on screen where the pointer is */ rotate({ pos, deltaAngleX, deltaAngleY }: { pos?: [number, number]; deltaAngleX?: number; deltaAngleY?: number; }): OrbitState; /** * End rotating * Must call if `rotateStart()` was called */ rotateEnd(): OrbitState; shortestPathFrom(viewState: OrbitState): OrbitStateProps; /** * Start zooming * @param {[Number, Number]} pos - position on screen where the pointer grabs */ zoomStart({ pos }: { pos: [number, number]; }): OrbitState; /** * Zoom * @param {[Number, Number]} pos - position on screen where the current target is * @param {[Number, Number]} startPos - the target position at * the start of the operation. Must be supplied of `zoomStart()` was not called * @param {Number} scale - a number between [0, 1] specifying the accumulated * relative scale. */ zoom({ pos, startPos, scale }: { pos: [number, number]; startPos?: [number, number]; scale: number; }): OrbitState; /** * End zooming * Must call if `zoomStart()` was called */ zoomEnd(): OrbitState; zoomIn(speed?: number): OrbitState; zoomOut(speed?: number): OrbitState; moveLeft(speed?: number): OrbitState; moveRight(speed?: number): OrbitState; moveUp(speed?: number): OrbitState; moveDown(speed?: number): OrbitState; rotateLeft(speed?: number): OrbitState; rotateRight(speed?: number): OrbitState; rotateUp(speed?: number): OrbitState; rotateDown(speed?: number): OrbitState; _unproject(pos?: number[]): number[] | undefined; _calculateNewZoom({ scale, startZoom }: { scale: number; startZoom?: number | number[]; }): number | number[]; _panFromCenter(offset: any): OrbitState; _getUpdatedState(newProps: any): OrbitState; applyConstraints(props: Required<OrbitStateProps>): Required<OrbitStateProps>; } export default class OrbitController extends Controller<OrbitState> { ControllerState: typeof OrbitState; transition: { transitionDuration: number; transitionInterpolator: LinearInterpolator; }; } export {}; //# sourceMappingURL=orbit-controller.d.ts.map