| | |
| | | var geodesic = new SmartEarth.Cesium.EllipsoidGeodesic(); |
| | | |
| | | geodesic.setEndPoints(leftCartographic, rightCartographic, ellipsoid); |
| | | rate.value = geodesic.surfaceDistance.toFixed(2); //分辨率 |
| | | // rate.value = geodesic.surfaceDistance.toFixed(2); //分辨率 |
| | | }); |
| | | |
| | | |
| | | Viewer.scene.postRender.addEventListener(() => { |
| | | // // 获取画布的大小 |
| | | let scene = earthCtrl.Viewer.scene; |
| | | var width = scene.canvas.clientWidth; |
| | | var height = scene.canvas.clientHeight; |
| | | //获取画布中心两个像素的坐标(默认地图渲染在画布中心位置) |
| | | var left = scene.camera.getPickRay(new SmartEarth.Cesium.Cartesian2((width / 2) | 0, (height - 1) / 2)); |
| | | var right = scene.camera.getPickRay(new SmartEarth.Cesium.Cartesian2(1 + (width / 2) | 0, (height - 1) / 2)); |
| | | |
| | | var leftPosition = scene.globe.pick(left, scene); |
| | | var rightPosition = scene.globe.pick(right, scene); |
| | | if (!SmartEarth.Cesium.defined(leftPosition) || !SmartEarth.Cesium.defined(rightPosition)) { |
| | | return; |
| | | } |
| | | const ellipsoid = SmartEarth.Cesium.Ellipsoid.MOON2000 |
| | | var leftCartographic = ellipsoid.cartesianToCartographic(leftPosition); |
| | | var rightCartographic = ellipsoid.cartesianToCartographic(rightPosition); |
| | | var geodesic = new SmartEarth.Cesium.EllipsoidGeodesic(leftCartographic, rightCartographic, ellipsoid); |
| | | var distance = geodesic.surfaceDistance;// 分辨率 |
| | | rate.value =distance.toFixed(2); //分辨率 |
| | | }) |
| | | }; |
| | | const gridSwitch = () => { |
| | | server.showlonlatLine(); |
| | |
| | | return levelArray.length - 1; |
| | | }; |
| | | const createPrimitives = (degree) => { |
| | | // let ps = []; |
| | | // for (let longitude = -180; longitude <= 180; longitude += 10) { |
| | | // ps.push( |
| | | // Cesium.Cartesian3.fromDegreesArray([ |
| | | // longitude, |
| | | // -90, |
| | | // longitude, |
| | | // 0, |
| | | // longitude, |
| | | // 90, |
| | | // ]) |
| | | // ); |
| | | // } |
| | | |
| | | // let polylineGeometry = new Cesium.PolylineGeometry({ |
| | | // positions: ps, |
| | | // width: 5, |
| | | // id: "polylineGeometry", |
| | | // }); |
| | | // Viewer.scene.primitives.add( |
| | | // new Cesium.Primitive({ |
| | | // geometryInstances: new Cesium.GeometryInstance({ |
| | | // geometry: polylineGeometry, |
| | | // }), |
| | | // // vertexFormat: Cesium.PolylineColorAppearance.VERTEX_FORMAT, |
| | | // appearance: new Cesium.EllipsoidSurfaceAppearance({ |
| | | // material: Cesium.Material.fromType("Stripe"), |
| | | // }), |
| | | // }) |
| | | // ); |
| | | var GridImagery = new Cesium.GridImageryProvider(); |
| | | var imageryLayers = Viewer.imageryLayers; |
| | | var GridImageryLayer = imageryLayers.addImageryProvider(GridImagery); // 添加网格图层 |