Javascript getBoundingClientRect()旋转对象

Javascript getBoundingClientRect()旋转对象,javascript,rotation,Javascript,Rotation,我有一个通过transform=“rotate(45,0,0)”旋转的矩形SVG对象。在对象上使用getBoundingClientRect()会给出边界框的宽度和高度,该宽度和高度随旋转而不正确 var rectangle = object.getBoundingClientRect() var width = Math.sin(radian) * rectangle.height + Math.cos(radian) * rectangle.width var height = Math.s

我有一个通过transform=“rotate(45,0,0)”旋转的矩形SVG对象。在对象上使用getBoundingClientRect()会给出边界框的宽度和高度,该宽度和高度随旋转而不正确

var rectangle = object.getBoundingClientRect()
var width = Math.sin(radian) * rectangle.height + Math.cos(radian) * rectangle.width
var height = Math.sin(radian) * rectangle.width + Math.cos(radian) * rectangle.height
我已经搜索并尝试了许多计算,以获得旋转的原始宽度和高度

var rectangle = object.getBoundingClientRect()
var width = Math.sin(radian) * rectangle.height + Math.cos(radian) * rectangle.width
var height = Math.sin(radian) * rectangle.width + Math.cos(radian) * rectangle.height

我发现,在这个问题上还有很多其他的变化,任何关于正确使用公式的帮助都会很好。我只知道getBoundingClientRect()中的值和弧度。

您想要的轴心点是什么?矩形的中心或左下角?矩形的中心花了数小时在这上面,只需使用var rectangle=object.getBBox()即可,无需任何计算……您想要的轴心点是什么?矩形的中心或左下角?矩形的中心花了数小时在这上面,只需使用var rectangle=object.getBBox(),就不需要进行任何计算。。。