我使用boost geometry (v1.75)进行正向和反向坐标变换,这工作Ok。
namespace bg = boost::geometry;
namespace bm = bg::model::d2;
bg::srs::projection<bg::srs::static_epsg<3785> > transform;
bm::point_xy<double, bg::cs::geographic<bg::degree> > origin = { -3.04081, 53.4427}, longLatOut;
bm::point_xy<double, bg::cs::cartesian> xy;
transform.forward(origin, xy);
transform.inverse(xy, longLatOut);
我想计算一个新的点,作为在我的地理原点(LatLong)上添加偏移x,y米的结果-精度很重要。我不知道该怎么做。有人能提供使用boost库的最佳方法的任何指导吗?
海军学校规则
据我所知,boost没有地图投影功能,也许你可以试试PROJ库。