符老师,有什么函数可以获取材质图片的地址吗?
还有当材质的颜色选择使用元素颜色时,怎么能得到元素的RGB值,之前找到的颜色都是一个uint或者double的值
目前只找到C++部分,您可以参考下,其中最后通过DgnColorMap::ExtractElementColorInfo可以获得clrDef,clrDef.m_rgb.red就是R,clrDef.m_rgb.green就是G,clrDef.m_rgb.blue就是B:
UInt32 clrId, clrIdx; bool isTrueClr; WString bookName, clrName; LevelId lvlID; LevelCacheR lvlCache = eh.GetDgnModelP()->GetLevelCacheR(); LevelHandle lvlHandle = lvlCache.GetLevel(lvlID); clrId = lvlHandle.GetByLevelColor().GetColor(); DgnColorMapP pClrMap = DgnColorMap::GetForDisplay(eh.GetDgnModelP()); IntColorDef clrDef = pClrMap->GetColor(clrId); pClrMap->ExtractElementColorInfo(&clrDef, &clrIdx, &isTrueClr, &bookName, &clrName, clrId, *eh.GetDgnFileP());
Answer Verified By: xz h