Over 1.095.000 registered users (EN+CZ).
AutoCAD tips, Inventor tips, Revit tips.
Try the new precise Engineering calculator.
New AutoCAD 2026 commands and variables.
CAD tip # 13006:
Question
A
For one of our customers we solved a problem of dynamic labels for the drawing content. Although this was a different, more professional application, let's look at a similar problem with the labeling of the tubes of a tobogan water slide leading from one floor of one building to another floor of another building.
You can see an example of the result, generated labels like "tobogan tube leads from floor X to floor Y", at the beginning of the video tutorial. Basically, we need to display the recalculated Y-coordinate value of the start and end points of the selected spline curve or 3D pipe. There are several sub-problems that arise in the solution of the main task:
- How to associatively relate the shape of the 3D sweep object to the shape of the control spline curve (because 3D objects have no "ends"). Here we need to use the Surface mode in the SWEEP command, because in the default Solid mode the original curve disappears.
- How to get the coordinates of the start and end point of the spline curve in the Field dialog - they are not offered in the property list. We can help here by copying the field expression for the selected object (use the tangent value, for example) and then modifying the property code to the desired start (StartPoint) or end (EndPoint) point - so we basically use just the ObjId from the original field code. You can then insert the text of the semi-manual field into the standard TEXT command. In the field formatting options, we choose a decimal precision of 0 (%pr0, for subsequent recalculation of the floor number) and of course only the Y-component of this coordinate, i.e. %pt2.
An example of such text field code:
%< \AcObjProp Object(%< \_ObjId 2550833060576>%).Startpoint \f "%lu2%pt2%pr0">%
- But displaying the Y-coordinate is not enough, we need to convert it to a floor number. To do this, we just need to use a combined field of the type Expression, containing a reference to the original property field (Y-coordinate, we can insert our manually created field code here), divided by the numeric value of the floor height. For correct rounding (number of decimal places=0), we will correct it by half a floor.
- Finally, we'll assemble the label from several DText objects, or use MText with embedded calculated fields.
Video demonstration:
Sample DWG drawing for download:
ACADADTMech


7.7.2021
39681×