符老师 图层附加材质我用SetByLevelMaterial函数 附加本地库的材质可以
但附加附加 链接库不行
试了几次 发现规律如下
求指教
不能附加是获取不到对应的材质,还是说获取到材质了以后附加失败?
可以获取材质 获取材质后 附加失败
请换用c/c++接口试试,如果还不行,请提供一下您的测试代码(最好是一个可单独编译执行的函数)
我用如下代码测试是可以添加的:
ElementAgenda selectset; SelectionSetManager::GetManager().BuildAgenda(selectset); if (!selectset.GetCount()) { return; } EditElementHandle& eeh = selectset[0]; MaterialSearchStatus localSearchStatus; bool loadSourceIfNotCached = false; MaterialList mateList; BentleyStatus result = MaterialManager::GetManagerR().FindMaterialByNameFromAnySource(&localSearchStatus, mateList, L"Door", *ACTIVEMODEL, loadSourceIfNotCached); if (SUCCESS == result) { MaterialId mateId1 = MaterialId(L"Door"); IMaterialPropertiesExtension* mExtension1 = IMaterialPropertiesExtension::Cast(eeh.GetHandler()); if (SUCCESS == mExtension1->AddMaterialAttachment(eeh, mateId1)) eeh.ReplaceInModel(eeh.GetElementRef()); }
小郭老师 这是给元素附加材质 我需要是给图层附加材质