/*! * Copyright (c) Microsoft Corporation. * Licensed under the MIT License. */ /// import { mat4, vec2, vec3, vec4 } from "gl-matrix"; import { AxesVisibility, Core, PickType } from "../main.js"; import { IAxesVisual } from "../components/axes/axes.js"; import { ITransitionBufferVisual } from "../buffer.js"; import { LabelSet, ILabelSetVisual } from "../components/labels.js"; import { IComponentVisual } from "../components/component.js"; import { Cartesian2dAxes } from "../components/axes/cartesian2d.js"; import { Cartesian3dAxes } from "../components/axes/cartesian3d.js"; import { DebugAxes } from "../components/debug.js"; import { Controller, IControllerVisual } from "../components/controller.js"; import { IImageVisual, ImageBase } from "../components/image.js"; import { IFontVisual, Font } from "../font.js"; export declare abstract class RendererConfig { reset(): void; } export interface IRendererOptionsBase { width?: number; height?: number; contextmenu?: boolean; } export declare abstract class RendererBase { protected _core: Core; protected _isInitialized: boolean; protected _options: IRendererOptionsBase; get isInitialized(): boolean; key: string; protected _canvas: HTMLCanvasElement; protected _config: RendererConfig; get config(): RendererConfig; protected _mvMatrices: mat4[]; mMatrix: mat4; mvMatrices: mat4[]; vMatrices: mat4[]; pMatrices: mat4[]; inverseVMatrices: mat4[]; inversePMatrices: mat4[]; transitionTime: number; protected _devicePixelRatio: number; get devicePixelRatio(): number; get width(): number; set width(value: number); get height(): number; set height(value: number); protected _viewports: DOMRect[]; protected _viewportOffset: number; protected _viewportCount: number; protected _webXRReferenceSpace: XRReferenceSpace; get webXRReferenceSpace(): XRReferenceSpace; private _resizeMinimumDelay; private _resizeElapsedTime; private _previousResizeWidth; private _previousResizeHeight; private _resizeWidth; private _resizeHeight; private _isResizing; isPickingEnabled: boolean; pickVMatrix: mat4; pickPMatrix: mat4; protected _pickedType: PickType; get pickedType(): PickType; protected _pickedId: number; get pickedId(): number; protected _isCapturingPickImage: boolean; get isCapturingPickImage(): boolean; capturePickImageCallback: (result: Uint8ClampedArray, width: number, height: number) => void; capturePickImage(): void; isLassoPicking: boolean; lassoX0: number; lassoX1: number; lassoY0: number; lassoY1: number; lassoThickness: number; lassoDashWidth: number; lassoColor: vec3; protected _lassoThickness: vec2; protected _lassoMMatrix: mat4; protected _backgroundColor: vec4; get backgroundColor(): vec4; set backgroundColor(value: vec4); protected _ambientColor: vec3; get ambientColor(): vec3; set ambientColor(value: vec3); protected _isAxes1Current: boolean; protected _axes1: IAxesVisual[]; protected _axes2: IAxesVisual[]; axesVisibility: AxesVisibility; get currentAxes(): IAxesVisual[]; set currentAxes(value: IAxesVisual[]); get previousAxes(): IAxesVisual[]; set previousAxes(value: IAxesVisual[]); swapAxes(): void; createCartesian2dAxesVisual(axes: Cartesian2dAxes): IAxesVisual; createCartesian3dAxesVisual(axes: Cartesian3dAxes): IAxesVisual; protected _debugAxes: DebugAxes; protected _debugAxesVisual: IComponentVisual; protected _createDebugAxesVisual(debugAxes: DebugAxes): IComponentVisual; areLabelsVisible: boolean; labelSets: ILabelSetVisual[]; createLabelSetVisual(labelSet: LabelSet): ILabelSetVisual; controllers: IControllerVisual[]; createControllerVisual(controller: Controller): IControllerVisual; createTransitionBuffer(ids: Uint32Array): ITransitionBufferVisual; transitionBuffers: ITransitionBufferVisual[]; areImagesVisible: boolean; images: IImageVisual[]; createImageVisual(image: ImageBase): IImageVisual; fonts: { [key: string]: IFontVisual; }; createFontVisual(font: Font): IFontVisual; sdfBuffer: number; sdfBackgroundColor: vec3; constructor(options?: IRendererOptionsBase); abstract get isSupported(): boolean; get isWebXRSupported(): boolean; initialize(core: Core): void; remove(): void; finalize(): void; setSize(elapsedTime: number): void; protected _resize(width: number, height: number): void; update(elapsedTime: number): void; getVertexPosition(position: vec3, pickedId: number): void; render(elapsedTime: number, xrFrame?: XRFrame): Promise; prepare(xrFrame?: XRFrame): void; initializeWebXR(session: XRSession): Promise; }