Cesium提供方法自动生成建筑物3D模型,也就是根据地面上的图片,建筑物的周围轮廓生成一个模拟的3D建筑物的轮廓,并放置在地球的建筑物位置,相关注释在代码中已经体现了。下面通过代码演示整个过程:
html/xml
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<!-- Include the CesiumJS JavaScript and CSS files -->
<script src="https://cesium.com/downloads/cesiumjs/releases/1.100/Build/Cesium/Cesium.js"></script>
<link href="https://cesium.com/downloads/cesiumjs/releases/1.100/Build/Cesium/Widgets/widgets.css" rel="stylesheet">
</head>
<body>
<div id="cesiumContainer"></div>
<script>
// 设置token
Cesium.Ion.defaultAccessToken = 'token';
// 初始化一个id为 `cesiumContainer`的HTML元素作为我们的容器,这里不传ID传DO .
const viewer = new Cesium.Viewer('cesiumContainer', {});
// 加载OSM建筑,也就是一些城市的白膜建筑,只有形状没有纹理的模型.
const buildingTileset = viewer.scene.primitives.add(Cesium.createOsmBuildings());
//飞入到某个点查看
viewer.camera.flyTo({
destination : Cesium.Cartesian3.fromDegrees(-122.4175, 37.655, 400),
orientation : {
heading : Cesium.Math.toRadians(0.0),
pitch : Cesium.Math.toRadians(-15.0),
}
});
</script>
</div>
</body>
</html>
效果图 以上如有问题可以在评论区留言