For those that are new to custom line styles, the topic can be a bit daunting. Line styles can be “2D”, support the inclusion of 3D geometry through Point components, and now we also have raster line styles. Custom line styles can be annotative, with the scale of custom line styles being based upon the active annotation scale in a model. And MicroStation also supports storing custom line styles in a variety of ways. Part 2 of this series on custom line styles will focus on the storage and delivery of custom line style definitions.
When working with custom line styles, the question often arises, “What is the best way to configure custom line styles?” There really is no single definitive answer to this question. Rather, it is a choice to be made by each organization based upon what the various methods offer. An understanding of these methods will help determine which best suits your needs and workflows, allowing you to make an informed decision on how custom line styles should be implemented within your organization.
There are essentially four ways to deliver custom line style definitions in MicroStation. These methods include:
All of these methods can be included in your configuration, at any configuration level, such as within the Organization or WorkSpace standards. It is also possible to utilize any combination of these methods if it would be of benefit to do so. Let’s review the different methods in greater detail.
Method 1: Resource Library
The MicroStation resource library, or RSC file, can be thought of as the more traditional method of delivering custom line style definitions. This was the method used for storing line style definitions when custom line styles were introduced in MicroStation V5, and is still widely used today. It is a binary file with a file extension of .rsc, and can only be opened using the Line Style Editor accessed from within MicroStation. The resource library is still required for creating and editing custom line style definitions.
Access to line style resource libraries is provided through the configuration variable MS_SYMBRSRC. This variable is used to point to a list of one or more resource libraries containing custom line style definitions. When custom line styles are stored in a MicroStation resource file, the configured .rsc file must always be present and active for custom line styles to be viewable in the DGN files they are used in. These resources are read dynamically each time the MicroStation application is started, automatically making available resources found within the configuration variable search path(s). If the same line style name is contained in more than one resource library, it is the last definition that is read that will be used to display that line style.
Another aspect of storing custom line style definitions in a resource library is the sizing of a custom line style when placing elements in a design. This links directly to the Working Units in the active DGN. The .rsc file is essentially unitless, based upon Master Units, with line style components based upon whatever the units are in the active model. In other words, a unit = a unit. For example, if the active DGN file when a custom line style is created uses working units based upon Meters, line style components such as Stroke Patterns and Points will be based upon Meters. If the same line style were then used in a model whose units are set to US Survey Feet, a unit still equals a unit. This means that a stroke pattern initially meant to be 5 meters in length would now be 5 feet in length. Obviously 5 meters does not equal 5 feet. To compensate for this, 2 different sets of line style resources would be required or a line style scale set to compensate for the difference in units. This problem can seem even more pronounced if a custom line style represents something measurable in the real world such as a pavement marking or a railing.
The following are true for custom line style definitions stored in a resource library (.rsc):
Method 2: Design Library
A configured design library can also be used to provide custom line styles. Line style definitions are created and maintained using a resource library, but may be imported into a DGNLib that is then used for distributing line style definitions. A DGNlib that contains custom line styles is configured as is any other DGNLib, using configuration variables such as MS_DGNLIBLIST or _USTN_SYSTEMDGNLIBLIST. Using a DGNLib to deliver custom line styles offers advantages not provided by a resource library.
The following are true for custom line style definitions stored in a design library (.DGNLib):
As an example, depending upon the file, this could range from 4 feet to 4 inches, 4 meters, or 4 millimeters. Custom line styles would be scaled accordingly. To make the scaling based on real world units, the line styles can be imported into a DGN (or a DGNLib). When deployed in this manner, a line style will appear the correct size, regardless of the units of the file the line style is used in.
Method 3: Seed File
And while it is probably not considered common practice, custom line styles can also be stored within a seed file. The use of a seed file is similar to that of the DGNLib, with one significant difference. The seed file does not provide the ability to see a “live” list of the current custom line styles. Line styles included in a seed file are in essence a static copy of the custom line styles included in the seed file at the time a file is created.
When creating a new design file, the new DGN is essentially a snapshot of the settings and information contained in the seed file at the time the DGN is created. This would include any custom line style definitions stored in the seed file. If changes are made to the seed file (such as new line styles being added or existing line styles modified), existing DGN’s that were created from that seed file are not aware of the change. This makes this method of delivering custom line styles more static than using a RSC file or a DGNLib. Existing DGN’s may be updated by importing any new or modified line style definitions, but the process is entirely manual.
Method 4: AutoCAD Linetype File(s)
MicroStation also allows a set of AutoCAD linetypes to be configured and distributed for use. The configuration variable MS_LINFILELIST is used to point to a directory containing (AutoCAD) LIN linetype files. When a line style definition is used that is contained in folder located using this variable, the line style definition will be copied into the active DGN file. With the line style being stored within the active file, it offers the same benefits as the Design Library and Seed File methods.
As can be seen, there are benefits that present themselves any of the methods of configuring custom line styles. The choice really is yours based upon what would benefit your organization the most.
For more information on design libraries (DGNLib’s) or custom line styles, visit the courses on the Bentley LEARNserver: