Smart text is made up of abbreviated codes that, combined, specify what text values are displayed in a text label or annotation. These values typically, but not always, represent dynamic measurement values for selected objects. You can enter smart text codes with the assistance of the Insert Smart Text dialog or by typing them into the Text Editor.
Each smart text code string must start by specifying a property type (see table below) followed by two or more "argument" codes that provide additional instructions specific to the selected property type. In the following simple example, the smart text specifies that the length (L for Length property) of a selected object (O for Object) is displayed along with a units suffix (T for true/yes, display a unit suffix):
@<L,O,T>@
Note: All smart text arguments strings must start with @< and end with >@.
Tip: When using smart text, you can include a "digit grouping symbol" to format (for example) "1000.00" as "1,000.00" by adding a minus sign before the smart text code for decimal precision formatting: change @<ELS,LD,T,1>@ to @<ELS,LD,T,-1>@ for example. This does not affect the decimal precision.
The following property types and codes can be used to include smart text in you text labeling. You can enter them manually in the text editor, or you can select them using the Insert Smart Text dialog.
Notes:
- For a description of each available Property type, click here...
- For a description of each Extract property from/at argument, click here...
Extract property at/from | |
Text insertion point |
Select this to derive the selected property (described above) at the insertion point of the text object. Note: By default, displayed values are formatted as defined in Project Settings. If the target does not have a name, for example, the "undefined" character is displayed (by default, this is a "?"). |
Leader point | Select this to derive the selected property at the location of the point (head) of the leader line. |
Object | Select this to derive the selected property from a point, a linear object (line, polyline, linestring, or alignment), an areal coverage object (boundary, or polygon), a surface, etc. |
Line | See Object above. |
Surface | See Object above. |
Property | |
Easting Northing | Select either of these to have the smart text entry display the easting or northing grid coordinates of the target (location or object from which you are extracting a value). |
Elevation |
Select this to display the elevation of the targeted object, or that of the referenced object at the location designated by the target. If the noted elevation is not defined at the targeted Easting/Northing, the "undefined" character is displayed. |
Station/ Distance along | Select this to display the station at which the target is located along an alignment or its distance along a line. If the target is not located on the alignment or line, this will report the station/distance along the reference line to a perpendicular projection from the target to that alignment/line. |
Offset | Select this to display the offset of an object from the target as measured perpendicular or radial to the referenced alignment/line. The value that is displayed indicates the direction of the offset: offsets to the right of the target are positive; offsets to the left are negative. |
Length | Select this to display the 2D (planimetric) length of the target alignment/line object. |
Area | Select this to display the area of the target (if the target is a closed alignment/line or a polygon object). |
Line elevation |
Select this to display the elevation of a 3D line at a point on that line as projected from the easting and northing of the target. If an elevation of the referenced line is not defined at the point projected from the target, the "undefined" character is displayed. |
Surface elevation |
Select this to display the elevation of a surface triangle at the easting/northing of the target. If the surface is not defined at the Easting/Northing, the "undefined" character is displayed. |
Surface slope | Select this to display the slope of a surface triangle at the easting/northing of the target. |
Name | Select this to display the name or point ID of the target. |
Layer | Select this to display the layer of the target. |
Feature codes |
Select this to display any feature codes associated with the target. This shows the "undefined" character if feature codes are not supported by this object, and shows no values if feature codes are supported by this object, but none are specified. |
Object-based |
Select this to display other values that are specific to a type of target object, such as a point, line, surface, etc. |
Project |
Select this to display project information in text labels in the format of @<P,*>@= |
Latitude Longitude |
Select these to display the latitude/longitude of the selected location or object. |
Height |
Select this to display the height of the selected location or object. |
Property | Extract property from/at | Code | ||
Simple properties: These properties support the extraction of simple measurement values for a variety of object types. The following example indicates that the smart text will specify that the length (L) of a selected object (O) is displayed along with a units suffix (T): @<L,O,T>@ |
||||
E = Easting N = Northing EL = Elevation S = Station/Distance along O = Offset L = Length A = Area ELL = Line elevation ELS = Surface elevation SS = Surface slope NM = Name LY = Layer FC = Feature Codes |
T = Text insertion point LD = Leader point O = Object (point, line, surface, etc.) |
Display units suffix: T = Yes F = No P = Use Project Setting to display the units suffix |
||
Object-based property: This property supports the extraction of a variety of measurement values for specific object types. The following example indicates that the smart text will specify an object-based property (OD) that displays for a selected line segment (L) a segment length (SL): @<OD,L,SL>@ |
||||
OD = Object-based |
O = Object (point, line, surface, etc. e.g., dynaview, cut/fill map, surface volume grid.) L = Line H - Sheet
Note: You do not need to select a sheet when using this code. The sheet to which the smart text is being added is used.
|
For point, line, or surface, use the codes under "Simple properties" above. For cut/fill map or surface volume grid: AC = Area of cut AF = Area of fill AZ = Area of zero volume BD = Depth to balance VC = Cut volume VF = Fill volume VN = Net volume NSI = Name of inital surface used to create the map/grid NSF = Name of final surface used to create the map/grid For dynaview: SC = Scale of dynaview VE = Dynaview vertical exaggeration VS = Dynaview vertical scale For point: PCSF = Combined scale factor PHSF = Height scale factor PLAT = Latitude PLON = Longitude PSCL = Grid scale factor PTEA = Easting PTEL = Elevation PTHG = Height PTNO = Northing For line: S% = Instantaneous Slope (in percent at a point along a line) 3DL - Segment slope length (3D length of a selected line segment) S: = Slope ratio SB = Segment bearing SL = Segment length (2D (planimetric) length of a selected line segment) SR = Segment radius For planset sheet: CT - Sheet count SI = Sheet number (sheet index) SN - Sheet Name (cross-section sheets are named by their beginning station) For takeoff site improvement - Topsoil: ET = Excess topsoil material CM = Excess topsoil config. method CP = Excess topsoil configuration parameter MT = Material layer thickness sum PN = Excess topsoil parameter name RI = Region identity SI = Site improvement name TR = Topsoil replacement material TT = Topsoil replacement thickness For takeoff site improvement - Simple subgrade: RI = Region identity SA = Subgrade adjustment thickness SI = Site improvement name For takeoff site improvement - <any other type>: MT = Material layer thickness sum RI = Region identity SI = Site improvement name For utility line: DE = Description SN = Site improvement name LL = Utility line length SL = Slope length S = Slope For utility node: DE = Description RE = Rim elevation IE = Invert elevation SN = Site improvement name RS = Station along utility run AS = Station along alignment AO = Alignment offset |
Project information property: This property supports the extraction of project information to include in the smart text. The following example indicates that the smart text will specify a project property (P) that displays the project's coordinate system (CSCS): @<P,CSCS>@ |
||
P = Project info | Not applicable. |
CSCS = Coordinate system name CSDN = Datum name CSPJ = Projection name CSVD = Vertical datum name CSZN = Zone name FOE = Field operators email FON = Field operators name FOP = Field operators phone FOF = Field operators fax OUE = Office email OUF = Office fax |
OUN = Office username OUP = Office phone PD = Project description PED = Project end date PFF = Full path of project file PFM = Modify date of project file PFN = File name of project file PN = Project name PR = Project reference number PSD = Project start date UA1 = Address 1 UA2 = Address 2 UACS = City, State UACC = Country UACE = Email UACF = Fax UACP = Phone UACW = Web UAZ Zip Code UC1 = Comment 1 UC2 = Comment 2 UC3 = Comment 3 UCN = Company name |
Note: Logically, only certain combinations of codes are valid. For example, you cannot extract a layer from a surface as surfaces do not have a layer property.
To override the decimal precision:
You can override the decimal precision (as set in Project Settings) for any individual, numeric smart text value. Simply add a comma and the number of decimal places within the smart text code (between the @ symbols). For example, after you have selected the smart text code to display a surface elevation of a leader point, the code will look like this in the Text Editor: @<ELS,LD,T>@. To limit the decimal precision of the elevation to one decimal place, add 1 so the code looks like this:
@<ELS,LD,T,1>@
The surface elevation code also supports optional 5th and 6th arguments of T or F, where F (for false) is the default. The 5th argument, when set to T, will display the difference in elevation from the object to the specified surface, rather than the elevation of the surface. The 6th argument, when set to T, will display a C for cut or F for fill following the difference in elevation, rather than a + or – preceding it.
For example: @<ELS,LD,T,2,T,T> will display 7.12F.
Smart Text code examples:
Below are examples of common smart text code combinations that you can copy into the Smart Text Editor or Text Editor:
Text label for | Sample Codes (to cut & paste) | Meaning (label: code) |
3D location of object |
N: @<N,O,F>@ E: @<E,O,F>@ Z: @<EL,O,F>@ |
Northing label: Northing, from Object, No units suffix Easting label: Easting, from Object, No units suffix Elevation label: Elevation, from Object, No units suffix |
3D location of insertion point |
N: @<N,T,F>@ E: @<E,T,F>@ |
Northing label: Northing, at Text insertion point, No units suffix |
Z: @<EL,T,F>@ |
Easting label: Easting, at Text insertion point, No units suffix Elevation label: Elevation, at Text insertion point, No units suffix |
|
3D location of leader end point |
N: @<N,LD,F>@ E: @<E,LD,F>@ Z: @<EL,LD,F>@ |
Northing label: Northing, at Leader point, No units suffix Easting label: Easting, at Leader point, No units suffix Elevation label: Elevation, at Leader point, No units suffix |
Sheet info |
Sheet: @<OD,SN>@ @<OD,SI>@ of @<OD,CT>@ |
Sheet label: Object-based, Sheet name Sheet number (index) of Sheet count |
Station along |
Station: @<S,O,F>@ Offset: @<O,O,F>@ |
Station label: Station, from Object, No units suffix Offset label: Offset, from Object, No units suffix |
Project info |
Field contact: @<P,FOE>@ End: @<P,PED>@ File: @<P,PFF>@ Last modified: @<P,PFM>@ Web: @<P,UACW>@ @<P,UC1>@ |
Label: Project, Field Operators Email Label: Project, Project end date Label: Project, Full path of project file Label: Project, Modify date of project file Label: Project, Web address Label: Project, Comment 1 |
Volume |
AC: @<OD,O,AC>@ AF: @<OD,O,AF>@ AZ: @<OD,O,AZ>@ BD: @<OD,O,BD>@ VC: @<OD,O,VC>@ VF: @<OD,O,VF>@ VN: @<OD,O,VN>@ |
Area of cut label: Object-based, from Object (c/f map), Area of cut Area of fill label: Object-based, from Object, Area of fill Area of zero volume, : Object-based, from Object, Area of zero volume Depth to balance label: Object-based, from Object, Depth to balance Cut volume label: Object-based, from Object, Cut volume Fill volume label: Object-based, from Object, Fill volume Net volume label: Object-based, from Object, Net volume |
Here are other individual codes you can copy and paste:
Property | Sample Codes (to cut & paste) | Meaning |
Elevation | Z: @<EL,T,F>@ | Elevation label: Elevation, at Text insertion point, No units suffix |
Station/ Distance along | Station: @<S,T,P,2> | Station label: Station, at Text insertion point, Units suffix based on project setting, use decimal Precision to two places |
Offset | Offset: @<O,T,F>@ | Offset label: Offset, at Text insertion point, No units suffix |
Length | Length: @<L,O,F>@ | Length label: Length, from Object, No units suffix |
Area | Area: @<A,O,P>@ | Area label: Area, from Object, Units suffix based on project setting |
Line elevation | Elevation: @<ELL,T,T>@ |
Elevation label: Line elevation, at Text insertion point, Display units suffix |
Surface elevation | Elevation: @<ELS,T,F>@ | Elevation label: Surface elevation, at Text insertion point, No units suffix |
Surface slope | Slope: @<SS,LD,P>@ | Slope label: Surface slope, at Leader end point, Units suffix based on project setting |
Name |
@<NM,O>@ @<OD,O,NSI>@ @<OD,O,NSF>@ @<NM,O>@ @<OD,O,NSI>@ |
Name, from Object Initial surface used to create a cut/fill surface Final surface used to create a cut/fill surface Initial surface used to create a volume grid Final surface used to create a volume grid |
Layer | Layer: @<LY,O>@ | Layer label: Layer, from Object |
Feature codes | Feature codes: @<FC,O>@ | Feature codes label: Feature code, from Object |
Utilities |
Lines/Pipes
Nodes
▪ Station: @<OD,O,RS>@ |