d3.geo中的仿射变换(欧拉角旋转)

时间:2015-10-11 21:59:37

标签: d3.js rotation geo d3.geo

我想在d3.geo中针对原点逆时针旋转国家多边形。

例如,让我们围绕一个λ= 0.5,φ= 49.9的点旋转意大利-7.2度。首先,我们需要transform将那些欧拉角转化为仿射变换参数。在我们的例子中,参数将是:

affine(0.5, 49.9, -7.2)
   scaleX      rotY    transX       rotX    scaleY   transY
0.9921147 0.1253332 -6.250186 -0.1253332 0.9921147 0.456143

当我使用带有此类参数的QGIS仿射变换插件时,生成的地图为here

当我在d3.js中对projection.stream应用相同的参数时,结果非常不同(且不正确):https://bl.ocks.org/memoryfull/946a8172d074a865c4ff

我正在我的代码中正确处理投影流,因为(1,0,0,0,1,0)仿射变换产生了没有变换的预期结果。

提前感谢您的帮助。

0 个答案:

没有答案