UNPKG

@glowjs/core

Version:

GlowJS数字孪生引擎核心库。

96 lines (95 loc) 2.27 kB
import { App } from '../core/App'; import { Corner } from './Corner'; import { DoorWindow } from './DoorWindow'; import { Entity } from './Entity'; import { Point3D } from '../misc/Point3D'; /** * 墙基类 */ export declare class Wall extends Entity { /** * 默认高度 */ static defaultHeight: number; /** * 默认厚度 */ static defaultThickness: number; protected _startCorner: Corner; protected _endCorner: Corner; protected _height: number; protected _thickness: number; /** * 实例化一个墙对象 * @param app 应用 */ constructor(app: App); /** * 获取或设置高度 */ get height(): number; set height(value: number); /** * 获取或设置厚度 */ get thickness(): number; set thickness(value: number); /** * 获取或设置开始墙角 */ get startCorner(): Corner; set startCorner(value: Corner); /** * 获取或设置结束墙角 */ get endCorner(): Corner; set endCorner(value: Corner); /** * 获取实例类型 */ get instanceClass(): any; /** * 获取门窗 */ get doorWindows(): DoorWindow[]; /** * 获取墙的长度 */ get length(): number; /** * 获取旋转的角度(Z轴正向到当前墙的逆时针角度),取值范围[0,360) */ get angle(): number; /** * 计算包围盒 */ computeBoundingInfo(): void; /** * 序列化成JSON对象 */ toJson(): any; /** * 从JSON对象反序列化(仅生成层级树) * @param json JSON对象 */ fromJson(json: any): void; /** * 创建(仅当前层级可见对象) * @param force 是否强制 */ build(force?: boolean): Promise<void>; /** * 设置子节点列表 */ setSubNodes(): void; /** * 获取另一个墙角 * @param corner */ getOtherCorner(corner: Corner): Corner | null; /** * 世界坐标转开始墙点参考系坐标 * @param world 世界坐标 */ worldToStartCorner(world: Point3D): Point3D; }