3

我通过设置属性 transform="rotate(45)" 旋转了一个 SVG 路径元素

现在我怎么能得到旋转的 SVG 路径点?

当我检查属性“d”时,它仍然显示原始点[未旋转]。

4

2 回答 2

4

如果您通过 path.getPointAtLength() 获得点,则需要将路径转换应用于结果。您通过以下方式获得总转换:

var t = path.getTransformToElement( path.ownerSVGElement );
var abspoint = path.getPointAtLength( 0.5 ).matrixTransform( t );

我没有对此进行测试,但这可能是这种方式......

这对路径上的某些点有好处。如果应该将整个路径数据列表转换为绝对数据,那么 raphael 可能是最快的解决方案......

于 2012-11-22T09:52:53.287 回答
3

svg 本身没有提供该功能的功能。在 jQuery 中也没有 AFAIK。

javascript 库 Raphaël 包含您想要的实用方法,请参阅Raphael.transformPath

于 2012-11-22T09:45:01.780 回答