Appearance
网格体操作
目录
1. 添加网格体
引入版本:3.6.4 起支持
功能描述
在三维场景中添加网格体
调用方法
JavaScript
let jsonData = {
id: 'mesh',
colorAlpha: 0.5,
outline: true,
outlineColor: '#ffffff',
type: 'water',
texture: 'surfaceimage.png',
textureSpeed: 0,
textureDirection: 35,
labelColor: '#ffffff',
labelScale: 1,
legends: [
{
name: 'legendName1',
minValue: 0,
maxValue: 100,
waterAlpha: 0.9,
color: '#ff0000',
},
{
name: 'legendName2',
minValue: 0,
maxValue: 100,
waterAlpha: 0.9,
color: '#00ff00',
},
{
name: 'legendName3',
minValue: 0,
maxValue: 100,
waterAlpha: 0.9,
color: '#0000ff',
},
],
coordType: 0,
coordTypeZ: 0,
points: [
[114, 30, 60],
[115, 30, 60],
[114, 40, 60],
[115, 40, 60],
],
mesh: [
[1, 2, 3],
[0, 1, 2],
],
meshValue: [99, 100],
meshLabel: ['label1', 'label2'],
};
appInstance.uniCall('addMesh', jsonData, (result) => {
console.log(result);
});参数描述
| 属性 | 类型 | 说明 | 端渲染 | 流渲染 |
|---|---|---|---|---|
| id | String | 图层对象 id,更新时调用者自己传入的唯一标识 | 支持 | 支持 |
| colorAlpha | Number | 网格体材质中 Color 的透明度,0:完全透明;1:完全不透明 | 支持 | 支持 |
| outline | Boolean | 是否显示描边 | 支持 | 支持 |
| outlineColor | String | 描边颜色 | 支持 | 支持 |
| type | String | 网格体材质类型,"water": 水材质, "texture": 贴图,"onlyColor": 只有颜色填充,"waterAndColor":水和颜色,"textureAndColor":贴图和颜色 | 支持 | 支持 |
| texture | String | 网格体贴图名称,只有当 type 为 texture 的类型,使用这个图片做为网格体表面的贴图。端渲染:在场景中预置好的图片名称或外部图片 url,流渲染:服务器应用目录里的资源图片或者外部图片 url。 | 支持 | 支持 |
| textureSpeed | Number | 网格体 water 或者材质动画速度,默认:0,0 为不运动。(单位:米/秒)负数为反方向 | 支持 | 支持 |
| textureDirection | Number | 网格体 water 或者材质动画方向,单位:角度,0 正北, -360~360 | 支持 | 支持 |
| labelColor | String | 标签文本颜色,可选值,默认白色。 | 不支持 | 支持 |
| labelScale | String | 标签文本的缩放,默认值是 1 表示原大,0-1:表示缩小倍率,大于 1:表示放大倍率。 | 不支持 | 支持 |
| legends | Array | 定义图层包含图例,支持为不同图例定义各自样式 | 支持 | 支持 |
| legends[0].name | String | 图层内图例名称,新建时调用者自己传入的唯一名称,用于各种操作的图例识别 | 支持 | 支持 |
| legends[0].minValue | Number | 数值最小值(不包括) | 支持 | 支持 |
| legends[0].maxValue | Number | 数值最大值(包括) | 支持 | 支持 |
| legends[0].waterAlpha | Number | 网格体材质是水时的水的透明度,可以表达水的深浅 | 支持 | 支持 |
| legends[0].color | String | 颜色(HEX 颜色值) | 支持 | 支持 |
| coordType | Number | XY 轴坐标类别,0:X 经度,Y 纬度;1:X 米,Y 米,相对世界 00 点 | 支持 | 支持 |
| coordTypeZ | Number | Z 轴坐标类别,0:相对 3D 世界 0 海拔;1:相对 3D 世界地表;2:相对 3D 模型表面(单位:米) | 支持 | 支持 |
| points | Array | 所有需要的顶点数据。每个数组由 X、Y、Z 组成 | 支持 | 支持 |
| points[0] | Array | index:0 | 支持 | 支持 |
| points[1] | Array | index:1 | 支持 | 支持 |
| points[2] | Array | index:2 | 支持 | 支持 |
| points[3] | Array | index:3 | 支持 | 支持 |
| mesh | Array | 每个网格体对应的顶点 index | 支持 | 支持 |
| mesh[0] | Array | 网格体 index:0,对应 points 数组里的 index:1,2,3 | 支持 | 支持 |
| mesh[1] | Array | 网格体 index:1,对应 points 数组里的 index:0,1,2 | 支持 | 支持 |
| meshValue | Array | 每个网格体对应的值,会使用 value 对应的 legend 着色 | 支持 | 支持 |
| meshValue[0] | Number | 网格体 index:0,对应的值 | 支持 | 支持 |
| meshValue[1] | Number | 网格体 index:1,对应的值 | 支持 | 支持 |
| meshLabel | Array | 每个网格体对应的标签,会显示到网格体中心位置。网格体如果不选中没有 label。网格的选中分为 element 和 node ,element 选中后会显示 label,node 不显示 label 。单选 pickOverlay 接口只支持设置 overlayType 为 element;框选 selectOverlay 接口支持设置 overlayType 为 element 和 node。 | 不支持 | 支持 |
| meshLabel[0] | String | 网格体 index:0,对应的标签 | 不支持 | 支持 |
| meshLabel[1] | String | 网格体 index:1,对应的标签 | 不支持 | 支持 |
回调数据
JSON
{
"result": 1,
"message": "成功。"
}回调数据参数描述
| 属性 | 类型 | 说明 |
|---|---|---|
| result | Number | 1:代表成功;0:代表失败 |
| message | String | 成功或者失败原因 |
2. 更新网格体样式
引入版本:3.6.4 起支持
功能描述
更新三维场景中网格体样式
调用方法
JavaScript
let jsonData = {
id: 'mesh',
colorAlpha: 0.5,
outline: true,
outlineColor: '#ffffff',
type: 'water',
texture: 'surfaceimage.png',
textureSpeed: 0,
textureDirection: 35,
labelColor: '#ffffff',
labelScale: 1,
legends: [
{
name: 'legendName1',
minValue: 0,
maxValue: 100,
waterAlpha: 0.9,
color: '#ff0000',
},
{
name: 'legendName2',
minValue: 0,
maxValue: 100,
waterAlpha: 0.9,
color: '#00ff00',
},
{
name: 'legendName3',
minValue: 0,
maxValue: 100,
waterAlpha: 0.9,
color: '#0000ff',
},
],
};
appInstance.uniCall('updateMeshStyle', jsonData, (result) => {
console.log(result);
});参数描述
| 属性 | 类型 | 说明 | 端渲染 | 流渲染 |
|---|---|---|---|---|
| id | String | 图层对象 id,更新时调用者自己传入的唯一标识 | 支持 | 支持 |
| colorAlpha | Number | 网格体材质中 Color 的透明度,0:完全透明;1:完全不透明 | 支持 | 支持 |
| outline | Boolean | 是否显示描边 | 支持 | 支持 |
| outlineColor | String | 描边颜色 | 支持 | 支持 |
| type | String | 网格体材质类型,"water": 水材质, "texture": 贴图,"onlyColor": 只有颜色填充,"waterAndColor":水和颜色,"textureAndColor":贴图和颜色 | 支持 | 支持 |
| texture | String | 网格体贴图名称,只有当 type 为 texture 的类型,使用这个图片做为网格体表面的贴图。端渲染:在场景中预置好的图片名称或外部图片 url,流渲染:服务器应用目录里的资源图片或者外部图片 url。 | 支持 | 支持 |
| textureSpeed | Number | 网格体 water 或者材质动画速度,默认:0,0 为不运动。(单位:米/秒)负数为反方向 | 支持 | 支持 |
| textureDirection | Number | 网格体 water 或者材质动画方向,单位:角度,0 正北, -360~360 | 支持 | 支持 |
| labelColor | String | 标签文本颜色,可选值,默认白色。 | 不支持 | 支持 |
| labelScale | String | 标签文本的缩放,默认值是 1 表示原大,0-1:表示缩小倍率,大于 1:表示放大倍率。 | 不支持 | 支持 |
| legends | Array | 定义图层包含图例,支持为不同图例定义各自样式 | 支持 | 支持 |
| legends[0].name | String | 图层内图例名称,新建时调用者自己传入的唯一名称,用于各种操作的图例识别 | 支持 | 支持 |
| legends[0].minValue | Number | 数值最小值(不包括) | 支持 | 支持 |
| legends[0].maxValue | Number | 数值最大值(包括) | 支持 | 支持 |
| legends[0].waterAlpha | Number | 网格体材质是水时的水的透明度,可以表达水的深浅 | 支持 | 支持 |
| legends[0].color | String | 颜色(HEX 颜色值) | 支持 | 支持 |
回调数据
JSON
{
"result": 1,
"message": "成功。"
}回调数据参数描述
| 属性 | 类型 | 说明 |
|---|---|---|
| result | Number | 1:代表成功;0:代表失败 |
| message | String | 成功或者失败原因 |
3. 更新网格体顶点高度
引入版本:3.6.4 起支持
功能描述
更新三维场景中网格体顶点高度
调用方法
JavaScript
let jsonData = {
id: 'mesh',
coordTypeZ: 0,
pointsZ: [61, 62, 60, 62],
};
appInstance.uniCall('updateMeshPointsZ', jsonData, (result) => {
console.log(result);
});参数描述
| 属性 | 类型 | 说明 |
|---|---|---|
| id | String | 图层对象 id,更新时调用者自己传入的唯一标识 |
| coordTypeZ | Number | Z 轴坐标类别,0:相对 3D 世界 0 海拔;1:相对 3D 世界地表;2:相对 3D 模型表面(单位:米) |
| pointsZ | Array | 所有需要的顶点数据。每个数组由 X、Y、Z 组成 |
| pointsZ[0] | Number | index:0,点的高度 |
| pointsZ[1] | Number | index:1,点的高度 |
| pointsZ[2] | Number | index:2,点的高度 |
| pointsZ[3] | Number | index:3,点的高度 |
回调数据
JSON
{
"result": 1,
"message": "成功。"
}回调数据参数描述
| 属性 | 类型 | 说明 |
|---|---|---|
| result | Number | 1:代表成功;0:代表失败 |
| message | String | 成功或者失败原因 |
4. 更新网格体数值
引入版本:3.6.4 起支持
功能描述
更新三维场景中网格体数值
调用方法
JavaScript
let jsonData = {
id: 'mesh',
meshValue: [99, 100],
meshLabel: ['label1', 'label2'],
};
appInstance.uniCall('updateMeshValue', jsonData, (result) => {
console.log(result);
});参数描述
| 属性 | 类型 | 说明 | 端渲染 | 流渲染 |
|---|---|---|---|---|
| id | String | 图层对象 id,更新时调用者自己传入的唯一标识 | 支持 | 支持 |
| meshValue | Array | 每个网格体对应的值,会使用 value 对应的 legend 着色 | 支持 | 支持 |
| meshValue[0] | Number | 网格体 index:0,对应的值 | 支持 | 支持 |
| meshValue[1] | Number | 网格体 index:1,对应的值 | 支持 | 支持 |
| meshLabel | Array | 每个网格体对应的标签,会显示到网格体中心位置。网格体如果不选中没有 label。网格的选中分为 element 和 node ,element 选中后会显示 label,node 不显示 label 。单选 pickOverlay 接口只支持设置 overlayType 为 element;框选 selectOverlay 接口支持设置 overlayType 为 element 和 node。 | 不支持 | 支持 |
| meshLabel[0] | String | 网格体 index:0,对应的标签 | 不支持 | 支持 |
| meshLabel[1] | String | 网格体 index:1,对应的标签 | 不支持 | 支持 |
回调数据
JSON
{
"result": 1,
"message": "成功。"
}回调数据参数描述
| 属性 | 类型 | 说明 |
|---|---|---|
| result | Number | 1:代表成功;0:代表失败 |
| message | String | 成功或者失败原因 |
5. 添加网格体 SHP
引入版本:3.6.4 起支持
功能描述
在三维场景中添加网格体 SHP
调用方法
JavaScript
let jsonData = {
id: 'mesh',
colorAlpha: 0.5,
outline: true,
outlineColor: '#ffffff',
type: 'water',
texture: 'surfaceimage.png',
textureSpeed: 0,
textureDirection: 35,
labelColor: '#ffffff',
labelScale: 1,
legends: [
{
name: 'legendName1',
minValue: 0,
maxValue: 100,
waterAlpha: 0.9,
color: '#ff0000',
},
{
name: 'legendName2',
minValue: 0,
maxValue: 100,
waterAlpha: 0.9,
color: '#00ff00',
},
{
name: 'legendName3',
minValue: 0,
maxValue: 100,
waterAlpha: 0.9,
color: '#0000ff',
},
],
coordType: 0,
coordTypeZ: 0,
shpPath: 'http://tuguan.net/test.shp',
point1ZField: 'point1Z',
point2ZField: 'point2Z',
point3ZField: 'point3Z',
meshValueField: 'value',
meshLabelField: 'name',
};
appInstance.uniCall('addMeshSHP', jsonData, (result) => {
console.log(result);
});参数描述
| 属性 | 类型 | 说明 | 端渲染 | 流渲染 |
|---|---|---|---|---|
| id | String | 图层对象 id,更新时调用者自己传入的唯一标识 | 支持 | 支持 |
| colorAlpha | Number | 网格体材质中 Color 的透明度,0:完全透明;1:完全不透明 | 支持 | 支持 |
| outline | Boolean | 是否显示描边 | 支持 | 支持 |
| outlineColor | String | 描边颜色 | 支持 | 支持 |
| type | String | 网格体材质类型,"water": 水材质, "texture": 贴图,"onlyColor": 只有颜色填充,"waterAndColor":水和颜色,"textureAndColor":贴图和颜色 | 支持 | 支持 |
| texture | String | 网格体贴图名称,只有当 type 为 texture 的类型,使用这个图片做为网格体表面的贴图。端渲染:在场景中预置好的图片名称或外部图片 url,流渲染:服务器应用目录里的资源图片或者外部图片 url。 | 支持 | 支持 |
| textureSpeed | Number | 网格体 water 或者材质动画速度,默认:0,0 为不运动。(单位:米/秒)负数为反方向 | 支持 | 支持 |
| textureDirection | Number | 网格体 water 或者材质动画方向,单位:角度,0 正北, -360~360 | 支持 | 支持 |
| labelColor | String | 标签文本颜色,可选值,默认白色。 | 不支持 | 支持 |
| labelScale | String | 标签文本的缩放,默认值是 1 表示原大,0-1:表示缩小倍率,大于 1:表示放大倍率。 | 不支持 | 支持 |
| legends | Array | 定义图层包含图例,支持为不同图例定义各自样式 | 支持 | 支持 |
| legends[0].name | String | 图层内图例名称,新建时调用者自己传入的唯一名称,用于各种操作的图例识别 | 支持 | 支持 |
| legends[0].minValue | Number | 数值最小值(不包括) | 支持 | 支持 |
| legends[0].maxValue | Number | 数值最大值(包括) | 支持 | 支持 |
| legends[0].waterAlpha | Number | 网格体材质是水时的水的透明度,可以表达水的深浅 | 支持 | 支持 |
| legends[0].color | String | 颜色(HEX 颜色值) | 支持 | 支持 |
| coordType | Number | XY 轴坐标类别,0:X 经度,Y 纬度;1:X 米,Y 米,相对世界 00 点 | 支持 | 支持 |
| coordTypeZ | Number | Z 轴坐标类别,0:相对 3D 世界 0 海拔;1:相对 3D 世界地表;2:相对 3D 模型表面(单位:米) | 支持 | 支持 |
| shpPath | String | 在线地址:shp 文件 URL // 本地地址一:""file:///D:/xxx/shpData.shp"";D: 云渲染所在盘符 // 本地地址二:""path:/UserData/shpData.shp"",资源由云渲染后台管理" | 支持 | 支持 |
| point1ZField | String | shp 文件中每个三角面顶点 1 的高度字段名称 | 支持 | 支持 |
| point2ZField | String | shp 文件中每个三角面顶点 2 的高度字段名称 | 支持 | 支持 |
| point3ZField | String | shp 文件中每个三角面顶点 3 的高度字段名称 | 支持 | 支持 |
| meshValueField | String | shp 文件中每个三角面的值字段名称(可选) | 支持 | 支持 |
| meshLabelField | String | shp 文件中每个三角面的标签字段名称(可选)。网格体如果不选中没有 label。网格的选中分为 element 和 node ,element 选中后会显示 label,node 不显示 label 。单选 pickOverlay 接口只支持设置 overlayType 为 element;框选 selectOverlay 接口支持设置 overlayType 为 element 和 node。 | 不支持 | 支持 |
回调数据
JSON
{
"result": 1,
"message": "成功。"
}回调数据参数描述
| 属性 | 类型 | 说明 |
|---|---|---|
| result | Number | 1:代表成功;0:代表失败 |
| message | String | 成功或者失败原因 |
6. 更新网格体数据 SHP
引入版本:3.6.4 起支持
功能描述
更新三维场景中网格体数据 SHP
调用方法
JavaScript
let jsonData = {
id: 'mesh',
shpPath: 'http://tuguan.net/test.shp',
point1ZField: 'point1Z',
point2ZField: 'point2Z',
point3ZField: 'point3Z',
meshValueField: 'value',
};
appInstance.uniCall('updateMeshDataSHP', jsonData, (result) => {
console.log(result);
});参数描述
| 属性 | 类型 | 说明 |
|---|---|---|
| id | String | 图层对象 id,更新时调用者自己传入的唯一标识 |
| shpPath | String | 在线地址:shp 文件 URL // 本地地址一:""file:///D:/xxx/shpData.shp"";D: 云渲染所在盘符 // 本地地址二:""path:/UserData/shpData.shp"",资源由云渲染后台管理" |
| point1ZField | String | shp 文件中每个三角面顶点 1 的高度字段名称(可选) |
| point2ZField | String | shp 文件中每个三角面顶点 2 的高度字段名称(可选) |
| point3ZField | String | shp 文件中每个三角面顶点 3 的高度字段名称(可选) |
| meshValueField | String | shp 文件中每个三角面的值字段名称(可选) |
回调数据
JSON
{
"result": 1,
"message": "成功。"
}回调数据参数描述
| 属性 | 类型 | 说明 |
|---|---|---|
| result | Number | 1:代表成功;0:代表失败 |
| message | String | 成功或者失败原因 |
7. 删除网格体
引入版本:3.2 起支持
功能描述
删除三维场景中的网格体
调用方法
JavaScript
let jsonData = {
id: 'mesh',
};
appInstance.uniCall('removeModel', jsonData, (result) => {
console.log(result);
});参数描述
| 属性 | 类型 | 说明 |
|---|---|---|
| id | String | 图层对象 id,更新时调用者自己传入的唯一标识 |
回调数据
JSON
{
"result": 1,
"message": "成功。"
}回调数据参数描述
| 属性 | 类型 | 说明 |
|---|---|---|
| result | Number | 1:代表成功;0:代表失败 |
| message | String | 成功或者失败原因 |