@needle-tools/engine
Version:
Needle Engine is a web-based runtime for 3D apps. It runs on your machine for development with great integrations into editors like Unity or Blender - and can be deployed onto any device! It is flexible, extensible and networking and XR are built-in.
62 lines (61 loc) • 2.3 kB
TypeScript
import { Quaternion, Vector2, Vector3 } from "three";
import * as ThreeMeshUI from 'three-mesh-ui';
import { type DocumentedOptions as ThreeMeshUIEveryOptions } from "three-mesh-ui/build/types/core/elements/MeshUIBaseElement.js";
import { BaseUIComponent } from "./BaseUIComponent.js";
import { type IRectTransform, type IRectTransformChangedReceiver } from "./Interfaces.js";
export declare class Size {
width: number;
height: number;
}
export declare class Rect {
x: number;
y: number;
width: number;
height: number;
}
export declare class RectTransform extends BaseUIComponent implements IRectTransform, IRectTransformChangedReceiver {
get parent(): RectTransform | undefined;
get translation(): Vector3;
get rotation(): Quaternion;
get scale(): Vector3;
private _anchoredPosition;
get anchoredPosition(): Vector2;
private set anchoredPosition(value);
sizeDelta: Vector2;
pivot: Vector2;
anchorMin: Vector2;
anchorMax: Vector2;
/** Optional min width in pixel, set to undefined to disable it */
minWidth?: number;
/** Optional min height in pixel, set to undefined to disable it */
minHeight?: number;
get width(): number;
get height(): number;
private lastMatrix;
private rectBlock;
private _transformNeedsUpdate;
private _initialPosition;
private _parentRectTransform?;
private _lastUpdateFrame;
awake(): void;
onEnable(): void;
onDisable(): void;
onParentRectTransformChanged(comp: IRectTransform): void;
get isDirty(): boolean;
markDirty(): void;
/** Will update the transforms if it changed or is dirty */
updateTransform(): void;
private canUpdate;
private onApplyTransform;
private _lastAnchoring;
/** applies the position offset to the passed in vector */
private applyAnchoring;
/** applies the pivot offset to the passed in vector */
private applyPivot;
getBasicOptions(): ThreeMeshUIEveryOptions;
private ensureValidSize;
private _createdBlocks;
private _createdTextBlocks;
createNewBlock(opts?: ThreeMeshUIEveryOptions | object): ThreeMeshUI.Block;
createNewText(opts?: ThreeMeshUIEveryOptions | object): ThreeMeshUI.Block;
}