我想知道在创建 ui 组件关于 x-z 平面的翻转效果时各自的图形转换。由于 swing 工具包仅支持 2d 仿射变换,因此只需使用 2d 即可完成。
http://www.verysimple.com/flex/flipcard/ ....是要实现的效果的示例。
最佳答案
不是真正的 3-D 翻转,但如果您只是像这样进行 2-D 缩放,效果看起来非常相似,
- 渲染正面图像。
- 将 X 从 1 缩放到 0,锚定在中间。
- 渲染背面图像。
- 将 X 从 0 缩放到 1,锚定在中间。
为了模拟恒定角速度,可以这样计算缩放因子,
double scale = Math.cos(i*Math.PI/(2.0*steps));
i
是步数,steps
是模拟 90 度旋转所需的总步数。
您还可以引入一些剪切变换来模拟真正的 3-D 旋转的视角,但对于快速翻转效果并不那么明显。
关于java - 在 x-z 平面中翻转 gui 组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1313459/