LowCostLabeller is an application that adds functionality to Bentley Systems MicroStation® CONNECT. It's a tool for architects, engineers, planners and technicians.
LowCostLabeller help you label a line with its length. The length is a property of a DGN line or line-string element. It updates automatically if you modify the line.
LowCostLabeller is a native-code application for MicroStation that uses the C++ MicroStationAPI.
The code provides a MicroStation command table so that a user can key-in LABEL
commands.
The code creates a label in a DGN text element.
The text element is associated with its DGN host, so that when a user moves the host, the text follows it.
That association is provided by TextHandlerBase::SetupOffsetAssociation()
, which is part of the MicroStationAPI.
For C++ developers, text is handled in code by the TextBlock
class.
The code creates a Text Field
in the label.
The text field is set to display the line property Length.
The field is added to the label using the TextBlock.AppendField()
method.
MicroStation updates text fields automatically. In the case of this label tool, it updates the line property Length when the line is modified. The programmer has to do nothing to achieve that result.
The APIs mentioned above are not available in VBA.
That is, VBA does not provide the TextBlock
class,
and VBA has no API for text fields.
VBA does not enable the developer to create a command table. Consequently, a VBA macro can't have its own key-in commands.
In other words, you can't implement the LowCostLabeller using VBA.
The APIs mentioned above are not available in .NET.
That is, although .NET does provide the TextBlock
class,
it has no API for text fields.
Neither does .NET's TextHandlerBase
provide a SetupOffsetAssociation()
method.
In other words, you can't implement the LowCostLabeller using .NET.
Return to the LowCostLabeller main page.