Skip to content

区域操作 ​

目录 ​

1. 添加区域 ​

引入版本:3.0 起支持

功能描述 ​

在三维场景中添加区域

调用方法 ​

JavaScript
let jsonData = {
  id: 'Area',
  name: '区域轮廓',
  coordType: 0,
  coordTypeZ: 0,
  coordZ: 64,
  type: 'Segment03',
  color: '#00008C',
  visible: true,
  areaHeight: 150,
  alpha: 0.5,
  fillArea: 'Gradient01',
  fillPosition: 'top',
  tags: ['tag1', 'tag2', 'tag3'],
  snapSurface: 0,
  points: [
    {
      coord: [113.932972277122, 22.5162384306822], //以深圳湾经纬度为例
    },
    {
      coord: [113.932983347671, 22.514890460642],
    },
    {
      coord: [113.932790658042, 22.514048859528803],
    },
    {
      coord: [113.932693841204, 22.5131870744529],
    },
    {
      coord: [113.933379955599, 22.512650778028803],
    },
    {
      coord: [113.934139934986, 22.512331311531202],
    },
    {
      coord: [113.93616509967799, 22.511525295930003],
    },
    {
      coord: [113.9377507465, 22.511224035491],
    },
    {
      coord: [113.940118017752, 22.511357981712102],
    },
    {
      coord: [113.940536191797, 22.513675990692203],
    },
    {
      coord: [113.939164280402, 22.515482894893402],
    },
    {
      coord: [113.936871753763, 22.516270680155102],
    },
    {
      coord: [113.935265096016, 22.516362937964104],
    },
    {
      coord: [113.934161647514, 22.516395121258903],
    },
  ],
  label: 'label text',
  label2: 'label2 text',
  labelColor: '#ffffff',
  labelScale: 1,
  labelOffset: [0, 0, 2],
  labelBackgroundColor: '#333333',
  iconScale: 1,
  iconName: 'icon1',
  visibleMaxDistance: 10000,
  modelVisibleRange: [0, 100],
  labelVisibleRange: [0, 1000],
  iconVisibleRange: [0, 3000],
};

appInstance.uniCall('addArea', jsonData, (result) => {
  console.log(result);
});

参数描述 ​

属性类型说明端渲染流渲染
idString图层对象 id,新建时调用者自己传入的唯一标识,用于各种操作的对象识别支持支持
nameString图层名称,支持为图层自定义名称支持支持
coordTypeNumberXY 轴坐标类别,0:X 经度,Y 纬度;1:X 米,Y 米,相对世界 00 点 目前该属性仅支持属性值为 0支持支持
coordTypeZNumberZ 轴坐标类别,0:相对 3D 世界 0 海拔;1:相对 3D 世界地表;2:相对 3D 模型表面(单位:米) 目前该属性仅支持属性值为 0支持支持
coordZNumber高度(单位:米)支持支持
typeString样式类型(具体类型参考下图 type 枚举值,端渲染暂不支持 Gradient01 Gradient04、Gradient05、Gradient06)支持支持
colorString轮廓颜色(HEX 颜色值)支持支持
alphaString透明度,0:完全透明;1:完全不透明,默认值 1支持支持
visibleBoolean添加当前图层时默认显示还是隐藏支持支持
areaHeightNumber围栏高度(单位:米)支持支持
fillAreaString底部区域填充类型(具体类型参考下图 fillArea 枚举值)支持支持
fillPositionString区域填充的位置,top/bottom,默认 top支持支持
tagsAnything用户自定标签数组,用于保存用户的扩展数据,或者可以控制显隐不支持支持
snapSurfaceNumber启用自动贴地,0:不贴地,1:自动贴地。默认值是 0。不支持支持
pointsArray定义区域边界支持支持
points[0].coordArrayXY 轴坐标,X:经度;Y:纬度支持支持
labelString标签文本支持支持
label2String第二行标签文本支持支持
labelColorString标签文本颜色,可选值,默认白色支持支持
labelScaleNumber标签文本的缩放,默认值是 1 表示原大,0 - 1:表示缩小倍率,大于 1:表示放大倍率支持支持
labelOffsetArray标签文本的位置偏移,默认值是[0, 0, 0],表示相对于模型中心点的相对世界坐标的 x、y、z 偏移位置(单位:米)支持支持
labelBackgroundColorString标签文本背景颜色,可选值,默认灰色支持支持
iconScaleNumber图标大小缩放,默认值是 1 表示原大,0 - 1:表示缩小倍率,大于 1:表示放大倍率支持支持
iconNameString内置图标名称,详见下表:内置图标;或根据项目,在场景中预置好的图标对象的名称,包含文字样式定义支持支持
visibleMaxDistanceNumber整体最大可见距离(单位:米),摄像机和模型起点大于此距离隐藏支持支持
modelVisibleRangeArray传感器可见距离范围(单位:米),在大于等于最小数和小于等于最大数的距离内显示模型支持支持
labelVisibleRangeArray标签文字可见距离范围(单位:米),在大于等于最小数和小于等于最大数的距离内显示标签文字支持支持
iconVisibleRangeArray图标可见距离范围(单位:米),在大于等于最小数和小于等于最大数的距离内显示图标支持支持

