Output devices vary greatly in the builtin coordinate systems they use to address actual pixels within their display area. Therefore, in a device independent imaging model, there must exists at least two coordinate systems: One referring to the actual device, called the Device Coordinate System (DCS), and one coordinate system completely independent of the device coordinate system, sometimes called the world coordinate system but here called the Canvas Coordinate System(CCS) since it is related to the canvas (see The Canvas).
The implementation of Bifrost with respect to an actual device defines a transformation between these two coordinate systems. The user applications can thus draw in the device independent coordinate system, while Bifrost is making sure that the picture will be transformed into device coordinates, and that the picture can be drawn (identically) on different devices.
The transformation between the CCS and the DCS coordinate systems is not an ordinary geometric transformation. The DCS relates to the device and the device coordinates are typically integers. Bifrost does not restrict the CCS coordinates to be integer values. In cases where CCS is defined in, say, floating point coordinate values, the transformation includes, beside the normal geometric transformation, a mapping from real values to integer values. The default unit on the axes of the CCS coordinate system is currently dertermined by the pixel size of the DCS, but can be changed as needed.
In later chapters new coordinate systems will be introduced. The CCS is the world coordinate system of Bifrost, implying that all coordinate systems are initially defined to be CCS. The next section explains how to obtain geometric transformations by applying matrices to the coordinates.
The Bifrost Graphics System  Reference Manual  © 19912004 Mjølner Informatics 
[Modified: Monday October 16^{th} 2000 at 13:43]
