Positions a label along the 2D curve, using clear space to avoid overlap with other labels. The orientation of the label is set from the point, relative to the 2D curve, and is controlled by the angle parameter.
The 2D curve of the 3D object must have one or more curves.
Usage in Label Template XML
<label>
<posSettings>
<posModulesSets>
<posModulesSet>
<connectPoint>4</connectPoint>
<positioningPoint>4</positioningPoint>
<posModules>
<posModule value="ISDwgPositionByCurve2D">
<startCurveRatio>0.0</startCurveRatio>
<endCurveRatio>1.0</endCurveRatio>
<angle>0</angle>
<anchor>1</anchor>
<searchMode>0</searchMode>
<hOffset>0.0</hOffset>
<vOffset>0.0</vOffset>
<granularity>1</granularity>
<priority>1</priority>
<whiteObj>LAYER_NAME</whiteObj>
</posModule>
</posModules>
</posModulesSet>
</posModulesSets>
</posSettings>
<\label>
Customization
startCurveRatio
Specifies the start point on the 2D curve. Specify the value as a ratio along the length of the curve. The ratio must be between 0.0 and 1.0.
The software performs the search for clear space positioning between the start point and the end point. The end curve ratio must be greater than the start curve ratio.
endCurveRatio
Specifies the end point on the 2D curve. The software defines this value as a ratio along the length of the curve. The ratio must be between 0.0 and 1.0.
The software searches for clear space positioning between the start point and the end point. The end curve ratio must be greater than the start curve ratio.
angle
Orientation of the label.
XML value |
||
---|---|---|
Tangent Tangent to a curve |
0 |
|
Normal Out Along outward normal |
1 |
|
Normal In Along inward normal |
2 |
|
Horizontal |
3 |
|
Vertical |
4 |
|
Default Orientation |
5 |
|
Uses the orientation from the content module |
anchor
The point on the label used for positioning.
|
XML value |
|
---|---|---|
Treat as Label |
0 |
|
Uses a key point on the bounding box of the label, as specified by the connect point property in posModulesSet. |
||
Treat as Symbol |
1 |
|
Uses the origin of the symbol. |
||
Use Connect Point Similar to 0 (Treat as Label) but uses a key point specified by the connect point property defined directly in this module. |
2 |
connectPoint
Specifies the position of the label relative to the key point on the text bounding box and used with the anchor property. The default value is 4 (Middle Middle).
Key Points |
|
---|---|
0 |
Top Left |
1 |
Top Middle |
2 |
Top Right |
3 |
Middle Left |
4 |
Middle Middle |
5 |
Middle Right |
6 |
Bottom Left |
7 |
Bottom Middle |
8 |
Bottom Right |
-
Use the connect point in this module in the same way that you use the positioning point in the posModuleSet positioning module.
-
You can use the value of the connect point defined in the posModulesSet positioning module by using 0 (Treat as Label) for anchor or define the value directly in this module by using 2 (Use Connect Point) for anchor.
-
positioningPoint in the posModulesSet positioning module is not used by this module even when you have defined that parameter.
searchMode
Defines the starting point and search method for the clear space search along the 2D curve.
XML value |
||
---|---|---|
From Center |
0 |
|
Starts from the center of the 2D curve. The software tries to place the label to the left or right of the center of the curve. |
||
Low To High |
1 |
|
Starts from the start curve ratio location. The system tries to place the label in clear space in a search toward the end curve ratio location. |
||
High To Low |
2 |
|
Starts from the end curve ratio location. The software tries to place the label in clear space in a search toward the start curve ratio location. |
hOffset
Horizontal distance of the label from the positioning point. This value is measured in meters. The default value is 0.00.
vOffset
Vertical distance of the label from the positioning point. The software measures this value in meters. The default value is 0.00.
granularity
Specifies a portion of the height of a label as the basis for the increment used to find clear space in which to position the label.
-
Type 0 to specify a Coarse setting. With a Coarse setting, the software searches an increment of exactly one width and height of the existing label in order to find clear space in which to place the new label.
-
Type 1 to specify a Medium setting. With a Medium setting, the software searches an increment of exactly one-half the width and height of the existing label.
-
Type 2 to specify a Fine setting. With a Fine setting, the software searches an increment of exactly one-third the width and height of the existing label.
1 - Label Offset
2 - Coarse setting
3 - Medium setting
4 - Fine setting
priority
Determines the order in which the software places an annotation based on available clear space and proximity to other annotations.
1 - Equipment label placed using the Priority property |
whiteObj
Allows you to specify one or more 2D layers in the drawing to serve as white object layers for a label placed in clear space. Graphical objects set on these layers are rendered invisible to this label, allowing placement of the label on top of these objects.
1 - Pipe within a White Object Layer |
If this filter is set to "*" during label placement, then the system ignores all objects that are not labels or leaders.
Example
Angle is 0, anchor is 0 (using connectPoint 4 in posModulesSet), startCurveRatio is 0.0, endCurveRatio is 1.0, searchMode is 0
Although a content module creates the annotation output, this example shows how this module affects the output.