About working with the map display
The Display library contains a set of objects that allow you to easily draw graphics on a variety of output devices and render shapes stored in real-world coordinates to the screen and the printer, as well as to export files. Application features, such as scrolling, backing store, print tiling, and printing to a frame, can easily be implemented. If a desired behavior is not supported by the standard objects, custom objects can be created by implementing one or more of the standard display interfaces.
The Display objects abstract a drawing surface. A drawing surface is any hardware device, export file, or memory stream that can be represented by a Windows Device Context. Each display manages its own Transform object, which handles the conversion of coordinates from real-world space to device space and back. The following standard displays are provided:
- ScreenDisplay—This display abstracts a normal application window and implements scrolling and backing store (multiple backing layers are possible).
- SimpleDisplay—This display abstracts all other devices that can be rendered to using a Windows Device Context, such as printers, metafiles, bitmaps, and secondary windows.
This DisplayTransformation object defines how real-world coordinates are mapped to an output device. Three rectangles define the transformation. Bounds specifies the full extent in real-world coordinates. VisibleBounds specifies what extent is currently visible. DeviceFrame specifies where VisibleBounds appears on the output device. Since the aspect ratio of DeviceFrame may not always match the aspect ratio of the specified VisibleBounds, the transformation calculates the actual visible bounds that fit DeviceFrame. This is called FittedBounds and is in real-world coordinates. All coordinates can be rotated around the center of the visible bounds by setting the transformation's Rotation property.
Development licensing | Deployment licensing |
---|---|
ArcView | ArcView |
ArcEditor | ArcEditor |
ArcInfo | ArcInfo |
Engine Developer Kit | Engine Runtime |