プロダクト: | MicroStation | ||
バージョン: | CE update14 | ||
環境: | N/A | ||
エリア: | Programming | ||
サブエリア: | MDL |
ラスターファイルからの情報と取得例です。
DgnModelP pDgnModel = ISessionMgr::GetActiveDgnModelP();
DgnFileP pDgnFile = ISessionMgr::GetActiveDgnFile();
FileLevelCacheR levelCache = pDgnFile->GetLevelCacheR();
for (ElementHandleCR rasAttEh : RasterFrameElementCollection(*pDgnModel))
{
auto pRasAttQuery = dynamic_cast< IRasterAttachmentQuery*>(&rasAttEh.GetHandler());
long layerNum = pRasAttQuery->GetLayer(rasAttEh);
auto pMoniker = pRasAttQuery->GetAttachMoniker(rasAttEh);
ElementPropertiesGetterPtr pPropsGetter = ElementPropertiesGetter::Create(rasAttEh);
LevelHandle lvlHandle = levelCache.GetLevel(pPropsGetter->GetLevel());
WPrintfString wStr(L"rasterFile = %s, layerNum= %d, levelName = %s",
pMoniker->GetShortDisplayName().GetWCharCP(), layerNum, lvlHandle.GetName());
mdlDialog_dmsgsPrint (wStr.GetWCharCP());
}
communities.bentley.com/.../Raster_5F00_get_5F00_info.zip
Original Author: | Mikihiko Tabata |