回调数据 ​

JSON
{
  "result": 1,
  "message": "成功。"
}

回调数据参数描述 ​

属性类型说明
resultNumber1:代表成功;0:代表失败
messageString成功或者失败原因

type 枚举值 ​

  • Arrow01
  • Gradient01
  • Gradient02
  • Gradient03
  • Gradient04
  • Gradient05
  • Gradient06
  • Grid01
  • Grid02
  • Grid03
  • Grid04
  • Grid05
  • Segment01
  • Segment02
  • Segment03

fillArea 枚举值 ​

  • Gradient01
  • Gradient02
  • Grid01
  • Grid02
  • Segment01
  • Segment02
  • Solid01
  • Solid02
  • Solid03
  • Solid04
  • Solid05

返回本章目录

2. 更新区域数据 ​

引入版本:3.0 起支持

功能描述 ​

更新三维场景中添加区域的数据

调用方法 ​

JavaScript
let jsonData = {
  id: 'Area',
  name: '区域轮廓',
  coordType: 0,
  coordTypeZ: 0,
  coordZ: 60,
  tags: ['tag1', 'tag2', 'tag3'],
  points: [
    {
      coord: [113.932594990074, 22.5129032722295], //以深圳湾经纬度为例
    },
    {
      coord: [113.93389227455, 22.5123657941925],
    },
    {
      coord: [113.9351775197, 22.511649282162303],
    },
    {
      coord: [113.934663360092, 22.50987636001],
    },
    {
      coord: [113.933806597102, 22.509130063101402],
    },
    {
      coord: [113.931797218959, 22.509946871271502],
    },
    {
      coord: [113.932215577175, 22.5115070369119],
    },
  ],
};

appInstance.uniCall('updateAreaCoord', jsonData, (result) => {
  console.log(result);
});

参数描述 ​

属性类型说明端渲染流渲染
idString图层对象 id,新建时调用者自己传入的唯一标识,用于各种操作的对象识别支持支持
nameString图层名称,支持为图层自定义名称支持支持
coordTypeNumberXY 轴坐标类别,0:X 经度,Y 纬度;1:X 米,Y 米,相对世界 00 点 目前该属性仅支持属性值为 0支持支持
coordTypeZNumberZ 轴坐标类别,0:相对 3D 世界 0 海拔;1:相对 3D 世界地表;2:相对 3D 模型表面(单位:米) 目前该属性仅支持属性值为 0支持支持
coordZNumber高度(单位:米)支持支持
tagsAnything用户自定标签数组,用于保存用户的扩展数据,或者可以控制显隐不支持支持
pointsArray定义区域边界支持支持
points[0].coordArrayXY 轴坐标,X:经度;Y:纬度支持支持

回调数据 ​

JSON
{
  "result": 1,
  "message": "成功。"
}

回调数据参数描述 ​

属性类型说明
resultNumber1:代表成功;0:代表失败
messageString成功或者失败原因

返回本章目录

3. 更新区域样式 ​

引入版本:3.0 起支持

功能描述 ​

更新三维场景中添加区域的样式

调用方法 ​

JavaScript
let jsonData = {
  id: 'Area',
  type: 'Segment02',
  color: '#FF0000',
  alpha: 0.5,
  areaHeight: 200,
  fillArea: 'Grid01',
  fillPosition: 'top',
  snapSurface: 0,
  label: 'label text',
  label2: 'label2 text',
  labelColor: '#ffffff',
  labelScale: 1,
  labelOffset: [0, 0, 2],
  labelBackgroundColor: '#333333',
  iconScale: 1,
  iconName: 'icon1',
  visibleMaxDistance: 10000,
  modelVisibleRange: [0, 100],
  labelVisibleRange: [0, 1000],
  iconVisibleRange: [0, 3000],
};

appInstance.uniCall('updateAreaStyle', jsonData, (result) => {
  console.log(result);
});

参数描述 ​

