|
The JCanvas architecture
This section describes the top-level architecture of JCanvas and
associated components. The canvas has a well-defined internal
architecture, consisting of panes, layers, and figures. The JCanvas
class provides screen real-estate and event-routing for the contained
pane. A pane provides a floating-point coordinates system in which
Java2D can be used freely, and contains a stack of drawing and
event-handling layers. One of these layers, FigureLayer, contains a
collection of recursively-defined figures. Any level in this
hierarchy can have an affine transform attached to it, thus allowing
scaling and translation at any level. In addition, panes can be
embedded within figures, providing for arbitrary nesting of
visualization and editing components.
|