74 lines
3.0 KiB
HTML
74 lines
3.0 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8" />
|
|
<title>坐标系转换</title>
|
|
<script src="./Build/Cesium/Cesium.js"></script>
|
|
<link href="./Build/Cesium/Widgets/widgets.css" rel="stylesheet" />
|
|
<style>
|
|
@import url(./Build/Cesium/Widgets/widgets.css);
|
|
html,
|
|
body,
|
|
#cesiumContainer {
|
|
width: 100%;
|
|
height: 100%;
|
|
margin: 0;
|
|
padding: 0;
|
|
overflow: hidden;
|
|
}
|
|
</style>
|
|
<!-- <script src="https://cesium.com/downloads/cesiumjs/releases/1.68/Build/Cesium/Cesium.js"></script> -->
|
|
<!-- <link href="https://cesium.com/downloads/cesiumjs/releases/1.68/Build/Cesium/Widgets/widgets.css" rel="stylesheet"> -->
|
|
</head>
|
|
<body>
|
|
<div id="cesiumContainer"></div>
|
|
<script>
|
|
// Cesium.Ion.defaultAccessToken = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZjRjNTZkNC01NDYxLTRhMjQtOGEwZC1kZjA3YzQ5YTJlZDkiLCJpZCI6MjYwODQsInNjb3BlcyI6WyJhc3IiLCJnYyJdLCJpYXQiOjE1ODcxOTMwODN9.prGsSKyAW_9Ow5zHYPhbm3LsQL-ApQw5-5PNJkDaHi8';
|
|
Cesium.Ion.defaultAccessToken =
|
|
"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZjRjNTZkNC01NDYxLTRhMjQtOGEwZC1kZjA3YzQ5YTJlZDkiLCJpZCI6MjYwODQsInNjb3BlcyI6WyJhc3IiLCJnYyJdLCJpYXQiOjE1ODcxOTMwODN9.prGsSKyAW_9Ow5zHYPhbm3LsQL-ApQw5-5PNJkDaHi8";
|
|
var viewer = new Cesium.Viewer("cesiumContainer", {
|
|
terrainProvider: Cesium.createWorldTerrain(),
|
|
});
|
|
|
|
// Cesium.Cartesian3.fromDegrees(longitude, latitude, ?height, ?ellipsoid, ?result)
|
|
// height为大地高
|
|
const position = Cesium.Cartesian3.fromDegrees(-115.0, 37.0);
|
|
|
|
// Cesium.Cartesian3.fromDegreesArray(coordinates, ?ellipsoid, ?result)
|
|
// coordinates 格式为不带大地高的数组:[112.11 ,22.71 ,12.21 ,22.9]
|
|
const positions = Cesium.Cartesian3.fromDegreesArray([
|
|
-115.0, 37.0, -107.0, 33.0,
|
|
]);
|
|
|
|
// Cesium.Cartesian3.fromDegreesArrayHeights(coordinates, ?ellipsoid, ?result)
|
|
// coordinates 格式为带大地高的数组
|
|
const positions1 = Cesium.Cartesian3.fromDegreesArrayHeights([
|
|
-115.0, 37.0, 100000.0, -107.0, 33.0, 150000.0,
|
|
]);
|
|
|
|
const ellipsoid84 = Cesium.Ellipsoid.wgs84;
|
|
cartesianToCartographic(cartesian, result);
|
|
//笛卡尔空间坐标转WGS84弧度.
|
|
const position1 = new Cesium.Cartesian3(17832.12, 83234.52, 952313.73);
|
|
const cartographicPosition =
|
|
ellipsoid84.cartesianToCartographic(position);
|
|
|
|
// WGS84 转 笛卡尔空间坐标
|
|
const position2 = new Cesium.Cartographic(
|
|
Cesium.Math.toRadians(21),
|
|
Cesium.Math.toRadians(78),
|
|
5000
|
|
);
|
|
const cartesianPosition = ellipsoid84.cartographicToCartesian(position);
|
|
|
|
// let cartesian3 = viewer.scene.pickPosition(cartesian2)
|
|
|
|
// let cartesian3 = viewer.scene.globe.pick(viewer.camera.getPickRay(cartesian2),viewer.scene)
|
|
|
|
// let cartesian3 = viewer.scene.camera.pickEllipsoid(cartesian2)
|
|
|
|
// Cesium.SceneTra
|
|
</script>
|
|
</body>
|
|
</html>
|