cesium封装实现配置格网及插值高程面实现

12 篇文章 5 订阅
7 篇文章 4 订阅

一、数据结构建模

二、插值算法得到的插值结果

三、图层配置

primitiveGrid:{

isRLayerPanel: true,

primitives:[],

url: '/static/data/Grid.json',

dataPath: '',

dataIdField: 'code',

options:{

id:'primitiveGrid',

name:'格网',

type:'grid',

isShow: false

},

location: {

"destination":{"x":-2194142.1719457568,"y":4477352.104342483,"z":3981503.0453665117},

"orientation":{"heading":6.283185231778362,"pitch":-0.6090220537393618,"roll":7.622047348831984e-8},

duration: 2

},

entityType:'primitive'

},

primitiveTriangle:{

isRLayerPanel: true,

primitives:[],

url: '/static/data/Grid1.json',

dataPath: '',

dataIdField: 'code',

options:{

id:'primitiveTriangle',

name:'三角格网',

type:'triangleFan',

isShow: false

},

location: {

"destination":{"x":-2194142.1719457568,"y":4477352.104342483,"z":3981503.0453665117},

"orientation":{"heading":6.283185231778362,"pitch":-0.6090220537393618,"roll":7.622047348831984e-8},

duration: 2

},

entityType:'primitive'

}

四、关键代码调用

export function CommonDrawPrimitiveEntitiesByUrl(zjnCesium,layersInfo,LayersRenderSet,LayersRenderLabelSet,layerId){

getMapData(layersInfo[layerId].url).then((res) => {

if (layersInfo[layerId].dataPath != undefined && layersInfo[layerId].dataPath != "") {

let dp = layersInfo[layerId].dataPath.split('/')

for (let i = 0; i < dp.length; i++) {

res = res[dp[i]]

}

}

if(layersInfo[layerId].options.type=='water'){

CommonDrawPrimitiveEntities(res,zjnCesium,layersInfo,LayersRenderSet,LayersRenderLabelSet,layerId,layersInfo[layerId].dataGeoField,layersInfo[layerId].dataIdField)

}

if(layersInfo[layerId].options.type=='grid'){

CommonCreateMeshGridP(res,zjnCesium,layersInfo,LayersRenderSet,layerId)

}

if(layersInfo[layerId].options.type=='triangleFan'){

CommonCreateMeshTriangleFan(res,zjnCesium,layersInfo,LayersRenderSet,layerId)

}

});

}

五、实现效果展示

如果对您有帮助

感谢支持技术分享,请点赞支持:

技术合作交流qq:2401315930

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

兴诚

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值