Revit二次開發之「建立窗體執行Revit命令」

2021-06-10 08:58:24 字數 1662 閱讀 2932

ribbon選單的空間有限,因此可能需要大量控制項放在乙個windows窗體裡,

然後在窗體裡執行revit命令。方法就是傳遞引數,新建iexternalcommand

呼叫execute();

窗體

using

system;

using

system.collections.generic;

using

system.componentmodel;

using

system.data;

using

system.drawing;

using

system.linq;

using

system.text;

using

system.windows.forms;

using

db =

autodesk.revit.db;

using

autodesk.revit.ui;

namespace

revitblog

//過載乙個建構函式,用來傳遞引數

public

frmcmd(externalcommanddata cmddata, 

string

msg, db.elementset elements)

private

void

btncmd_click(

object

sender, eventargs e)}}

命令 using

system;

using

system.collections.generic;

using

system.linq;

using

system.text;

using

winform 

=system.windows.forms;

using

autodesk.revit.ui;

using

autodesk.revit.db;

using

autodesk.revit.attributes;

using

autodesk.revit.db.mechanical;

using

autodesk.revit.ui.selection;

using

=namespace

revitblog}//

在窗體裡執行revit命令

[transaction(transactionmode.manual)]

[regeneration(regenerationoption.manual)]

public

class

cmdfromform : iexternalcommand}}

有些初接觸的朋友可能因為一點問題就進行不下去了,建議我把**發全並附全部原始碼。

我新建了乙個revitblog專案,用來記錄平時的小積累。

把revitapi.dll和revitapiui.dll新增引用。

這兩個dll在revit的安裝目錄中。

Revit二次開發 建立Pipe

首先要建立乙個pipe,就需要看pipe有哪些建立的方法 由於我是需要在已知的兩個xyz建立管,所以選擇了第三個方法 create document document,elementid systemtypeid,elementid pipetypeid,elementid levelid,xyz ...

Revit二次開發 初學

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

revit二次開發之單位轉換

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