Revit二次開發-獲取材質的紋理貼圖


通過IExportContext導出類中的Onmaterial()方法,可以獲取到材質相關信息,主要是材質ID,再根據材質ID得到材質對象material,然后通過如下代碼獲取Asset對象:

ElementId appearanceId = material.AppearanceAssetId;
AppearanceAssetElement appearanceElem = document.GetElement(appearanceId) as AppearanceAssetElement;
Asset theAsset = appearanceElem.GetRenderingAsset();

這個Asset對象里面就包含了所有外觀渲染相關的數據,包括材質的貼圖。判斷屬性名為“unifiedbitmap_Bitmap”的屬性,即為想要的紋理圖,具體Asset屬性的讀取可以在Revit的API文檔中搜Asset,會有例子介紹。

 

附:這里得到的紋理圖路徑是相對系統紋理庫路徑的相對路徑,目前還不知道怎么通過Revit提供的API獲取系統的紋理庫路徑:“C:\Program Files (x86)\Common Files\Autodesk Shared\Materials\Textures”,如果有知道的大神可以指導下,謝謝!

 

 

轉載請注明原文出處。http://www.cnblogs.com/onlyperfect/p/4235426.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM