如何把D3 svg转换成topojson / geojson?

时间:2015-02-01 19:16:47

标签: svg d3.js geojson topojson

D3允许转换geojson / topojson点数组'坐标

[ [x,y],[x,y],[x,y],...]    // aka, a geojson arc.

并且,通过投影,进入svg路径

<path d="M x,y x,y x,y ..."></path>  // aka, an svg-xml path

注意:值实际上会发生变化。 topojson中的Points [x,y],通过projection([x,y])为svg的路径获取新值。

所以,如果我们存储在svg:

  1. 投影名称

  2. 相对于svg origine 0,0(已存储在路径中)的点绝对坐标。

  3. 使用projection.invert()

  4. 我们可以从xml转换回topojson / shp,包括手工添加的形状。

    到目前为止,我还没有意识到任何开源工具都这样做。

    问题变成:我应该在svg中存储哪些最低要求,以便将其转换回gis格式?(我可能错过了一些点)


    修改:了解这一点后,处理PointLineStringPolygonMultiPointsMultiLineStrings的复杂性,MultiPolygons现在不是问题。只需要最低要求就可以实现向后转换。

    Edit2:转换回geojson可能会更容易,因为svg和geojson数据结构更相似。

0 个答案:

没有答案