首页 > 其他分享 >Cesium OSM building && Cesium widget(二十一)

Cesium OSM building && Cesium widget(二十一)

时间:2023-03-01 20:03:42浏览次数:33  
标签:building widget viewer scene OSM Cesium 3D

 

加载OSM

以下是官方示例,但增加了丰富的注释

// 创建一个Cesium.Viewer对象,用于在网页中显示3D地球仪和地图
// cesiumContainer是HTML元素的ID,用于容纳地球仪
// terrainProvider是一个选项,用于指定地形数据源,默认为Cesium.createWorldTerrain()
const viewer = new Cesium.Viewer("cesiumContainer", {
terrainProvider: Cesium.createWorldTerrain(),
});

// 使用viewer对象的scene属性的primitives属性的add方法添加一个3D图元(Primitive)对象
// 使用Cesium.createOsmBuildings方法创建一个基于OpenStreetMap数据的全球3D建筑物图层(Cesium OSM Buildings)
// 这个图层包含了超过3.5亿栋建筑物,并使用3D Tiles技术进行高效的网络传输和可视化
viewer.scene.primitives.add(Cesium.createOsmBuildings());

// 使用viewer对象的scene属性的camera属性的flyTo方法让相机飞到指定位置和方向
// destination参数指定目标位置,使用Cesium.Cartesian3.fromDegrees方法根据经纬度坐标和高度创建笛卡尔坐标(Cartesian3)对象
// orientation参数指定目标方向,包括heading(偏航角)和pitch(俯仰角),使用Cesium.Math.toRadians方法将角度转换为弧度
viewer.scene.camera.flyTo({
destination: Cesium.Cartesian3.fromDegrees(-74.019, 40.6912, 750),
orientation: {
heading: Cesium.Math.toRadians(20),
pitch: Cesium.Math.toRadians(-20),
},
});

 

widget

Cesium.CesiumWidget类似于Cesium.Viewer,但被精简了。它只是3D地球仪的一个小部件;它不包括动画、图像选择和其他小部件,也不依赖于第三方Knockout librar

// Cesium.CesiumWidget is similar to Cesium.Viewer, but
// is trimmed down.  It is just a widget for the 3D globe;
// it does not include the animation, imagery selection,
// and other widgets, nor does it depend on the third-party
// Knockout library.
const widget = new Cesium.CesiumWidget("cesiumContainer");

 

 

 

 

标签:building,widget,viewer,scene,OSM,Cesium,3D
From: https://www.cnblogs.com/LJXXXX/p/17169474.html

相关文章

  • Cesium 超出部分裁剪(二十一)
    以下为官网示例,但是我加上了详细的注释  //创建一个Cesium.Viewer对象,用于在网页中显示3D地球仪和地图//cesiumContainer是HTML元素的ID,用于容纳地球仪//terrai......
  • Cesium Transform(二十)
    cesium是一个用于创建3D地球和空间场景的JavaScript库,它提供了一些用于坐标变换的类,统称为transform。transform类可以帮助我们在不同的参考系之间转换点或向量,例如从地球......
  • Cesium 数据请求管理 Request_八号风球867的博客
    cesium数据请求主要通过三个类完成:Resource,RequestScheduler,Request;1.Resource:负责资源请求,发起xml请求2.RequestScheduler:负责请求调度管理3.Request:请求参数......
  • 【cesium】 FlyLine飞行漫游路线
    cesiumFlyLine飞行漫游路线mars3d.FlyLine是实体类,提供飞行漫游路线控制。使用示例在后面一、需求:拿取请求的坐标数据集展示车辆或人员轨迹1.生成轨迹数据//创建......
  • Cesium 模型移动以及视角跟随(十九)
     以下是一段示例代码,目的是使某一物体运动并进行相机跟踪该代码创建了一个CesiumViewer对象,并在其中添加了一个名为“飞机”的实体对象。该实体具有模型、位置和路径三个......
  • Qtreewidget置顶和取消置顶功能
    1.1  Treewidget置顶和取消置顶 需求中有个置顶案件的需求,取消置顶之后,被取消的案件在最后一个置顶案件下面,新建的案件也要在置顶案件下面,Treewidget本身没有置顶的......
  • Qtreewidget滚动条宽度根据内容自适应调整
    1.1  组织树treewidget滚动条宽度根据内容自适应调整  Treewidget只有在多列时,才会自适应显示横向滚动条,并且根据内容自动调整滚动条的大小,为了实现任务列表自适应......
  • QtreeWidget实现模糊搜索功能
    在输入框输入检索关键字,然后根据输入的关键字去搜索任务列表,只显示包含检索关键字的项随着输入文字的变化,不断的刷新搜索内容;效果如下所示。  搜索函数实现方法如下所......
  • Cesium 地图下钻 动态加载
    有这样一个需求:当鼠标滚轮向下滚动时,动态加载geojson数据,而向上滚动时,数据自动恢复原样。1.gif首先需要加载出全国的geojson数据,当选择某个省的时候,拾取到这个省的行政......
  • Cesium 使用canvas 自定义 label 样式
    https://blog.csdn.net/tutouxiaoyaonie/article/details/127306197项目需求:车辆按照轨迹移动,模型上方要有文本框显示车辆信息,但是cesium自带的label设置样式有限,不美观,所......