【MSCE】在二维绘制时有没有类似AutoCAD的绘图次序功能?

如图所示,在二维(或三维的某一ZY平面内)中绘制两个相互交叠图形,好像默认是后绘制的显示在前面。

在AutoCAD中,有一个绘图次序的功能,如图 ,可以调整平面交叠图形的相互遮挡关系。如果我再AutoCAD中设置好了这种关系,通过MS打开dwg,这种关系是会被保留的,因此我认为MS中的图形元素是具有叠放次序这一属性的。

因此请问,如何在MS中设置平面图形的叠放次序呢?

  • 您说的这个概念在MS中叫显示优先级(Priority),作为元素的属性之一,可以试试看。

  • 可是这个只在2D种子文件中生效啊~如果是3D的种子文件,这个是灰色的点不了,可是dwg文件导入以后是能保留在cad中的绘图次序的,这是怎么回事呢?我的需求是打开dwg,另存为dgn,然后对其中错误的叠放次序进行调整。

  • 显示优先级仅作用于二维模型,在三维模型中是根据元素距离用户视角的远近来确定显示的优先级的。

    您可以额外创建一个2D的Model再导入dwg。

  • 按照您的方法,在3D种子中新建2Dmodel,然后导入CAD,导入进来以后,所有元素的优先级都是0,但是我在CAD中是设置过元素的绘图次序的,而且导入以后在MS显示的相互遮挡关系也是正确的,说明在dwg中设置的绘图次序是被MS正确识别到的,那么是被识别到了哪个属性上呢?如果该属性通过C#代码可以查看得到也是可以的。

    该图中所示的选中元素,在dwg中是设置过 绘图次序-前置 的,但他和其他元素一样都是0。

    另外您说的关于“三维模型中是根据元素距离用户视角的远近来确定显示的优先级的。”对于在顶视图同一Z值的XY平面内的元素,是如何确定显示优先级的呢?我还如何获取该信息?

  • 按照您的方法,在3D种子中新建2Dmodel,然后导入CAD,导入进来以后,所有元素的优先级都是0,但是我在CAD中是设置过元素的绘图次序的,而且导入以后在MS显示的相互遮挡关系也是正确的,说明在dwg中设置的绘图次序是被MS正确识别到的,那么是被识别到了哪个属性上呢?

    在优先级相同的情况下,MicroStation是按照元素放置的先后顺序进行显示的,后放置的元素会遮挡先前放置的的元素。在MicroStation中对于2D文件的显示优先级(Display Priority)也有工具进行更改,就是“Bring to Front”,您可以在Drawing> Selection> Bring to Front找到此工具。

    补充一个帖子给您参考,在MicroStation中对于2D文件才有的显示优先级概念分三个级别来处理,分别是文件级别,Level级和元素级。

    元素的显示优先级(Display Priority)

    关于“三维模型中是根据元素距离用户视角的远近来确定显示的优先级的。”对于在顶视图同一Z值的XY平面内的元素,是如何确定显示优先级的呢?

    就像Lily所说,显示优先级是2D才有的概念,”对于在顶视图同一Z值的XY平面内的元素”,我的理解是,可以将此情况看作是一个局部的2D模型,仍然是按照此平面内的元素放置的先后顺序进行显示。


    This is a test

    Answer Verified By: 霄男 宿