分辨率对dgn/dwg文件的影响分析


【问题场景描述】

用户在isoseed.dgn(这是OpenPlant软件中用于出Iso图的种子文件) 文件中参考了dwg,(dwg中的内容是一个图框,这个图框是一个块元素),然后在dgn中复制这个图框,复制出来的内容,在查看图框属性的时候,发现缩放比例变成100(理想情况应该是1)。

因为在实际情况中,有些工程审核软件会校验块元素的放大比例是否为1比1,基于这样的要求,我们该如何满足处理?而且究竟为什么复制出来的图框比例会变呢?

【知识点讲解】

我们首先先来认识一下Microstation软件中的分辨率

关于分辨率的设置位置如图所示:

这里分为两种情况:cell和非cell(对应AutoCAD中的块)

我们先来说一下非cell的情况

举例来说,假设在dgn1文件中放置了一条长度为10m的直线,如果他的分辨率是100/m,那么这10m的线将由1000个像素表示。 如果这时将分辨率改成10/m,这条线将变成100m(原理:对于已经放置的元素,像素总个数不变,分辨率改变,则尺寸随时改变)。

所以:我们通常不建议编辑这里的分辨率,因为对一个已经制作好的实体,调整它的分辨率,意味着它的元素尺寸会发生变化。

注意1:如果dgn1参考了dgn2文件,(dgn2中放置了一条长度为10m的直线,分辨率为1000/m),那么改变dgn1中的分辨率只会影响dgn1中的直线长度,参考文件中的直线长度不会变。

注意2:dwg文件中是不涉及分辨率的设置的,dwg中放置一条10单位的直线,即便在MS中可以设置分辨率,但不会对这条直线的显示有任何影响。

下面说一下cell的情况。(也是上面发生问题的情况)

仍然举例来说,假设在dgn1文件中(分辨率1000p/m)放置一个cell(cell内容为矩形,cell创建时的情况是分辨率为100p/m,尺寸为10*10m),那么在dgn1中显示的cell尺寸变成1*1m。

注意1:如果dgn1参考了dgn2文件(dgn2分辨率100p/m,dgn2中放置了上述cell),那么这个参考文件显示的cell尺寸会保持10*10m。注意!!这时如果复制这个10*10m的cell,结果是得到一个和它一样大小尺寸的cell,但是Scale会被放大10倍。(原理:复制操作使尺寸不变

注意2:dwg文件中是有块定义的,以及Scale的属性值。所以如果按照情况1的描述对dwg文件中的块操作一遍,会得到同样的结论,也就是上述场景情况。

注意3:dwg文件在Microstation中打开/参考的时候,会先从dwg文件中读设置相关的内容,因为是在MS中使用,就一定有一些设置,dwg文件里没有那个等效的设置,比如分辨率设置,那么这个分辨率的值的读取就来自种子文件(其他dwg没有的设置值均来自种子文件),如下图位置所示

在了解了上述知识点之后,我们再来复盘一下用户的场景。

用户在isoseed.dgn(分辨率为1000p/mm)中参考了一个图框,这个图框是cell。

这个参考的图框在被MS打开的时候,会基于种子文件中的分辨率(transeed.dgn)10000p/m,显示该图框的尺寸(420mm*300mm),

那么在复制该420mm*300mm尺寸的图框时,基于的是isoseed.dgn中的分辨率1000p/mm,这时要保证图框尺寸不变的情况就需要scale被放大100倍才可以(软件内在行为)。也就是我们看到的现象。

【解决方案】

那么如何能在复制的时候,保证scale的比例是1:1呢?

针对此案例来说,从OpenPlant的设计角度来说,最好不要调整isoseed.dgn中的分辨率,我们去调transeed.dgn的分辨率,按下图所示将分辨率调成1000/mm。

确定后点击保存设置,需要重新启动Microstation,再次复制。

当再次复制图框的时候,检查图框属性就不再是100倍了,而是变成了1(理想情况)。