[C++/C# MSCE ]关闭参考文件的图层显示

符老师   C#LevelHandle.Display可以关闭当前dgn的图层  C++mdlLevel_setDisplay也可以   但我要关闭参考文件的图层   该怎么做呢(上述都不行)?求符老师指导

Parents
  •       需要获得参考文件的模型,然后再去关闭图层:

           ModelId modelId = modelItem.GetModelId();
           DgnModelPtr dgnptr = s_DgnFile->LoadModelById(modelId);
           if (dgnptr->FillSections(DgnModelSections::Model) != SUCCESS)
              {
                    return ERROR;
               }
           
           if (dgnptr != nullptr)
           {
             //参考模型
             if (!dgnptr->IsDgnAttachment() || (dgnptr->IsDgnAttachment() && !dgnptr->AsDgnAttachmentCP()->IsMissingFile()))
                 {
                       //通过参考模型,关闭图层
                       if (SUCCESS != mdlLevel_setDisplay (dgnptr, levelId, true))
                                         return ERROR;
                  }
            }

  • 不行   。。。 我后面还加了mdlLevelTable_rewrite函数 结果是2  不是0    看来还得怎么设置

  • 上面的有误,你试下通过下面的方法得到参考模型,然后在模型里头去关闭,看看可以不?

    if (dgnptr->IsDgnAttachment())
                 {
                       //通过参考模型,关闭图层
                       if (SUCCESS != mdlLevel_setDisplay (dgnptr, levelId, true))
                                         return ERROR;
                  }

Reply
  • 上面的有误,你试下通过下面的方法得到参考模型,然后在模型里头去关闭,看看可以不?

    if (dgnptr->IsDgnAttachment())
                 {
                       //通过参考模型,关闭图层
                       if (SUCCESS != mdlLevel_setDisplay (dgnptr, levelId, true))
                                         return ERROR;
                  }

Children