我已经在我的力有向图中添加了一个平移/缩放元素。只有当我在一个节点上时,它才起作用。
我希望发生的是,当我单击一个节点时,平移停止,这样我就可以移动该节点。但可以说,当我在“背景”上时,我可以移动图表。
另外,我需要使用鼠标滚轮在所有时间放大或关闭图形的能力,但也有一个缩放的边界?为了绕过这个问题,我必须以某种方式限制规模吗?
__________________________________________________Fixed
我已经通过在其他地方调用redraw()对它进行了排序。我有我的“SVG”,然后我有我的“内在”在上面。所以我在SVG上调用了重绘,现在它只在我离开节点时工作,这比只在节点上工作要好得多。
因此,当我将它移到它后面的层时,“SVG”它工作得很好,因为我的SVG是一个“画布”,所有的东西都在其中。因此,鼠标位置现在与SVG交互,从而调用“重绘”。
我这样说对吗?
发布于 2014-12-02 00:59:26
如果您希望缩放仅在背景上触发,那么您可以创建一个" rect“元素,并从该rect元素调用缩放行为。如果在附加任何其他元素(或在它们下面插入)之前将此元素附加到SVG画布,则当您在背景(矩形)上单击并拖动时,您将获得平移和缩放,但是当您单击并拖动在其上方绘制的任何内容时,您将获得与这些元素相关联的行为。
矩形应该具有SVG画布的大小和宽度,并且填充不透明度为0,这样它就是不可见的。
https://stackoverflow.com/questions/27226204
复制相似问题