我在Java中进行了转换:
AffineTransform transform = new AffineTransform();
transform.translate(x, y);
transform.rotate(Math.toRadians(rotation));
transform.translate(-x, -y);
我在构成矩形的四个点上使用它。变换按照预期在原点(x,y)周围旋转,但我希望最左边的点保持原点x所在的位置,并且最高点保持原点y所在的位置。
任何想法如何修改转换来实现这个目标?
答案 0 :(得分:0)
我通过搜索所有点,找到极左点和极端上点,然后通过这些坐标偏移变换中的所有点来解决这个问题。虽然它真的很乱,所以如果有人碰巧有更好的解决方案,我会全力以赴。