在x-z平面中翻转gui组件

时间:2009-08-21 18:10:46

标签: java user-interface graphics

我想知道相应的图形变换..在创建ui分量关于x-z平面的翻转效果。它需要仅使用2d来完成,因为swing工具包仅支持2d仿射变换。

http://www.verysimple.com/flex/flipcard/ ....是要实现的效果的一个例子。

1 个答案:

答案 0 :(得分:2)

不是真正的3-D翻转,但如果你只是像这样进行2-D缩放,效果看起来非常相似,

  1. 渲染正面图像。
  2. 将X从1缩放到0,固定在中间。
  3. 渲染背面图像。
  4. 将X从0缩放到1,固定在中间。
  5. 为了模拟恒定的角速度,可以像这样计算比例因子,

    double scale = Math.cos(i*Math.PI/(2.0*steps));
    

    i是步数,steps是模拟90度旋转所需的步数。

    你也可以引入一些剪切变换来模拟真正的3-D旋转的视角,但是快速翻转的效果并不明显。