Cesium系列:加载不规则形状出图

简介: Cesium加载不规则形状出图

在Cesium地图系统开发中,后台出图的范围,在经纬度中是一个不规则的polygon,出来的图片形状也不是规则的,要在地图上贴上这张图,图片显示的范围也要契合到实际地图位置。

图片效果:
image.png
查找Cesium的接口,首先想到的是,用其中的polygon,按照经纬的范围,画一个polygon,再将图片做为材质material贴进去,不过代码写上后,发现的贴图在polygon中变形了,也没有贴到相应的地图位置。

经过测试,最后发现可以用Cesium的Rectangle实体对象,通过计算出不规则多边形四至范围的左上角坐标和右下角坐标,再将图片材质贴上去,地图上的位置还对上了。

具体的代码如下:

//添加一个rectangle的实体

 viewer.entities.add({

        name: '不规则贴图',

        rectangle: {

        //设置rectangle的四个坐标范围

        coordinates: Cesium.Rectangle.fromDegrees(-92.0, 30.0, -76.0, 40.0), 

        //设置图片为材质

        material: 'data/wind_500_2018030616_True.png', 

        //图片显示样式类型,有地形,模型或者两者,此效果可以达到贴图是沿

        //地图弧面的

        classificationType : Cesium.ClassificationType.TERRAIN

    }

添加完成后,效果是贴地的,形状是长方形,但是空白地方显示是黑色,要在材质里单独设置一下,把材质属性改成如下:黑色没有了

material: new Cesium.ImageMaterialProperty({

   image:'data/wind_500_2018030616_True.png',

   transparent:true

  })

//顺便设置个高度属性,可以离开地面显示

height:70000

完成后效果图:
image.png

相关文章
cesium添加实体不被地形遮挡的参数设置
disableDepthTestDistance:指定从相机到禁用深度测试的距离,关于深度测试我们将在后面的文章中介绍到,由于深度测试的存在,我们的对象很多时候会被地形挡住,如下:
3130 0
cesium添加实体不被地形遮挡的参数设置
|
定位技术
干货!解决Cesium中Entity移动漂移的问题
案例场景:在Cesium开发三维场景展示中,肯定会碰到加载Entity的需求,如果在你的gis应用中,带了地形的展示。那么在旋转切换画面时,Entity是否跟着一起动了起来,感觉像漂移一样呢?
4510 0
干货!解决Cesium中Entity移动漂移的问题
Element的el-table行列错位对不齐问题处理
本文目录 1. 问题表现 2. 问题发现 3. 问题处理 4. 另一种处理方案
5889 0
Element的el-table行列错位对不齐问题处理
|
安全 开发工具 Android开发
几个Flutter常见诊断错误与解决Android toolchain - develop for Android devices X Unable to locate Android SDK
几个Flutter常见诊断错误与解决Android toolchain - develop for Android devices X Unable to locate Android SDK
4869 0
Cesium 获取当前视图范围
Cesium作为一个开源的WebGlobe解决方案已经很牛了,不过因为开发的资料不多,很多功能不知道怎么实现。下面记录下自己获取Cesium当前场景范围的方法(2维中对应的是extent)。   extent其实对我们有用的也就是左上角和右下角坐标,于是首先应该想办法实现的是获取场景左上角和右下角的经纬度坐标。
1825 0
|
编解码 计算机视觉 索引
OpenCV使用单目标匹配从图像中选择最佳的匹配结果及查找重复图像实战(附Python源码)
OpenCV使用单目标匹配从图像中选择最佳的匹配结果及查找重复图像实战(附Python源码)
1254 0
Cesium给物体添加贴图
这篇文章讲解了在Cesium中如何为3D模型添加贴图,并提供了具体的实现步骤和代码示例。
932 2
|
定位技术
Cesium修改地球的贴图为视频或者图片
这篇文章说明了如何在Cesium中修改地球的贴图,替换为自定义的图像或视频纹理。
618 1
Cesium修改地球的贴图为视频或者图片
|
11月前
|
JSON JavaScript 前端开发
shpfile转GeoJSON;控制shp转GeoJSON的精度;如何获取GeoJSON;GeoJSON是什么有什么用;GeoJSON结构详解(带数据示例)
在使用Openlayers、leaflet、mapbox等地图控件的时候,GeoJSON几乎是不可避免打交道的数据类型,如果您想要从事gis行业相关的开发工作,本篇文章应该能为您带来一些帮助。 博客不应该只有代码和解决方案,重点应该在于给出解决方案的同时分享思维模式,只有思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~