Summary
Methods:
getActiveSceneIndex |
获取激活的场景模型索引 |
getBBox |
获取包围盒,注意:包围盒可能比实际数据范围大 |
getChildren |
获取所有Node节点 |
getId |
获取模型唯一标识 |
modelToWorld |
将模型从模型原点先缩放后旋转再平移到世界坐标系下指定的位置。转换结果不叠加。以最后一次为准。 |
resetOrigin |
校正原点,将整个模型的bbox某一个面(xoy,xoz,yox)的中心点校正到建模的原点。 |
setActiveSceneIndex |
设置激活的场景模型索引 |
setHighlight |
高亮当前模型的mesh。 |
setPosition |
设置模型位置,即设置模型原点在地图上的地理坐标。 |
setRotate |
设置模型的旋转量。 |
setScale |
设置模型的缩放量。 |
setTranslate |
相对于模型之前位置的平移量。 |
Constructor
new GLTF(url, options)
Gltf构造函数
Parameters:
Name | Type | Description | ||||||
---|---|---|---|---|---|---|---|---|
url |
String | 模型文件的地址,后缀为.gltf或.glb。 |
||||||
options |
Object | 可选项
|
Example
let gltf=new hmap.model.GLTF('./example.gltf');
Methods
-
getActiveSceneIndex() → {Number}
-
获取激活的场景模型索引
Returns:
Number -
getBBox() → {module:basetype~BBox}
-
获取包围盒,注意:包围盒可能比实际数据范围大
Returns:
module:basetype~BBox -
getChildren() → {Array}
-
获取所有Node节点
Returns:
Array -
getId()
-
获取模型唯一标识
Returns:
-id 模型唯一标识
-
modelToWorld(matrix)
-
将模型从模型原点先缩放后旋转再平移到世界坐标系下指定的位置。转换结果不叠加。以最后一次为准。
Parameters:
Name Type Description matrix
Object Name Type Description scale
Array 模型在xyz方向上的缩放因子
rotate
Array 模型绕xyz轴的旋转角度,单位为度
translate
Array 模型在xyz方向上的平移距离,单位与地图单位保持一致
Example
model.modelToWorld({ scale:[1,1,1], rotate:[0,0,0], translate:[0,0,0] })
-
resetOrigin(up)
-
校正原点,将整个模型的bbox某一个面(xoy,xoz,yox)的中心点校正到建模的原点。
Parameters:
Name Type Description up
String 模型的上方向,取值范围为X,Y,Z或者为空,默认为空,会将模型bbox的中心点校正到建模坐标的原点。默认值为空为了兼容以前版本,很多模型在导出时会选择上方向为'Y',当模型展示异常时可以尝试上方向为'Y'.
-
setActiveSceneIndex(value)
-
设置激活的场景模型索引
Parameters:
Name Type Description value
Number -
setHighlight(flag, color)
-
高亮当前模型的mesh。
Parameters:
Name Type Description flag
Boolean 选中设置true;不选中设置false。
color
Color 高亮颜色
Throws:
当参数flag既不是true,也不为false时,抛出参数类型异常。
Example
gltf.setHighlight(true,new hmap.style.Color(255,0,0,1));
-
setPosition(positionX, positionY, positionZ) → {module:model~GLTF}
-
设置模型位置,即设置模型原点在地图上的地理坐标。
Parameters:
Name Type Description positionX
Number X值
positionY
Number Y值
positionZ
Number Z值
Example
model.setPosition(120.2187, 30.21259, 0);
-
setRotate(rotateX, rotateY, rotateZ) → {module:model~GLTF}
-
设置模型的旋转量。
Parameters:
Name Type Description rotateX
Number X轴旋转分量
rotateY
Number Y轴旋转分量
rotateZ
Number Z轴旋转分量
Example
model.setRotate(90, 25, 0);
-
setScale(scaleX, scaleY, scaleZ) → {module:model~GLTF}
-
设置模型的缩放量。
Parameters:
Name Type Description scaleX
Number X轴缩放分量
scaleY
Number Y轴缩放分量
scaleZ
Number Z轴缩放分量
Example
model.setScale(0.0015, 0.0015, 0.0015);
-
setTranslate(translateX, translateY, translateZ) → {module:model~GLTF}
-
相对于模型之前位置的平移量。
Parameters:
Name Type Description translateX
Number X轴平移分量
translateY
Number Y轴平移分量
translateZ
Number Z轴平移分量
Example
model.setTranslate(120.2187, 30.21259, 0);