问题 SVG:何时使用animVal / baseVal


什么时候SVG元素的animVal和baseVal不同。何时是使用它们获得正确值的适当时间。可以基于读取逐字差异 这里但是当所有这些值都不同时,我更关心。任何转换或缩放都会影响它吗?

在SO上另一篇文章 这里

function rectCorner(rect){
pt.x = rect.x.animVal.value + rect.width.animVal.value;
pt.y = rect.y.animVal.value + rect.height.animVal.value;
return pt.matrixTransform(rect.getTransformToElement(svg));
}

在这里使用animVal的理由是什么?

谢谢, BSR。


6041
2018-05-04 18:08


起源



答案:


这些属性仅在使用时有所不同 SVG动画元素  <animate><set><animateColor><animateTransform>, 要么 <animateMotion>。如您提供的链接中所述, baseVal 和 animVal 如果没有应用显式动画,则会相同。

使用的理由 animVal 在上面是它将是相同的 baseVal 在大多数情况下,但关于动画的概率  应用和运行它将表示属性的当前值,而不是过去某个时刻的值。


12
2018-05-04 21:17