Previous: Element Selectors and Iterators
Next: The Stylus
The Network Plane
All concepts described so far dealt with the internal representation of
network data and were not related at all to the graphical user interface
provided by Enif. So let's now turn our attention to the graphic display
of Enif and the basic concepts behind it.
In Enif the term network plane is used to denote an abstract
functionality which provides the possibility to display arbitrary drawings
(usually depicting transportation networks, hence the name network plane)
and texts on the screen or on other output devices.
The network plane only offers the necessary infrastructure to display drawings
and texts. It does, however, not generate any of those itself. The ``clients''
which are using the services of the network plane are the mappers.
These are described in a separate section below.
Without going into too many technical and implementational details, here
is a list of the services provided by the network plane:
- The network plane itself, an abstract surface on which
drawing and texts can be generated using a well defined set of drawing
and writing functions.
- The network plane window which provides an on-screen view
of all or part of the network plane.
- A legend window, in which additional information describing
the parameters used to create the plot are displayed for documentation and
reference.
- A magnifier feature which can display a part of the current
view at a magnified scale.
- A mechanism which obtains the bounding box of each
currently defined mapper (i.e. the coordinate rectangle which bounds
the region in which
the mapper wants to display its information) and allows the mappers to
update this information whenever it changes.
- Coordinate transformations from user defined
network coordinates to screen coordinates and vice versa.
- A view control system which provides all necessary facilities to
define and change the view, i.e. the part of the network plane which is
currently visible in the network plane window.
This implies all the necessary infrastructure and controls to
allow zooming, panning, scrolling of the network window,
as well as accessing previous or predefined windows or
returning to the full view window.
- A view updating mechanism which will inform the clients
when a new part of the network plane becomes visible and needs to
be (re-)drawn.
- A system to dispatch interactive user input (mouse events and key
strokes) to either the view control system or to the active input mapper.
- A print facility which sends the current plot to be output on
a printer - either the content of the entire network plane or only the
current view.
Previous: Element Selectors and Iterators
Next: The Stylus
Enif - Toward a New Interface for EMME/2, Heinz Spiess, October 2000