RVTおよびRFAファイルには、一部のシンボル(例:ファミリ)のプレビューが含まれている場合があり、これらはOdBmSymbolクラスを使用して抽出できます。
利用可能な場合は、getPreviewImage()メソッドを使用してプレビュー画像を抽出します。このメソッドはOdThumbnailImageオブジェクトをパラメータとして受け取り、出力に使用します。プレビューは通常、OdThumbnailImageオブジェクトのbmpフィールドに格納される128 x 128のPNGビットマップです。
プレビュー画像データは、ファイルにエクスポートするか、getRasterImage()メソッドを使用してOdGiRasterImageオブジェクトに変換できます。
OdRxRasterServicesクラスを使用して画像をスケーリングするために、変換を使用したい場合があります。
OdThumbnailImage preview;
if (pSymbol->getPreviewImage(preview) == eOk && preview.hasPng()) {
auto pFile = odrxSystemServices()->createFile(exportDir + getPreviewFileName(pSymbol),
Oda::kFileWrite, Oda::kShareDenyReadWrite, Oda::kCreateAlways);
pFile->putBytes(preview.png.getPtr(), preview.png.size());
}
この機能は、ODA Bim Appで2つのコマンドを実行することでも試すことができます。
- BmAllSymbolsPreview は、検出されたすべてのシンボルプレビュー画像を、シンボル名とその ID から生成されたファイル名でソースファイルディレクトリに保存します。
- BmSymbolPreview は、現在選択されている要素または入力された ID で見つかった要素のシンボルプレビュー画像を指定されたファイルにエクスポートします。ファイルは最初のコマンドと同じルールで作成されます。