Appearance
模型地标图操作
目录
1. 添加模型地标图
引入版本:3.3 起支持
功能描述
在三维场景中添加模型地标图
调用方法
JavaScript
let jsonData = {
id: 'modelLayerId', // 模型对象图层 id,新建时调用者自己传入的唯一标识,用于各种操作的对象识别
coordType: 0, // XY 轴坐标类别,0:X 经度,Y 纬度;1:X 米,Y米,相对世界00点
coordTypeZ: 0, // Z 轴坐标类别,0:相对 3D 世界 0 海拔;1:相对 3D 世界地表;2:相对 3D 模型表面(单位:米)
snapSurface: 1, // 启用自动贴地。0:不贴地;1:贴地
alpha: 1, // 透明度,0:完全透明;1:完全不透明
modelMaxDistance: 15000, // 模型最大可见距离(单位:米),不可见后显示icon
iconMaxDistance: 100000, // icon最大可见距离(单位:米),不可见后隐藏
modelLandmarkDataId: '', // 对应本服务器上modelLandmark数据Id,如果找到id,则下方的data不起作用
isReferenceType: false, // 模型是引用类型还是复制类型,引用类型的对象占用更少的显存和绘制调用次数,但是端渲染无法自定义修改材质和粒子效果,且不支持设置单个实例的透明度,流渲染不支持关节和动画。默认是复制类型。false: 复制类型,true: 引用类型。
visible: true, // 添加当前图层时默认显示还是隐藏
legends: [
// 定义图层包含图例,支持为不同图例定义各自样式
{
name: 'legendName1', // 图层内图例名称,新建时调用者自己传入的唯一名称,用于各种操作的图例识别
modelType: 'Car01', // 模型类型
scale: 1, // 整体放缩倍数(单位:倍)
iconName: 'car', // 内置图标名称,或根据项目,在场景中预置好的图标对象的名称,包含文字样式定义,具体图标名称参考下表和下图
labelColor: '#ff0000', // 标签文本颜色,可选值,默认白色labelScale: 1, // 标签文本的缩放,默认值是1表示原大,0 - 1:表示缩小倍率,大于1:表示放大倍率
labelScale: 1, // 标签文本的缩放,默认值是1表示原大,0 - 1:表示缩小倍率,大于1:表示放大倍率
labelOffset: [0, 0, 2], // 标签文本的位置偏移,默认值是[0, 0, 0],表示相对于模型中心点的x、y、z偏移位置(单位:米)
labelBackgroundColor: '#333333', // 标签文本背景颜色,可选值,默认灰色
},
{
name: 'legendName2', // 图层内图例名称,新建时调用者自己传入的唯一名称,用于各种操作的图例识别
modelType: 'Car01', // 模型类型
scale: 1, // 整体放缩倍数(单位:倍)
iconName: 'car', // 内置图标名称,或根据项目,在场景中预置好的图标对象的名称,包含文字样式定义,具体图标名称参考下表和下图
labelColor: '#ff0000', // 标签文本颜色,可选值,默认白色labelScale: 1, // 标签文本的缩放,默认值是1表示原大,0 - 1:表示缩小倍率,大于1:表示放大倍率
labelScale: 1, // 标签文本的缩放,默认值是1表示原大,0 - 1:表示缩小倍率,大于1:表示放大倍率
labelOffset: [0, 0, 2], // 标签文本的位置偏移,默认值是[0, 0, 0],表示相对于模型中心点的x、y、z偏移位置(单位:米)
labelBackgroundColor: '#333333', // 标签文本背景颜色,可选值,默认灰色
},
],
data: [
// 定义图层可视化数据
{
id: '1', // 模型对象 id,新建时调用者自己传入的唯一标识,用于各种操作的对象识别
label: '小汽车', // 标签文本
coord: [-0.003855447482493446, 0.01919848867521523], // XY 轴坐标,X:经度;Y:纬度
coordZ: 100, // Z 轴高度(单位:米)
rotation: [0, 0, 0], // XYZ 三轴旋转度数 [偏航角(单位:角度,0正北, -360-360), 俯仰角(单位:角度,0水平, -360-360),翻滚角(单位:角度,0水平, -360-360)]
type: 'legendName1', // 模型图例类别
},
],
};
appInstance.uniCall('addModelLandmarkLayer', jsonData, (result) => {
console.log(result);
});参数描述
| 属性 | 类型 | 说明 | 端渲染 | 流渲染 |
|---|---|---|---|---|
| id | String | 图层对象 id,新建时调用者自己传入的唯一标识,用于各种操作的对象识别 | 支持 | 支持 |
| coordType | Number | XY 轴坐标类别,0:X 经度,Y 纬度;1:X 米,Y 米,相对世界 00 点 | 支持 | 支持 |
| coordTypeZ | Number | Z 轴坐标类别,0:相对 3D 世界 0 海拔;1:相对 3D 世界地表;2:相对 3D 模型表面(单位:米) | 支持 | 支持 |
| snapSurface | Number | 启用自动贴地。0:不贴地;1:贴地 | 支持 | 支持 |
| alpha | Number | 透明度,0:完全透明;1:完全不透明 | 支持 | 支持 |
| modelMaxDistance | Number | 模型最大可见距离(单位:米),不可见后显示 icon | 支持 | 支持 |
| iconMaxDistance | Number | icon 最大可见距离(单位:米),不可见后隐藏 | 支持 | 支持 |
| modelLandmarkDataId | String | 对应本服务器上 modelLandmark 数据 Id,如果找到 id,则下方的 data 不起作用 | 支持 | 支持 |
| visible | Boolean | 添加当前图层时默认显示还是隐藏 | 支持 | 支持 |
| isReferenceType | Boolean | 模型是引用类型还是复制类型,引用类型的对象占用更少的显存和绘制调用次数,但是端渲染无法自定义修改材质和粒子效果,且不支持设置单个实例的透明度,流渲染不支持关节和动画。默认是引用类型。false: 复制类型,true: 引用类型。 | 支持 | 不支持 |
| legends | Array | 定义图层包含图例,支持为不同图例定义各自样式 | 支持 | 支持 |
| legends[0].name | String | 图层内图例名称,新建时调用者自己传入的唯一名称,用于各种操作的图例识别 | 支持 | 支持 |
| legends[0].modelType | String | model(模型),building(建筑物),connection(关系线),iconModel(模型型号) | 支持 | 支持 |
| legends[0].scale | Number | 整体放缩倍数(单位:倍) | 支持 | 支持 |
| legends[0].iconName | String | 内置图标名称,或根据项目,在场景中预置好的图标对象的名称,包含文字样式定义,具体图标名称参考下表和下图 | 支持 | 支持 |
| legends[0].labelColor | String | 标签文本颜色,可选值,默认白色 | 支持 | 支持 |
| legends[0].labelScale | String | 标签文本的缩放,默认值是 1 表示原大,0 - 1:表示缩小倍率,大于 1:表示放大倍率 | 支持 | 不支持 |
| legends[0].labelOffset | String | 标签文本的位置偏移,默认值是[0, 0, 0],表示相对于模型中心点的 x、y、z 偏移位置(单位:米) | 支持 | 不支持 |
| legends[0].labelBackgroundColor | String | 标签文本背景颜色,可选值,默认灰色 | 支持 | 支持 |
| data | Array | 定义图层可视化数据 | 支持 | 支持 |
| data[0].id | String | 图层子对象 id,新建时调用者自己传入的唯一标识,用于各种操作的对象识别 | 支持 | 支持 |
| data[0].label | String | 标签文本 | 支持 | 支持 |
| data[0].coord | Array | XY 轴坐标,X:经度;Y:纬度 | 支持 | 支持 |
| data[0].coordZ | Number | Z 轴高度(单位:米) | 支持 | 支持 |
| data[0].rotation | Array | XYZ 三轴旋转度数 [偏航角(单位:角度,0 正北, -360-360), 俯仰角(单位:角度,0 水平, -360-360),翻滚角(单位:角度,0 水平, -360-360)] | 支持 | 支持 |
| data[0].type | String | 模型图例类别 | 支持 | 支持 |
回调数据
JSON
{
"result": 1,
"message": "成功。"
}回调数据参数描述
| 属性 | 类型 | 说明 |
|---|---|---|
| result | Number | 1:代表成功;0:代表失败 |
| message | String | 成功或者失败原因 |
具体内置图标名称(iconName)详情
| 图标类型 | 图标名称 |
|---|---|
| 市政设施 | camera |
| streetlamp | |
| manholecover | |
| sensor | |
| utilitypole | |
| transmission | |
| broadcast | |
| wifi | |
| firehydrant | |
| equipmentbox | |
| trafficlight | |
| charge | |
| gasstation | |
| wc | |
| dustbin | |
| 地点建筑 | trainstation |
| airport | |
| anchor | |
| government | |
| netpoint | |
| metro | |
| finance | |
| school | |
| hospital | |
| factory | |
| constructionsite | |
| residence | |
| mergencyshelter | |
| park | |
| diningroom | |
| warehouse | |
| store | |
| tollgate | |
| officebuilding | |
| busstation | |
| 人员 | people |
| policeman | |
| doctor | |
| specialpeople | |
| criminal | |
| 交通 | car |
| policecar | |
| fireengine | |
| ambulance | |
| taxi | |
| truck | |
| bus | |
| newscar | |
| militarycar | |
| municipal | |
| electriccar | |
| watercar | |
| train | |
| ship | |
| cargoship | |
| 飞行器 | airplane |
| helicopter | |
| uav | |
| satellite | |
| rocket | |
| 事件 | event_01 |
| event_03 | |
| event_03 | |
| 通用 | icon_01 |
| icon_02 | |
| icon_03 | |
| icon_04 | |
| 地名 | site_01 |
| site_02 | |
| site_03 |
具体内置图标名称(iconName)效果
![]()
2. 更新模型地标图数据
引入版本:3.3 起支持
功能描述
更新三维场景中添加模型地标图的数据
调用方法
JavaScript
let jsonData = {
id: 'modelLayerId', // 模型对象图层 id,新建时调用者自己传入的唯一标识,用于各种操作的对象识别
coordType: 0, // XY 轴坐标类别,0:X 经度,Y 纬度;1:X 米,Y米,相对世界00点
coordTypeZ: 0, // Z 轴坐标类别,0:相对 3D 世界 0 海拔;1:相对 3D 世界地表;2:相对 3D 模型表面(单位:米)
data: [
// 定义图层可视化数据
{
id: '1', // 模型对象 id,新建时调用者自己传入的唯一标识,用于各种操作的对象识别
label: '大汽车1', // 标签文本
coord: [-0.003855447482493446, 0.01919848867521523], // XY 轴坐标,X:经度;Y:纬度
coordZ: 500, // Z 轴高度(单位:米)
rotation: [0, 0, 0], // XYZ 三轴旋转度数 [偏航角(单位:角度,0正北, -360-360), 俯仰角(单位:角度,0水平, -360-360),翻滚角(单位:角度,0水平, -360-360)]
type: 'legendName1', // 模型图例类别
},
{
id: '2', // 模型对象 id,新建时调用者自己传入的唯一标识,用于各种操作的对象识别
label: '大汽车2', // 标签文本
coord: [-0.00685544748249356, 0.01719848867521634], // XY 轴坐标,X:经度;Y:纬度
coordZ: 500, // Z 轴高度(单位:米)
rotation: [0, 0, 0], // XYZ 三轴旋转度数 [偏航角(单位:角度,0正北, -360-360), 俯仰角(单位:角度,0水平, -360-360),翻滚角(单位:角度,0水平, -360-360)]
type: 'legendName2', // 模型图例类别
},
],
};
appInstance.uniCall('updateModelLandmarkLayerCoord', jsonData, (result) => {
console.log(result);
});参数描述
| 属性 | 类型 | 说明 |
|---|---|---|
| id | String | 图层对象 id,新建时调用者自己传入的唯一标识,用于各种操作的对象识别 |
| coordType | Number | XY 轴坐标类别,0:X 经度,Y 纬度;1:X 米,Y 米,相对世界 00 点 |
| coordTypeZ | Number | Z 轴坐标类别,0:相对 3D 世界 0 海拔;1:相对 3D 世界地表;2:相对 3D 模型表面(单位:米) |
| data | Array | 定义图层可视化数据 |
| data[0].id | String | 图层子对象 id,新建时调用者自己传入的唯一标识,用于各种操作的对象识别 |
| data[0].coord | Array | XY 轴坐标,X:经度;Y:纬度 |
| data[0].coordZ | Number | Z 轴高度(单位:米) |
| data[0].label | String | 标签文本 |
| data[0].rotation | Array | XYZ 三轴旋转度数 [偏航角(单位:角度,0 正北, -360-360), 俯仰角(单位:角度,0 水平, -360-360),翻滚角(单位:角度,0 水平, -360-360)] |
| data[0].type | String | 数据点图例类别 |
回调数据
JSON
{
"result": 1,
"message": "成功。"
}回调数据参数描述
| 属性 | 类型 | 说明 |
|---|---|---|
| result | Number | 1:代表成功;0:代表失败 |
| message | String | 成功或者失败原因 |
3. 更新模型地标图样式
引入版本:3.3 起支持
功能描述
更新三维场景中添加模型地标图的样式
调用方法
JavaScript
let jsonData = {
id: 'modelLayerId', // 模型对象图层 id,新建时调用者自己传入的唯一标识,用于各种操作的对象识别
alpha: 1, // 透明度,0:完全透明;1:完全不透明
modelMaxDistance: 15000, // 模型最大可见距离(单位:米),不可见后显示icon
iconMaxDistance: 100000, // icon最大可见距离(单位:米),不可见后隐藏
legends: [
// 定义图层包含图例,支持为不同图例定义各自样式
{
name: 'legendName1', // 图层内图例名称,新建时调用者自己传入的唯一名称,用于各种操作的图例识别
modelType: 'Car03', // 模型类型
scale: 1, // 整体放缩倍数(单位:倍)
iconName: 'camera', // 内置图标名称,或根据项目,在场景中预置好的图标对象的名称,包含文字样式定义,具体图标名称参考上表和上图
labelColor: '#000000', // 标签文本颜色,可选值,默认白色labelScale: 1, // 标签文本的缩放,默认值是1表示原大,0 - 1:表示缩小倍率,大于1:表示放大倍率
labelOffset: [0, 0, 2], // 标签文本的位置偏移,默认值是[0, 0, 0],表示相对于模型中心点的x、y、z偏移位置(单位:米)
labelBackgroundColor: '#ffff00', // 标签文本背景颜色,可选值,默认灰色
},
],
};
appInstance.uniCall('updateModelLandmarkLayerStyle', jsonData, (result) => {
console.log(result);
});参数描述
| 属性 | 类型 | 说明 | 端渲染 | 流渲染 |
|---|---|---|---|---|
| id | String | 图层对象 id,新建时调用者自己传入的唯一标识,用于各种操作的对象识别 | 支持 | 支持 |
| alpha | Number | 批号消批时间长度 | 支持 | 支持 |
| modelMaxDistance | Number | 模型最大可见距离(单位:米),不可见后显示 icon | 支持 | 支持 |
| iconMaxDistance | Number | icon 最大可见距离(单位:米),不可见后隐藏 | 支持 | 支持 |
| legends | Array | 定义图层包含图例,支持为不同图例定义各自样式 | 支持 | 支持 |
| legends[0].name | String | 图层内图例名称,新建时调用者自己传入的唯一名称,用于各种操作的图例识别 | 支持 | 支持 |
| legends[0].modelType | String | model(模型),building(建筑物),connection(关系线),iconModel(模型型号) | 支持 | 支持 |
| legends[0].scale | Number | 整体放缩倍数(单位:倍) | 支持 | 支持 |
| legends[0].iconName | String | 内置图标名称,或根据项目,在场景中预置好的图标对象的名称,包含文字样式定义,具体图标名称参考上表和上图 | 支持 | 支持 |
| legends[0].labelColor | String | 标签文本颜色,可选值,默认白色 | 支持 | 支持 |
| legends[0].labelScale | String | 标签文本的缩放,默认值是 1 表示原大,0 - 1:表示缩小倍率,大于 1:表示放大倍率 | 支持 | 不支持 |
| legends[0].labelOffset | String | 标签文本的位置偏移,默认值是[0, 0, 0],表示相对于模型中心点的 x、y、z 偏移位置(单位:米) | 支持 | 不支持 |
| legends[0].labelBackgroundColor | String | 标签文本背景颜色,可选值,默认灰色 | 支持 | 支持 |
回调数据
JSON
{
"result": 1,
"message": "成功。"
}回调数据参数描述
| 属性 | 类型 | 说明 |
|---|---|---|
| result | Number | 1:代表成功;0:代表失败 |
| message | String | 成功或者失败原因 |
4. 删除模型地标图
引入版本:3.0 起支持
功能描述
删除模型地标图
调用方法
JavaScript
let jsonData = {
id: 'modelLayerId', // 图层对象 id,新建时调用者自己传入的唯一标识,用于各种操作的对象识别
overlayType: 'modelLandmarkLayer', // 图层对象类别
};
appInstance.uniCall('removeOverlay', jsonData, (result) => {
console.log(result);
});参数描述
| 属性 | 类型 | 说明 |
|---|---|---|
| id | String | 图层对象 id,新建时调用者自己传入的唯一标识,用于各种操作的对象识别 |
| overlayType | String | 图层对象类别 |
回调数据
JSON
{
"result": 1,
"message": "成功。"
}回调数据参数描述
| 属性 | 类型 | 说明 |
|---|---|---|
| result | Number | 1:代表成功;0:代表失败 |
| message | String | 成功或者失败原因 |
流渲染效果图

端渲染效果图
