Threejs加载一个省份模型,如何与经纬度坐标关联?有别的技术方案能实现也行的

图片描述

需求大概是这样的,某个城市有我们的设备,然后需要一个立体展示的模型,现在模型有了,但是设备是地理定位的,现在怎么让这个设备精确的显示在这个模型上,这地理坐标和xyz坐标怎么关联(可不考虑z轴坐标)

阅读 8.5k
2 个回答

已有解决方案
threejs画地图是完全可行的
查阅了大量资料后 发现要使用geojson来绘制地图模型
什么是geojson
https://www.oschina.net/trans...
其中参考了一个开源的threejs geojson源码
https://github.com/freedomTT/...
另外你还需要了解下墨卡托投影
https://baike.baidu.com/item/...
其中还用到了 d3的经纬度转墨卡托的方法geoMercator
当了解这些之后,相信你心中已经有了绘制地图关联坐标的方法(demo源码都有了 不回写还不会抄吗???)。

1 经纬度转成墨卡托坐标,这个算法很简单,自己搜一下;
2 墨卡托坐标可以直接对应xy坐标,也可以等比缩放后在展示;
3 如果需要three.js的中心点在上述省份的某一点,所有经纬度坐标在转换前需要偏移:(lon - center.lon, lat - center.lat)

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题