UNPKG

@speckle/viewer

Version:

A 3d viewer for Speckle, based on threejs.

40 lines (39 loc) 1.53 kB
import { BufferGeometry, Color, Mesh, Quaternion, Raycaster, Vector3, type Intersection } from 'three'; import { ObjectLayers, type SpeckleObject } from '../../IViewer.js'; export interface SpeckleTextParams { textValue?: string; richTextValue?: string; height?: number; anchorX?: string; anchorY?: string; } export interface SpeckleTextStyle { backgroundColor?: Color | null; backgroundCornerRadius?: number; backgroundPixelHeight?: number; textColor?: Color; billboard?: boolean; } export declare class SpeckleText extends Mesh { private _layer; private _text; private _background; private _backgroundSize; private _style; private _resolution; private defaultMaterial; private getFlatRaycastMesh; private getCurvedRaycastMesh; static SpeckleTextParamsFromMetadata(metadata: SpeckleObject): SpeckleTextParams; get textMesh(): Text; get backgroundMesh(): Mesh<BufferGeometry, import("three").Material | import("three").Material[]> | null; set style(value: SpeckleTextStyle); constructor(uuid: string, layer: ObjectLayers); update(params: SpeckleTextParams, updateFinished?: () => void): Promise<void>; setTransform(position?: Vector3, quaternion?: Quaternion, scale?: Vector3): void; raycast(raycaster: Raycaster, intersects: Array<Intersection>): void; private updateStyle; private updateBackground; /** From https://discourse.threejs.org/t/roundedrectangle-squircle/28645 */ private RectangleRounded; }