Files
sdk4_demo/example/测量.html
2025-07-03 15:12:58 +08:00

88 lines
2.8 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="../sdk/YJEarth.min.js"></script>
<script src="vue.js"></script>
<style>
body {
width: 100%;
height: 100%;
}
</style>
</head>
<body>
<div id="app" class="fullSize">
<button class="button" @Click="Measure">测量</button>
</div>
</body>
</html>
<script>
new Vue({
el: "#app",
data: {
},
async mounted() {
await YJ.on()
this.createEarth()
},
methods: {
async createEarth() {
window.sdk = new YJ.YJEarth("app")
this.tileset = new YJ.Obj.Tileset(sdk, {
show: true,
name: 'xxx',
url: "http://localhost:8891/yjearth4.0/data/tileset/6dee5cc84e66a61231e3a0048fd6c25a/tileset.json",
position: { lng: 100, lat: 40, alt: 1580 },
})
await this.tileset.on()
this.tileset.flyTo()
YJ.Global.CesiumContainer(sdk, {
compass: true, // 罗盘
legend: true, // 比例尺
info: true, // 信息栏
frame: true // 刷新率
})
let layer = new YJ.Obj.GDWXImagery(sdk, {
id: 1,
show: true,
layer_index: 1
})
new YJ.Obj.GDLWImagery(sdk, {
id: 2,
show: true,
layer_index: 2
})
},
Measure() {
// let Measure = new YJ.Measure.MeasureDistance(sdk) // 距离测量
// let Measure = new YJ.Measure.MeasureSlopeDistance(sdk) // 坡度测量
// let Measure = new YJ.Measure.MeasureProjectionDistance(sdk) // 投影距离测量
// let Measure = new YJ.Measure.MeasureHeight(sdk) // 高度测量
// let Measure = new YJ.Measure.MeasureLocation(sdk) // 坐标测量
// let Measure = new YJ.Measure.MeasureTriangle(sdk) // 三角测量
// let Measure = new YJ.Measure.MeasureTyArea(sdk) // 投影面积
// let Measure = new YJ.Measure.MeasureTdArea(sdk) // 贴地面积
let Measure = new YJ.Measure.MeasureAngle(sdk) // 夹角测量
// let Measure = new YJ.Measure.MeasureAzimuth(sdk) // 方位角测量
// 开始
Measure.start()
// // 结束
// Measure.end()
// // 清除
// Measure.destroy()
// // 全部清除
// YJ.Measure.Clear()
}
}
})
</script>