Objective Views : Chapter 4 Product Overview : Measurements and Size
Measurements and Size
The Measurements property sheet is a tabbed dialog that allows the user to change the size of the canvas, unit of measurement, drawing scale, and coordinate mapping information. It is accessible in the Symbol Designer and in samples from the Edit|Measurements and Size menu item. You can configure this property sheet to hide pages that are not relevant to your end users. The Drawing Scale and Coordinate Mapping pages are advanced features that are set programmatically in most applications.
Size and Units
The Size and Units page allows the user to choose a unit of measurement and set the canvas width and height. The unit of measurement is selected from a combo box and it determines how all measurements for the given canvas are presented to the user. The canvas width and height are presented as real-world measurements in the current unit of measure. Changing the unit of measure automatically converts the canvas width and height values. The canvas width and height is the logical area that the user can scroll through in the viewport.
Drawing Scale
The drawing scale allows the user to specify what a given real-world size on the canvas represents. It influences how measurements are presented to the user. If you use the drawing scale to indicate that 1 inch = 1 foot, then all measurements are scaled by a factor of 12. If your mapping mode is MM_LOENGLISH (1 logical unit = 0.01 inch), then 1 logical unit would be presented to the user as 0.01 * 12 = 0.12 inches. This does not literally scale the object or zoom in. The drawing scale only determines how measurements are taken.
The default drawing scale is 1:1, so that real-world measurements in the user’s domain match real-world measurements on the output device.
Coordinate Mapping
The coordinate mapping defines how logical units are mapped onto device units. A coordinate mapping consists of a mapping mode, physical extents, and logical extents. See documentation for CDC::SetMapMode() in the MFC Class Library Reference for more information on mapping modes and extents.
The following table shows the relationship between each field with the Windows GDI in addition to the default value for each field.
Field
Corresponding GDI function
Default Value
Mapping Mode
CDC::SetMapMode()
MM_ANISOTROPIC
Physical Extents
CDC::SetViewportExt()
X=1000, Y=1000
Logical Extents
CDC::SetWindowExt()
X=1000, Y=1000
The default coordinate mapping is equivalent to MM_TEXT, where 1 logical unit equals 1 device unit (pixel). If the screen resolution is 96 dpi, then 1 logical unit equals 0.0104167 inches on the screen.