#### Declaration

property ScaleX: double;

#### Description

Specifies the horizontal scale factor.

In the common representation A:B (e.g. 1:100000), where A is the size in the image/model, and B the size in the real world.

ScaleX is the B value (100000).

This value and

IO.Params.DpiX determine the displayed values when measuring distances and areas (miMeasureLength, miMeasureRect or miMeasureEllipse in

MouseInteractGeneral) and displaying the ruler (

ShowRulers).

For example, DPI of 100 and Scale of 1 is the same as DPI of 200 at scale of 2, or DPI of 1000 at scale of 0.1.

Default: 1

#### Measurement and Scaling

Say you have an image that is 100 DPI (dots per inch), so that when it is printed every 100 pixels print out at a size of 1 inch (2.54cm). If TImageEnView.ScaleY/Y=1, using the measurement tool, a length of 100 pixels will naturally display as 1 inch/2.54cm. But what if we have a photograph of an object where 1 inch in the image represents 1 foot (12 inches) in the real world? This would equate to a scale of 1:12, i.e. TImageEnView.ScaleY/Y = 12. Now, when you select 100 pixels, the measurement tool will report 1 foot.

Naturally it will also work the other way. If we have a detailed image that is recorded as 100 DPI (i.e. 100 pixels = 1 inch/25.4 mm), but actually 100 pixels represents 2.5mm, the scale would be 1:0.1, i.e. TImageEnView.ScaleY/Y=0.1 (alternatively, you could set the DPI as 1000).

To make it easier, you can use TimageEnView.SetScale. In the first example we would use:

ImageEnView1.SetScale(100, 1, ieuFeet );

And in the second:

ImageEnView1.SetScale(100, 2.5, ieuMillimeters );

#### Example

// Set a scale factor so that one inch in the photo measures as one mile (i.e. 1:63360)

ImageEnView1.ScaleX := 63360;

ImageEnView1.ScaleY := 63360;

// Set a scale factor so that one cm in the photo measures as one meter (i.e. 1:100)

ImageEnView1.ScaleX := 100;

ImageEnView1.ScaleY := 100;

// Set a scale factor so that one cm in the photo measures as one micron (i.e. 1:1/10000)

ImageEnView1.ScaleX := 0.0001;

ImageEnView1.ScaleY := 0.0001;

#### See Also

◼ ScaleY◼ SetScale◼ MouseInteractGeneral