在内联 SVG 上应用平移和缩放
Apply panning and zooming on inline SVG
所以我们有了这个主要项目,我们的目标是通过使用内联 SVG 创建一个简单的寻路系统,该 SVG 包括缩放和平移功能,目标是部署在触摸屏设备上。我们想创建类似 google 地图或类似这样的东西:http://bl.ocks.org/mbostock/3892919
我们真的很想使用这个插件,但是一切都在脚本中预定义了,我们真的不知道如何在内联 SVG 上使用它(或者也许有人帮助我们解释整个代码是如何工作的,也许会教我们如何使其适用于内联 SVG,因为我们是纯粹的业余爱好者。)。找了很多插件,好像都不合适
如有疑问,只是 scale/move 一切。
Zooming essentially involves making the elements bigger/smaller
according to your zoom level and panning involves making the elements
move in relation to your viewport.
所以:
在每个缩放级别上,遍历所有路径并 scale 它们
适当的系数.
对于平移,您只需 translate(移动)您的 SVG 元素到
您平移的相反方向。
您可以通过查看以下内容了解有关 scaling/translating SVG 元素的更多信息:SVG transformations
另一方面,一些谷歌搜索(即弹出的第一个结果)变成 this neat library,这对于您的目的来说看起来非常简单。
所以我们有了这个主要项目,我们的目标是通过使用内联 SVG 创建一个简单的寻路系统,该 SVG 包括缩放和平移功能,目标是部署在触摸屏设备上。我们想创建类似 google 地图或类似这样的东西:http://bl.ocks.org/mbostock/3892919
我们真的很想使用这个插件,但是一切都在脚本中预定义了,我们真的不知道如何在内联 SVG 上使用它(或者也许有人帮助我们解释整个代码是如何工作的,也许会教我们如何使其适用于内联 SVG,因为我们是纯粹的业余爱好者。)。找了很多插件,好像都不合适
如有疑问,只是 scale/move 一切。
Zooming essentially involves making the elements bigger/smaller according to your zoom level and panning involves making the elements move in relation to your viewport.
所以:
在每个缩放级别上,遍历所有路径并 scale 它们 适当的系数.
对于平移,您只需 translate(移动)您的 SVG 元素到 您平移的相反方向。
您可以通过查看以下内容了解有关 scaling/translating SVG 元素的更多信息:SVG transformations
另一方面,一些谷歌搜索(即弹出的第一个结果)变成 this neat library,这对于您的目的来说看起来非常简单。