@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.
55 lines (54 loc) • 2.04 kB
TypeScript
import { Material, Object3D } from "three";
import type { IUSDExporterExtension } from "../Extension.js";
import type { IBehaviorElement } from "../extensions/behavior/BehavioursBuilder.js";
import { USDDocument, USDObject, USDWriter, USDZExporterContext } from "../ThreeUSDZExporter.js";
export declare enum TextWrapMode {
singleLine = "singleLine",
hardBreaks = "hardBreaks",
flowing = "flowing"
}
export declare enum HorizontalAlignment {
left = "left",
center = "center",
right = "right",
justified = "justified"
}
export declare enum VerticalAlignment {
top = "top",
middle = "middle",
lowerMiddle = "lowerMiddle",
baseline = "baseline",
bottom = "bottom"
}
export declare class USDZText implements IBehaviorElement {
static global_id: number;
static getId(): number;
id: string;
content: string;
font?: string[];
pointSize: number;
width?: number;
height?: number;
depth?: number;
wrapMode?: TextWrapMode;
horizontalAlignment?: HorizontalAlignment;
verticalAlignment?: VerticalAlignment;
material?: Material;
setDepth(depth: number): USDZText;
setPointSize(pointSize: number): USDZText;
setHorizontalAlignment(align: HorizontalAlignment): this;
setVerticalAlignment(align: VerticalAlignment): this;
constructor(id: string);
writeTo(_document: USDDocument | undefined, writer: USDWriter): void;
}
export declare class TextBuilder {
static singleLine(str: string, pointSize?: number, depth?: number): USDZText;
static multiLine(str: string, width: number, height: number, horizontal: HorizontalAlignment, vertical: VerticalAlignment, wrapMode?: TextWrapMode): USDZText;
}
export declare class TextExtension implements IUSDExporterExtension {
get extensionName(): string;
exportText(object: Object3D, newModel: USDObject, _context: USDZExporterContext): void;
private convertToTextSize;
private setOverflow;
private setTextAlignment;
}