我需要一个二维坐标系来呈现用户空间坐标系来摆动屏幕上的组件。现在这正是Java2D所做的。但我还需要进一步移动屏幕和坐标系的相对位置以获得一种滚动。Java2D中可以移动坐标系吗?
在Java 2D中,默认后代(0,0)位于计算机图形学中常见的左上角。
可以移动点吗? 如果是:我该怎么办?
在此先感谢。
我需要一个二维坐标系来呈现用户空间坐标系来摆动屏幕上的组件。现在这正是Java2D所做的。但我还需要进一步移动屏幕和坐标系的相对位置以获得一种滚动。Java2D中可以移动坐标系吗?
在Java 2D中,默认后代(0,0)位于计算机图形学中常见的左上角。
可以移动点吗? 如果是:我该怎么办?
在此先感谢。
您可以更改使用translate()函数的坐标系。例如:
Graphics2D g; // Assume this is already initialized
g.drawLine(100, 100, 200, 200); // Draw in the default coordinate system
g.translate(100.0, 100.0); // Move the origin down and to the right
g.drawLine(0, 0, 100, 100); // Draw the same line relative to new origin
您还可以使用scale(),rotate()和shear()来进行坐标系统的更强大的转换。 欲了解更多信息,请查阅此页:http://docstore.mik.ua/orelly/java-ent/jfc/ch04_03.htm