Просмотр исходного кода

fix: GCJ02ToWGS84 accuracy

tags/3.0.0
Disappear520 2 лет назад
Родитель
Сommit
ca0ced379d
Аккаунт пользователя с таким Email не найден
1 измененных файлов: 12 добавлений и 4 удалений
  1. 12
    4
      modules/transform/CoordTransform.js

+ 12
- 4
modules/transform/CoordTransform.js Просмотреть файл

@@ -73,10 +73,18 @@ class CoordTransform {
if (this.out_of_china(lng, lat)) {
return [lng, lat]
} else {
let d = this.delta(lng, lat)
let mgLng = lng + d[0]
let mgLat = lat + d[1]
return [lng * 2 - mgLng, lat * 2 - mgLat]
let out = [lng, lat]

let gcj02_point = this.WGS84ToGCJ02(lng, lat)
let dlng = gcj02_point[0] - lng
let dlat = gcj02_point[1] - lat
do {
gcj02_point = this.WGS84ToGCJ02((out[0] -= dlng), (out[1] -= dlat))
dlng = gcj02_point[0] - lng
dlat = gcj02_point[1] - lat
} while (Math.abs(dlng) > 1e-7 || Math.abs(dlat) > 1e-7)

return out
}
}


Загрузка…
Отмена
Сохранить