Revit二次開發之單位轉換

2021-08-29 09:43:03 字數 1313 閱讀 2933

revit內部基本單位是英呎,如果要獲取或設定構件引數數值需要進行單位轉換,比如轉換為基本的公釐或公尺等單位

1.可以使用常規方式進行轉換:

1英呎等於0.3047999995367公尺,等於304.7999995367公釐

2.可以使用revitapi內建的轉換函式進行目標單位的轉換

使用unitutils函式的public static double convert(double value,displayunittype currentdisplayunit,displayunittype desireddisplayunit)方法

可以判斷引數是以何種單位顯示在介面上的。如:parameter.displayunittype屬性,然後根據displayunittype列舉找到想要轉換的單位型別

reference refer = uidoc.selection.pickobject(objecttype.element, "");

wall wall = doc.getelement(refer) as wall;

double value= 0;

foreach (parameter p in wall.parameters)

if (p.definition.name == "長度")//面積 //體積

// messagebox.show(p.displayunittype.tostring());判斷引數數值是以何種單位顯示在介面上的

value = p.asdouble();

break;

//英呎到公尺

double d = unitutils.convert(value, displayunittype.dut_decimal_feet, displayunittype.dut_meters);

//英呎到公釐

double d = unitutils.convert(value,displayunittype.dut_decimal_feet,displayunittype.dut_millimeters);

//平方英呎到平方公尺

double d = unitutils.convert(value, displayunittype.dut_square_feet, displayunittype.dut_square_meters);

//立方英呎到立方公尺

double d = unitutils.convert(value, displayunittype.dut_cubic_feet, displayunittype.dut_cubic_meters);

displayunittype列舉內含有大量的單位型別 讀者可以根據所需單位進行查詢。

revit二次開發之單位轉換

revit內部基本單位是英呎,如果要獲取或設定構件引數數值需要進行單位轉換,比如轉換為基本的公釐或公尺等單位 1.可以使用常規方式進行轉換 1英呎等於0.3047999995367公尺,等於304.7999995367公釐 2.可以使用revitapi內建的轉換函式進行目標單位的轉換 使用unitu...

Revit二次開發 初學

前言 由於工作需要,近期開始學習revit二次開發知識。學習的同時將學習過程與小夥伴們一起分享,希望後來的小夥伴在看到我的學習筆記的時候有所幫助。說明由於revit的版本在不斷更新中,所以我在學習revit的時候選擇了從revit自帶的幫助檔案開始學習,不同版本的revit,就看相應的help檔案。...

Revit二次開發 Revit擴充套件儲存資料

revit二次開發過程中,需要將相關資訊儲存到rvt檔案中,再次開啟rvt的時候,可以通過讀取這些資訊,知道當前構件的基本狀態,或者將乙個特殊的資訊儲存到rvt檔案中,從revit2012開始引入了擴充套件儲存這個新技術,就是可以把一些資料儲存在revit中的某乙個物件上。且這個儲存操作,只能通過程...