Javascript 谷歌地图API:Bé;zier曲线多段线包裹

Javascript 谷歌地图API:Bé;zier曲线多段线包裹,javascript,google-maps,google-maps-api-3,drawing,maps,Javascript,Google Maps,Google Maps Api 3,Drawing,Maps,通过使用贝塞尔曲线多段线绘制功能,我能够从地图上的一个点到另一个点绘制一条曲线。问题在于,该函数没有考虑到这样一个事实,即当一个点超过最大坐标标记时,它不一定位于地图的另一侧,因为它会环绕 例如,画一条从西雅图到东京的曲线。一条规则的多段线可以横穿太平洋,但曲线向东划过整个地球 测地线:true在这种情况下不起作用,因为直线必须具有一致的曲率 我的问题是:是否可以绘制一条考虑地图环绕的一致曲线?使用的第三个“nowrap”参数强制所有相关点具有相同的符号(将其设置为true,默认为false)

通过使用贝塞尔曲线多段线绘制功能,我能够从地图上的一个点到另一个点绘制一条曲线。问题在于,该函数没有考虑到这样一个事实,即当一个点超过最大坐标标记时,它不一定位于地图的另一侧,因为它会环绕

例如,画一条从西雅图到东京的曲线。一条规则的多段线可以横穿太平洋,但曲线向东划过整个地球

测地线:true
在这种情况下不起作用,因为直线必须具有一致的曲率

我的问题是:是否可以绘制一条考虑地图环绕的一致曲线?

使用的第三个“nowrap”参数强制所有相关点具有相同的符号(将其设置为true,默认为false)


是的,它可以,您的代码是什么样子的?你能提供一个证据来证明这个问题吗?你有没有试过在国际日期线上从西雅图到东京的曲线上加一个点?
gmarkers[10].setPosition(new google.maps.LatLng(35.689488,139.69170)); // Tokyo
gmarkers[0].setPosition(new google.maps.LatLng(47.60621,(360-122.332071),true)); // Seattle
boundsCenter.setPosition(new google.maps.LatLng(36.096756,(360-178.986565),true)); // control point 1
gmarkers[6].setPosition(new google.maps.LatLng(48.511996,180)); // control point 2

var curvedLine = new GmapsCubicBezier(gmarkers[0].getPosition().lat(), gmarkers[0].getPosition().lng(), boundsCenter.getPosition().lat(), boundsCenter.getPosition().lng(), gmarkers[6].getPosition().lat(), gmarkers[6].getPosition().lng(), gmarkers[10].getPosition().lat(), gmarkers[10].getPosition().lng(), 0.01, map);