我需要一个 2D 坐标系来渲染用户空间坐标系以在屏幕上摆动组件。这正是Java2D 所做的。但我需要进一步移动屏幕的相对位置和坐标系以获得一种滚动。
在 Java 2D 中,默认的后代 (0,0) 位于左上角,这在计算机图形学中很常见。
可以移动点吗?如果是:我该怎么做?
提前致谢。
我需要一个 2D 坐标系来渲染用户空间坐标系以在屏幕上摆动组件。这正是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