合并线串中的共线段


我们DGN文件中经常会遇到如下图所示的情况。一个线串(LineString)元素含有许多顶点,但这些顶点大多数都在一条直线上。那能否将这些共线的段合并成一段呢?

本MBVA程序(MergeSegs.MVBA)就能实现该功能。请按如下步骤操作即可。

1、请将如下文件下载后取消文件名前的数字,然后复制到文件夹C:\ProgramData\Bentley\MicroStation CONNECT Edition\Configuration\Organization\Macros下。如果不是MicroStation软件,该文件夹位置要做相应改变。比如,对于OpenPlant Modeler,该文件夹就是C:\ProgramData\Bentley\OpenPlant CONNECT Edition\Configuration\Organization\Macros。注意,该步骤仅需要做一次即可。

communities.bentley.com/.../5722.MergeSegs.mvba

2、启动MS或OPM,打开您的DGN文件。为确保安全起见,请先备份要处理的DGN文件。由本程序造成的文件破坏请自行承担责任。

3、用选择集工具选中想要处理的所有线串元素。可以框选非线串元素,本程序能自动过滤,仅处理线串元素。

4、在键入命令对话框中输入VBA RUN [MergeSegs]Main 并回车。则所有线串被处理完毕。

再次用选择工具选中被处理过的线串后能发现,共线的线段已经被成功合并了。如下图所示:

【注】:如果嫌每次输入这个命令比较繁琐的话,可以将该命令定义到您的Ribbon界面中,或者定义成一个功能键。