我想“飞行”(3D)弧添加到我的正投影,如图here,但剪报,而不是淡入淡出效果。这似乎很难,因为弧线是独立于投影创建的。开始,结束和大圆中点沿着从画布的中心的线延伸 - - (每个电弧通过从投影获得三个点定义但电弧本身是使用在对应的“2D”基数插值绘制)裁剪非突出元件(正投影)
我的第一个想法是,我可能需要做一些球形几何来获得剪切发生的坐标,但现在我想知道是否有一个更直接的方法来完成这个(我D3是新的)。
这是我的地图是什么样子没有削波:
我想“飞行”(3D)弧添加到我的正投影,如图here,但剪报,而不是淡入淡出效果。这似乎很难,因为弧线是独立于投影创建的。开始,结束和大圆中点沿着从画布的中心的线延伸 - - (每个电弧通过从投影获得三个点定义但电弧本身是使用在对应的“2D”基数插值绘制)裁剪非突出元件(正投影)
我的第一个想法是,我可能需要做一些球形几何来获得剪切发生的坐标,但现在我想知道是否有一个更直接的方法来完成这个(我D3是新的)。
这是我的地图是什么样子没有削波:
我也很绿色D3,幸好我也从我自己的搜索为裁剪飞行一个体面的解决方案新鲜在正字法线。您链接到该演示是在很多方面聪明不止一个:
在绘制投影,二维坐标花键消除了任何选择在投影之前分割线,让视觉平滑便宜,即使d3有t他本身就具有功能性(反正我一直无法找到)。这意味着插值必须更加手动。
我首先想到的是,我可能需要做一些球面几何来获得,其中剪裁发生的坐标,但现在我不知道是否有做到这一点
在一个更简单的方法
Po
和Pd
分别和全球中心C
,你正在寻找C x (Po x Pd)
标准化scale
之间的坐标(读:仰角)地面为飞行线要确定飞行路径中的哪个位置需要拼接您的剪切点,您可能需要将剪切点的较大角度与一端或端对端进行比较。另请注意,性能会受到影响,但您仍然可以对示例中绘制的航班线数量感到满意。