我们知道SHP格式的文件是由ESRI公司制定的一种保存点、线、面等信息的文件,它广泛地应用于GIS(地理信息系统)领域的数据交换。MicroStation也支持导入SHP文件,要想将DGN格式的文件导出为SHP需要用到Bentley的GIS软件Bentley Map。
通常来说,SHP文件中的点、线、面(在GIS领域把他们叫做特征,英文为Feature)都是二维的,没有Z坐标。随着三维技术的普及,目前人们可以给这些Feature增加属性来表达其Z方向的坐标。那么对于这样的SHP文件导入成DGN时如何也能把Z向坐标反映出来呢?
在MicroStation中其实有一个配置变量叫做MS_ELEVPROP_AS_Z来控制这个事情。其中的MS当然就是MicroStation的缩写,ELEV是Elevation(高程)的缩写,PROP是Property(属性)的缩写,整个配置变量翻译过来就是“作为Z的高程的属性”。所以,在导入带有高程信息的SHP文件前只要正确地设置这个配置变量的值为SHP中表示高程的那个属性即可。
下面用实际例子来说明操作过程:
1、下载如下SHP文件包(是一组文件)并解压到某个文件夹下;
.communities.bentley.com/.../01_5F00_Tokyo_5F00_building.zip
2、在MicroStation选菜单File > Open出现打开文件对话框,在该对话框中选择Files of Type(文件类型)为Shapefiles(*.shp),并找到您放置的SHP文件;
3、此时应该已经打开了SHP文件。选择其中的任一个图形,用元素信息工具查看其属性如下:
FID是Feature Identification的缩写,一般表示特征的ID,不应该是用来表达高程信息的,那么,下面的这个AGL(不同的SHP文件这个字段名应该是不同的)推测应该能用来表达高程。
4、选菜单Workspace > Configuration打开配置变量对话框,新建MS_ELEVPROP_AS_Z变量并将其值设置为AGL。如下图所示:
5、在MicroStation中打开一个三维模型的DGN文件,选菜单File > Import > CAD Files出现导入文件对话框,类似地,保证该对话框中选择Files of Type(文件类型)为Shapefiles(*.shp),并找到您放置的SHP文件,点击Open即可导入带有三维信息的SHP文件。
如果您的一批SHP文件都是以AGL为高程属性,则仅需要执行最后一步就能逐个导入SHP文件。如果导入另外一批SHP文件,则还要经过前面几步来确认到底是哪个属性表示的是高程,这是问题的关键。另外,配置变量MS_ELEVPROP_AS_Z的值还支持多个的组合,比如HEIGHT,ELEVATION加上这个AGL都可表达高程的话,您可以设置其值为HEIGHT|ELEVATION|AGL,各个值之间用“逻辑或”运算符|来隔开即可。