坐标转换
该框架支持各类坐标转换
INFO
根据输入的对应坐标系参数生成其他坐标系参数
代码实例
vue
<script setup lang="ts">
import { onMounted, onBeforeUnmount, onBeforeMount, ref, watch } from 'vue'
import { Promotion } from '@element-plus/icons-vue'
onBeforeMount(() => {
hideBar()
})
const LarkExplorer = window.LarkExplorer
let map: any
onMounted(() => {
LarkExplorer.ready({
baseUrl: './dist/resources/',
}).then(initMap)
})
function initMap() {
map = new LarkExplorer.Map('map')
console.log(map)
}
const wgs84 = ref('115.654,32.154')
const gcj = ref('')
const bdll = ref('')
const bdmc = ref('')
const car3 = ref('')
const transFromWgs84 = () => {
const coord = LarkExplorer.Coordinate
const lnglat = getLngLat(wgs84.value)
const gcjLnglat = coord.transformWGS2GCJ(lnglat)
gcj.value = getText(gcjLnglat)
const bdllLngLat = coord.transformWGS2BD(lnglat)
bdll.value = getText(bdllLngLat)
const bdmcLngLat = coord.convertBdLL2MC(bdllLngLat)
bdmc.value = getText(bdmcLngLat)
const degree = {
x: lnglat.lng,
y: lnglat.lat,
}
const cartesian = coord.transformWGS84ToCartesian(degree)
car3.value = cartesian
}
const transFromGcj = () => {
const coord = LarkExplorer.Coordinate
const gcjLnglat = getLngLat(gcj.value)
const lnglat = coord.transformGCJ2WGS(gcjLnglat)
wgs84.value = getText(lnglat)
const bdllLngLat = coord.transformGCJ2BD(gcjLnglat)
bdll.value = getText(bdllLngLat)
const bdmcLngLat = coord.convertBdLL2MC(bdllLngLat)
bdmc.value = getText(bdmcLngLat)
const degree = {
x: lnglat.lng,
y: lnglat.lat,
}
const cartesian = coord.transformWGS84ToCartesian(degree)
car3.value = cartesian
}
const transFromBdll = () => {
const coord = LarkExplorer.Coordinate
const bdllLngLat = getLngLat(bdll.value)
const lnglat = coord.transformBD2WGS(bdllLngLat)
wgs84.value = getText(lnglat)
const gcjLnglat = coord.transformBD2GCJ(bdllLngLat)
gcj.value = getText(gcjLnglat)
const bdmcLngLat = coord.convertBdLL2MC(bdllLngLat)
bdmc.value = getText(bdmcLngLat)
const degree = {
x: lnglat.lng,
y: lnglat.lat,
}
const cartesian = coord.transformWGS84ToCartesian(degree)
car3.value = cartesian
}
const transFromBdmc = () => {
const coord = LarkExplorer.Coordinate
const bdmcLngLat = getLngLat(bdmc.value)
const bdllLngLat = coord.convertBdMC2LL(bdmcLngLat)
console.log(bdllLngLat)
bdll.value = getText(bdllLngLat)
const lnglat = coord.transformBD2WGS(bdllLngLat)
wgs84.value = getText(lnglat)
const gcjLnglat = coord.transformBD2GCJ(bdllLngLat)
gcj.value = getText(gcjLnglat)
const degree = {
x: lnglat.lng,
y: lnglat.lat,
}
const cartesian = coord.transformWGS84ToCartesian(degree)
car3.value = cartesian
}
function getLngLat(text: string) {
const arr = text.split(',')
return {
lng: Number(arr[0]),
lat: Number(arr[1]),
}
}
function getText(lnglat: any) {
const { lng, lat } = lnglat
return lng + ',' + lat
}
</script>
运行效果
更多示例