有没有办法在webkit CSS 3d转换后获得一个边界框?

时间:2010-08-24 10:46:49

标签: 3d webkit

我正在使用Safari 3d变换来做一些效果。我想使用经典的Coverflow效果放下一些图像。问题是我想知道每个图像用

旋转后的确切宽度
-webkit-transform : rotateY( angle deg);

注意我甚至应用透视。

当然,DOM给出了原始图像的宽度,但是如何获得边界框或只是宽度?我尝试使用余弦和三角函数,但我得到的数字与屏幕上的结果不同。可能这是由于观点。无论如何要计算旋转后的宽度我刚做完:ImageWidth * cos(angle)。如果有办法获得转换对象的边界框,我将完成它。

1 个答案:

答案 0 :(得分:1)

我自己还没有对此进行测试,但想到的一个潜在解决方案是在旋转图像的每个角上模拟鼠标事件,然后使用这些事件的属性来查找边界区域。

This question有一个解决方案,用于调度传入一些参数的鼠标事件。在您的情况下,在从图像调度的模拟鼠标事件中,layerXlayerY将在对象中空间。然后你可以听取该事件并使用其pageXpageY来获取世界空间中的坐标。

这主要是推测性的,但如果一个虚假的鼠标事件就像一个真实的事件,你应该能够获得这些数字,而不需要繁琐的数学运算。