作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在尝试围绕某个点缩放我在 Java 中拥有的形状。
当我使用 AffineTransform.scale 方法时,它会根据左上角进行缩放。无论如何,缩放锚定在一个点(比如本例中的窗口中心)。
谢谢,
我
最佳答案
我同意 Hovercraft Full of Eels 的说法,正确的做法是将中心平移到左上角,缩放,然后将左上角平移回中心。
但是,如果您希望它在少于三步的时间内执行,则转换为:
x ⟼ S(x – c) + c = Sx + (c – Sc),
其中 S 是缩放变换,c 是相对于左上角的坐标中心。
因此,您需要进行缩放,然后按 c – Sc 进行翻译。
关于java - 仿射变换 - 围绕一个点缩放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17113234/
我是一名优秀的程序员,十分优秀!