zoukankan      html  css  js  c++  java
  • cesium入门示例-矢量化单体分类

    实现楼层的分层选择和属性信息展示,该功能基于大雁塔倾斜数据实现单体化分类显示。

    数据准备:

    1、大雁塔倾斜数据,已转换为3dTiles,参考cesium入门示例-3dTiles加载的第2节osgb数据展示;

    2、大雁塔分层多边形矢量图层shp文件;

    分层矢量数据包含每一层的最大最小高度,每一层都是重合的矩形,在QGIS中打开如下(选择UTF-8编码):

    在cesiumlab中将shp图层转换为3dTiles,设置如下:

    注意cesiumlab的版本为1.5.17,低版本的可能会有问题。

    数据准备完毕后即可在前端cesium框架中加载显示,加载代码很简单,如下:

     1 //西安大雁塔
     2 var dayantaTileset = new Cesium.Cesium3DTileset({
     3     url: './TestData/output/osgbtiles/tileset.json'
     4 })
     5 viewer.scene.primitives.add(dayantaTileset);
     6 //大雁塔矢量单体
     7 var classifytileset = new Cesium.Cesium3DTileset({
     8     url: './TestData/output/dayantaclassify/tileset.json',
     9     classificationType: Cesium.ClassificationType.CESIUM_3D_TILE
    10 });
    11 //注意这个颜色的设置
    12 classifytileset.style = new Cesium.Cesium3DTileStyle({
    13     color: 'rgba(255, 0, 0, 0.5)'//,增加要素选择效果后,将原始颜色透明度调到几乎看不到,改为'rgba(255, 0, 0, 0.01)'
    14 }); 15 viewer.scene.primitives.add(classifytileset);

     然后增加分层选择效果,选择显示属性信息通过侦听鼠标MOVE和LEFT_CLICK事件,查询要素获得,具体代码参照cesium入门示例-3dTiles加载的3节。最终效果如下:

  • 相关阅读:
    1571:【例 3】凸多边形的划分
    1570:【例 2】能量项链
    2.25
    2.24 T2 牧场 by greens 1s 128M (pasture.cpp)
    2.24 T1 P3515 [POI2011]Lightning Conductor
    白嫖视频的方法
    2.24 T3 P1912 [NOI2009] 诗人小G
    2.24
    斜率优化
    windy数的补充——数位dp中如何求[a,b]区间内的方案数
  • 原文地址:https://www.cnblogs.com/HandyLi/p/11125275.html
Copyright © 2011-2022 走看看