I3d

模型基类

new YS.I3d(options)

3d模型基类
Name Type Description
options Object 对象有下面这些属性:
Name Type Default Description
id String optional 模型的唯一标识,如果为空,GUID自动生成
name String optional 模型名称
category String "" optional 模型分组
url String 模型地址
longitude Number 模型所在地理坐标的经度
latitude Number 模型所在地理坐标的纬度
altitude Number 0 optional 模型距离地面的高度
scaleX Number 1 optional 模型X轴缩放系数
scaleY Number 1 optional 模型Y轴缩放系数
scaleZ Number 1 optional 模型Z轴缩放系数
scale Number 1 optional 模型在原基础上的缩放系数
flattenEnable Boolean false optional 是否开启压平功能
flattenHeight Number 0.0 optional 压平高度
flattenSide Boolean true optional 压平区域外还是区域内(true代表区域内,false代表区域外)
flattenPolygon Array.<XYZ> optional 压平的区域, 相对模型位置的模型坐标区域([{x: ,y: ,z: }, {x: ,y: ,z: }, {x: ,y: ,z: }])
cutEnable Boolean false optional 是否开启裁剪功能
cutSide Boolean true optional 裁剪区域外还是区域内(true代表区域内,false代表区域外)
cutPolygon Array.<XYZ> optional 裁剪的区域, 相对模型位置的模型坐标区域([{x: ,y: ,z: }, {x: ,y: ,z: }, {x: ,y: ,z: }])
waterMarkEnable Boolean false optional 是否开启水印功能
waterMarkAlpha Number 1.0 optional 水印的透明度
waterMarkRect Array optional 水印的区域,[{x: ,y: ,z: }, {x: , y: , z: }]由两点组成的矩形区域,同样也是模型坐标区域
waterMarkImage String optional 水印的图片地址
Implements:
See:

Members

abstractreadonlyboundingSphere : BoundingSphere

获取模型的边界球, 模型开始加载后使用

category : String

获取或设置模型的分类.

readonlycenter : XYZ

获取模型的中心点, 模型开始加载后使用

abstractprotectedcontent : Object

获取模型挂接的内部数据

cutEnable : Boolean

获取或设置是否开启裁剪功能

cutPolygon : Array.<XYZ>

获取或设置裁剪区域

cutSide : Boolean

获取或设置裁剪区域内还是外

flattenEnable : Boolean

获取或设置是否开启压平

flattenHeight : Number

获取或设置是压平高度

flattenPolygon : Array.<XYZ>

获取或设置压平区域范围

flattenSide : Boolean

获取或设置压平区域内还是外

id : String

获取模型id
Implements:

abstractm2wMatrix : Matrix4

获取场景的模型矩阵,没有初始化时返回undefined

name : String

获取或设置模型名称
Implements:

abstractreadonlyready : Boolean

判断模型是不是加载完成

abstractreadonlyreadyPromise : Promise

模型加载的Promise

scale : Number

获取或设置模型的放大系数

scale : Number

获取或设置模型的放大系数

url : String

获取或设置模型的数据url.

abstractw2mMatrix : Matrix4

获取场景的世界转模型矩阵,没有初始化时返回undefined

waterMarkAlpha : Number

获取或设置水印的透明度

waterMarkEnable : Boolean

获取或设置是否开启水印

waterMarkImage : String

获取或设置水印的图片地址

waterMarkRect : Object

获取或设置水印的区域

Methods

abstractgetHeight(ys, xy)Number

从场景上获取一个点的高程
Name Type Description
ys YouScene YouScene对象
xy XY | XYZ 经纬度坐标点,单位度
Returns:
返回高程,单位米

abstractgetHeights(ys, array)Promise

从场景上获取一系列点的高程
Name Type Description
ys YouScene YouScene对象
array Array.<XY> | Array.<XYZ> 经纬度坐标点数组, 单位度
Returns:
返回处理委托,委托成功时参数是Array坐标点数组,单位经纬度和米
To Do:
  • 效果待测试验证

abstractgetModelCoordinate(world)XYZ

将世界坐标转成模型坐标
Name Type Description
world Cartesian3 世界坐标
Returns:
模型坐标

abstractgetWorldCoordinate(model)XYZ

将模型坐标转成世界坐标
Name Type Description
model XYZ | Cartesian3 模型坐标
Returns:
世界坐标

lookAt(ys, heading, pitch, range)

根据外接球查看完整的I3d场景
Name Type Default Description
ys YouScene ys对象
heading Number 0.0 optional 航向角,以弧度为单位。
pitch Number -0.5 optional 俯仰角(以弧度为单位)
range Number 0.0 optional 距场景中心的距离,以米为单位。

abstractpick(ys, windowPosition)I3d.PickPoint

从场景上获取一个碰撞点
Name Type Description
ys YouScene YouScene对象
windowPosition XY 屏幕坐标XY,左上角是{x: 0, y: 0}
Returns:
返回碰撞点的模型、世界、球面坐标

Type Definitions

YS.I3d.PickPoint

碰撞点

Events

load

模型开始加载事件