SVG元素的“原样”边框

时间:2012-07-11 16:17:30

标签: javascript svg

我想创建一个Gizmo来编辑SVG对象。 现在,我正在努力解决的问题是下一个: 我有一个对象。 Gizmo出现在对象周围,因此可以缩放,平移和旋转对象。我需要做的是按原样查找对象的边框,因为Gizmo应始终显示为:http://s16.postimage.org/kipdum2v9/example.png (如果有人徘徊,粉红色是物体,黑色中风是小发明)

P.S。请不要建议使用现有的编辑。

1 个答案:

答案 0 :(得分:1)

我认为您正在使用边界框查找形状的接触点。 一般来说你的问题似乎很难解决,因为SVG形状的定义可以是模糊(过滤器等)。

只要您的形状是路径,一种简单但近似的方式可以使用接口SVGPathElement的getPointAtLength方法。采样合理数量的点,并保持极值。这些应该接近要求的点数。

也许你可以利用getBBox()返回的值来细化近似值。