属性类型说明端渲染流渲染
idString图层对象 id,新建时调用者自己传入的唯一标识,用于各种操作的对象识别支持支持
typeString区域边界样式类别 (具体类型参考上图 type 枚举值,端渲染暂不支持 Gradient01 Gradient04、Gradient05、Gradient06)支持支持
colorString轮廓颜色(HEX 颜色值)支持支持
alphaString透明度,0:完全透明;1:完全不透明支持支持
areaHeightNumber围栏高度(单位:米)支持支持
fillAreaString区域填充样式类别(具体类型参考上图 fillArea 枚举值)支持支持
fillPositionString区域填充的位置,top/bottom,默认 top支持支持
snapSurfaceNumber启用自动贴地,0:不贴地,1:自动贴地。默认值是 0不支持支持
labelString标签文本支持支持
label2String第二行标签文本支持支持
labelColorString标签文本颜色,可选值,默认白色支持支持
labelScaleNumber标签文本的缩放,默认值是 1 表示原大,0 - 1:表示缩小倍率,大于 1:表示放大倍率支持支持
labelOffsetArray标签文本的位置偏移,默认值是[0, 0, 0],表示相对于模型中心点的相对世界坐标的 x、y、z 偏移位置(单位:米)支持支持
labelBackgroundColorString标签文本背景颜色,可选值,默认灰色支持支持
iconScaleNumber图标大小缩放,默认值是 1 表示原大,0 - 1:表示缩小倍率,大于 1:表示放大倍率支持支持
iconNameString内置图标名称,详见下表:内置图标;或根据项目,在场景中预置好的图标对象的名称,包含文字样式定义支持支持
visibleMaxDistanceNumber整体最大可见距离(单位:米),摄像机和模型起点大于此距离隐藏支持支持
modelVisibleRangeArray传感器可见距离范围(单位:米),在大于等于最小数和小于等于最大数的距离内显示模型支持支持
labelVisibleRangeArray标签文字可见距离范围(单位:米),在大于等于最小数和小于等于最大数的距离内显示标签文字支持支持
iconVisibleRangeArray图标可见距离范围(单位:米),在大于等于最小数和小于等于最大数的距离内显示图标支持支持

回调数据 ​

JSON
{
  "result": 1,
  "message": "成功。"
}

回调数据参数描述 ​

属性类型说明
resultNumber1:代表成功;0:代表失败
messageString成功或者失败原因

返回本章目录

4. 删除区域 ​

引入版本:3.0 起支持

功能描述 ​

删除区域

调用方法 ​

JavaScript
let jsonData = {
  id: 'Area',
  overlayType: 'area',
};

appInstance.uniCall('removeOverlay', jsonData, (result) => {
  console.log(result);
});

参数描述 ​

属性类型说明
idString图层对象 id,新建时调用者自己传入的唯一标识,用于各种操作的对象识别
overlayTypeString图层对象类别

回调数据 ​

JSON
{
  "result": 1,
  "message": "成功。"
}

回调数据参数描述 ​

属性类型说明
resultNumber1:代表成功;0:代表失败
messageString成功或者失败原因

流渲染效果图 ​

系统架构图

端渲染效果图 ​

系统架构图

返回本章目录

5. 添加 Shp 区域 ​

引入版本:3.1 起支持

功能描述 ​

添加 Shp 区域(只能支持 EPSG:3857 和 EPSG:4326 两种坐标系的文件,如果 shp 中有多个多边形区域,只会加载第一个。)

调用方法 ​

JavaScript
let jsonData = {
  id: 'idArea',
  name: 'layerName',
  coordType: 0,
  coordTypeZ: 0,
  type: 'Arrow01',
  color: '#ff0000',
  areaHeight: 10,
  fillArea: 'none',
  alpha: 0.5,
  fillPosition: 'top',
  tags: ['tag1', 'tag2', 'tag3'],
  shpPath: '',
  dataRegion: 'first',
  coordZ: 150,
};
appInstance.uniCall('addAreaShp', jsonData, (result) => {
  console.log(result);
});

参数描述 ​

属性类型说明端渲染流渲染
idString图层对象 id,新建时调用者自己传入的唯一标识,用于各种操作的对象识别支持支持
nameString图层名称,支持为图层自定义名称支持支持
coordTypeNumberxy 轴坐标模式 坐标类型(0:x 经度 y 纬度;1:x 米 y 米,相对世界 00 点) 目前该属性仅支持属性值为 0支持支持
coordTypeZNumberz 轴坐标模式 坐标高度类型,单位:米(0:相对 3D 世界 0 海拔;1:相对 3D 世界地表;2:相对 3D 模型表面) 目前该属性仅支持属性值为 0支持支持
typeString样式类型(具体类型参考上图 type 枚举值,端渲染暂不支持 Gradient01 Gradient04、Gradient05、Gradient06)支持支持
colorString轮廓颜色(HEX 颜色值)支持支持
areaHeightNumber围栏高度(单位:米)支持支持
fillAreaString区域填充样式类别,详见下表:区域填充样式类别支持支持
alphaNumber透明度,0:完全透明;1:完全不透明,默认值 1支持支持
fillPositionString区域填充的位置,top/bottom,默认 top支持支持
tagsAnything用户自定标签数组,用于保存用户的扩展数据,或者可以控制显隐不支持支持
shpPathStringshp 文件地址,端渲染,可以传入和 TGAPI.min.js 相对的 URL 路径,或者 URL 的绝对路径;流渲染,可以是本地 CustomShps 下的相对路径,根目录直接填 “test.shp”,如果是子文件夹填写"\test\test.shp",如果是在线地址,需填写完整的 URL,例如:"http://xxx.xx/xx/test.shp"支持支持
dataRegionString值为 all 或者 first ,用于区分只加载第一条还是加载全部数据,默认值是 first支持不支持
coordZNumber高度(单位:米)支持支持

回调数据 ​

JSON
{
  "result": 1,
  "message": "成功。"
}

回调数据参数描述 ​

属性类型说明
resultNumber1:代表成功;0:代表失败
messageString成功或者失败原因

返回本章目录