19.3. Drawing on a Component
Before I get into the specifics of how you draw on a component, let's understand the principle ideas behind it. When you draw on a component using the Java 2D capabilities, two coordinate systems are involved. When you draw something—a line or a curve, for example—you specify the line or the curve in a device-independent logical coordinate system called the user coordinate system for the component, or user space. By default, this coordinate system has the same orientation as the system that I discussed for positioning components in containers. The origin is at the top-left corner; the positive x-axis runs from left to right, and the positive y-axis from top to bottom. Coordinates are usually specified as floating-point values, although you can also use integers.
A particular graphical output device will have its own device coordinate system, or device space, as illustrated in Figure 19-4. This coordinate system has the same orientation as the default user coordinate system, but the coordinate units depend on the characteristics of the device. Your display, for example, will have a different device coordinate system for each configuration of the screen resolution, so the coordinate system when your display is set to a resolution 1024x768 pixels will be different from the coordinate system for 800x600 pixels.
Figure 19.4. Figure 19-4
Incidentally, the ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access