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...