确定D3中的纬度/经度视图边界

时间:2013-11-25 22:36:28

标签: javascript d3.js

我有一些非常类似于D3 example的东西,区别在于单个州而不是整个国家。我希望在用户放大到一定程度后以纬度/经度提取"view bounds",以便我可以在该区域上向他们提供信息。

它似乎是以下的一些组合:

  • d3.geo.bounds / path.bounds(不考虑缩放/平移)
  • SVG的翻译/比例
  • projection.invert?

我看到一堆使用projection()函数的纬度/长点到笛卡尔空间的例子,但是在另一个方向没有任何东西(例如在地图上任意点击 - > lat / long,显示lat / long地图中心随缩放/平移等变化。)

1 个答案:

答案 0 :(得分:0)

D3有invert() function。它完全按照您的意愿执行 - 您传递屏幕坐标并返回未投影的坐标。

此功能是投影的成员,因此只要您使用投影进行缩放/平移,您就不需要明确说明。要获得角点,您可以简单地获取中心点(您知道,因为这是您设置缩放的方式)和SVG的尺寸。