When generating a Quick Section, you enter Horizontal and Vertical Scales as a ratio of consistent units. For example, a 1:100 scale would mean that 1 m on the Section would represent 100 m in real life (or similarly, 1 ft on the Section would represent 100 ft in real life).
Similarly, when printed on a Quick Section template using the Horizontal Scale object and Vertical Scale object, the scale is represented as a ratio:
However, when working with Imperial units, it is common to express scales as a ratio where one inch on the drawing represents a specific number of feet in real life, such as 1”=20’ or 1”=100’.
This article provides guidance on how you can use Imperial scales on Quick Sections.
When working with Imperial scales, you will still need to enter your scale as a ratio of consistent units. You will want to use a scale factor that is a multiple of 12.
The table below lists the ratio you would need to use for some common Imperial scales:
Imperial Scale | Scale Ratio |
1”=10’ | 1:120 |
1”=20’ | 1:240 |
1”=30’ | 1:360 |
1”=40’ | 1:480 |
1”=50’ | 1:600 |
1”=60’ | 1:720 |
1”=70’ | 1:840 |
1”=80’ | 1:960 |
1”=90’ | 1:1080 |
1”=100’ | 1:1200 |
1”=150’ | 1:1800 |
1”=200’ | 1:2400 |
1”=300’ | 1:3600 |
1”=400’ | 1:4800 |
1”=500’ | 1:6000 |
To print an Imperial scale on a Quick Section template, you will need to use a Data Label Text object instead of a Horizontal Scale object or Vertical Scale object.
You can then use Expressions, along with the [Section.HorizontalScale] and [Section.VericalScale] Section Functions, to generate the Imperial Scale, as described below.
These expressions will print the horizontal and vertical scales in 1”=XX’ Imperial scale format:
'1" = ' + text([Section.HorizontalScale]/12,'0') + '\''
'1" = ' + text([Section.VerticalScale]/12,'0') + '\''
These are slightly more complex expressions for printing the scales. They use an if() expression to decide if the scale should be printed in Imperial scale format or as a ratio.
The expressions use the % modulus operator to check if the denominator of the Horizontal Scale is a multiple of 12. If it is, it uses the Imperial scale format. If it is not, it prints the scale as a ratio.
if(
[Section.HorizontalScale] % 12 = 0,
'1" = ' + text([Section.HorizontalScale]/12,'0') + '\'',
'1:'+ text([Section.HorizontalScale],'0')
)
if(
[Section.VerticalScale] % 12 = 0,
'1" = ' + text([Section.VerticalScale]/12,'0') + '\'',
'1:'+ text([Section.VerticalScale],'0')
)
Another thing you might want to do when working with Imperial scales is use Grid and Axis Tick Intervals within the Strip Area that are equal to 1 inch so that they conveniently align with the scale.
Note – When a Quick Section is generated, OpenGround ensures that nice whole numbers are used for the Grid and Axis Intervals. Accordingly, the approach below only works when using a denominator for the scale that is a multiple of 12. If that is not the case, the intervals will not be a nice whole number and the program will round to a more suitable interval, which will not be 1 inch.
This expression can be used to generate 1-inch Horizontal Grid Intervals and Vertical Axis Tick Intervals when an Imperial scale is used:
[Section.VerticalScale]/12
This expression can be used to generate 1-inch Vertical Grid Intervals and Horizontal Axis Tick Intervals when an Imperial scale is used:
[Section.HorizontalScale]/12