@glowjs/core
Version:
GlowJS数字孪生引擎核心库。
96 lines (95 loc) • 2.27 kB
TypeScript
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;
}