01 2023 档案
摘要:由方程(x/A)^2+(y/b)^2+(z/c)^2=1在笛卡尔坐标系中定义的二次曲面。Cesium主要用来表示行星体的形状。通常使用提供的常量之一,而不是直接构造此对象。 不用new,直接就可以使用其中的方法和变量 Cesium.Ellipsoid.WGS84,非常常用 比如将笛卡尔坐标转换为WG
阅读全文
摘要:function bounds(positions = [], expand = 0) { let minLng = 180 let minLat = 90 let maxLng = -180 let maxLat = -90 positions.forEach(item => { minLng =
阅读全文
摘要:首先发现一个问题,这段代码会报错,原因是"DeveloperError: Expected value to be greater than or equal to0.0125, actual value was 0,不知道为什么经度不能为0 new Cesium.Cartographic.from
阅读全文
摘要://计算三角形面积 function triangleArea(p0, p1, p2) { let v0 = Cesium.Cartesian3.subtract(p0, p1, new Cesium.Cartesian3()) let v1 = Cesium.Cartesian3.subtract
阅读全文
摘要:function triangleArea(p0, p1, p2) { //利用subtract计算出两个向量 let v0=Cesium.Cartesian3.subtract(p0,p1,newCesium.Cartesian3()) let v1=Cesium.Cartesian3.subtr
阅读全文
摘要:先贴一段代码,是dvgis里的distance.js源码,dvgis是cesium的二次封装,可以参考参考: 1import{Cesium}from'@dc-modules/namespace' 2import{Transform}from'@dc-modules/transform' 3 4exp
阅读全文
摘要:我们查看Cesium源码时,有时会发现源码中有大量的includeStart开头的注释,如下图所示。 这里面大多是调试信息,当使用gulp打包时,removePragmas参数设置为true,则会删除includeStart和includeEnd之间的js语句。 源码: 1 /** 2 * A La
阅读全文
摘要:1 /** 2 * Flies the camera from its current position to a new position. 3 * 4 * @param {Object} options Object with the following properties: 5 * @par
阅读全文
摘要:按钮: <el-button id="manyou" @click="Ismovement" type="primary" >漫游模式</el-button> 样式: /* 逗号表示A,B两个标签同时拥有大括号中的CSS样式 */ .el-button--primary.is-active, /*
阅读全文
摘要:
2023-01-14 先看效果,wsadqe控制方向升降,鼠标拖动屏幕也可以控制方向 整理下思路: 1. 使用movement变量控制是否进行漫游 2.1 进行漫游则先将enableRotate等全部取消 2.2 绑定Cesium.ScreenSpaceEventType.LEFT_DOWN等事件,
阅读全文

摘要:2023-01-12 1.sampleTerrainMostDetailed 根据提供的terrainPrivider和点的弧度坐标计算出当前点的高度信息。 var p = new Cesium.Cartographic.fromCartesian(new Cesium.Cartesian3.fro
阅读全文
摘要:2023-01-11 1.坐标系 Cartesian3 笛卡尔坐标,又叫世界坐标,是一个三维空间中的点 ,具有xyz,类似:(-1314910.6675027965, 5328726.846411945, 3238183.748823095),单位为米 原点在椭球中心 Cartesian2 是二维空
阅读全文
摘要:2023-01-14 改了下思路,直接根据点击的位置转换为世界坐标系再添加label console.log(`鼠标点击位置为:${click.position}`); var cartesian = that.viewer.scene.globe.pick(that.viewer.camera.g
阅读全文
摘要:2023-01-09 1.viewerDragDropMixin 一个mixin,它为查看器小部件添加了对CZML文件的默认拖放支持。 czml即为json,但json不一定为czml;如同geojson与json的关系。 czml文件通常为一个对象数组,每个id唯一代表一个对象。 CZML使用浏览
阅读全文
摘要:2023-01-09 Cesium虽然也支持两种方式(Entity和Primitive)加载3D Tiles数据, 但因为多数情况下3D Tiles数据都是成片区的数据,数据量比较大,所以为了保证性能,建议使用Primitive方式。 entity和primitives的处理逻辑稍有不同,正因如此,
阅读全文
摘要:2023-01-08 建筑物是primitives,两个娃娃是entity 加载娃娃代码: //粉色 var entity6 = viewer.entities.add({ id:6, position:new Cesium.Cartesian3.fromDegrees(103.8603, 30.7
阅读全文
摘要:1.添加鼠标点击事件 //鼠标单击左键事件 viewer.screenSpaceEventHandler.setInputAction(function onMouseClick( click ) { //自己需要写逻辑的地方 },Cesium.ScreenSpaceEventType.LEFT_C
阅读全文
摘要:2023-01-04 最近想用Cesium给学校做一个类似智慧校园的东西,要做的东西很多,首先是获取学校模型的问题,然后怎么用Cesium加载3Dtile 1.获取学校模型 想到之前被老师抓苦力去做春熙路的图,于是决定用比较熟悉的OSM数据集 https://www.openstreetmap.or
阅读全文