Aci*_*dic 2 java swing graphics2d
我有一个Graphics2D用来绘制我的物体Canvas.我在它上面绘制了多个形状,Canvas并且只想转换它们中的一个(或部分).
我会尽量保持这个简单:
void render(Graphics2D g) {
... // Draw shape 1
... // Draw shape 2
... // Draw shape 3
}
Run Code Online (Sandbox Code Playgroud)
如何在保持形状1和3完好无损的情况下旋转形状2?通过"旋转"我的意思是旋转围绕其中心点,我们可以定义为x和y的例子.
我一直在寻找一种方法来做这件事,但找不到任何可行的方式.
有没有简单的方法来做到这一点?
而不是围绕它的中心点旋转形状,旋转然后平移画布.要围绕形状的中心旋转(x, y),首先平移画布(-x, -y),然后旋转画布-d角度并在(0,0)处正常绘制形状.
完成后,向后旋转然后平移(注意,通过这些几何变换,顺序很重要,平移然后旋转会给你一个完全不同的结果).
这意味着您仍然可以在任何旋转处绘制对象,而无需自己重新计算坐标.
| 归档时间: |
|
| 查看次数: |
5935 次 |
| 最近记录: |