1. 程式人生 > >Revit開發之內建模型

Revit開發之內建模型

重Revit2015開始,API裡提供了一些

內建模型的API,但是功能還比較簡單

Revit2017裡提供了比較強大的一些API

有興趣的可以去研究下,它可以畫一些曲面什麼的

這裡介紹下簡單版的。

內建模型可以指定Category,也可以指定材料

也可以將內建模型做成TYpe 然後用Type來建立

等等。。

下面是一個簡單的例子

建立了一個屬於牆的內建模型

            Transaction trans = new Transaction(doc, "trans");
            trans.Start();
            XYZ p1 = new XYZ(5, 0, 0);
            XYZ p2 = new XYZ(-5, 0, 0);
            XYZ p3 = new XYZ(0, 5, 0);
            Arc arc = Arc.Create(p1, p2, p3);
            Line line = Line.CreateBound(p2, p1);
            CurveLoop cl = new CurveLoop();
            cl.Append(arc);
            cl.Append(line);
            IList<CurveLoop> cls = new List<CurveLoop>();
            cls.Add(cl);
            Solid solid = GeometryCreationUtilities.CreateExtrusionGeometry(cls, new XYZ(0, 0, 1), 5);
            DirectShape ds = DirectShape.CreateElement(doc, cateId, Guid.NewGuid().ToString(), Guid.NewGuid().ToString());
            ds.AppendShape(new List<GeometryObject>() { solid });
            trans.Commit();

博主會經常更新一些技術文章,請大家多多關注,

原始碼下載請加qq群480950299


相關推薦

Revit開發之內模型

重Revit2015開始,API裡提供了一些 內建模型的API,但是功能還比較簡單 Revit2017裡提供了比較強大的一些API 有興趣的可以去研究下,它可以畫一些曲面什麼的 這裡介紹下簡單版的。 內建模型可以指定Category,也可以指定材料 也可以將內建模型做

revit二次開發模型之放樣

/// <summary> /// 內建模型(放樣) /// </summary> private static void CreateSphereDirectShape(double MaxHeight, d

微信公眾號開發之內地圖

var currurl = decodeURIComponent(location.href.split('#')[0]); $.ajax({//授權 url : "../initWXJSInterface",

Django模型之內類Class Meta

Class Meta 作用:使用內部類來提供一些metadata,以下列舉一些常用的meta: 1,abstract:如下段程式碼所示,將abstract設定為True後,CommonInfo無法作為一個普通的Django模型,而是作為一個抽象基類存在,作用 是為其他的類提供一些公有的屬

Revit開發之批量高效建立模型

一、建立模型線 建立模型線可以使用 Document.Create.NewModelCurve(Curve,SketchPlane)方法。  第一個引數是Curve,可以是任何Curve的子類,比如Line,NurbSpline,Arc,Ellipse 等,那麼對應創建出來

eclipse開發web項目

文本框 none enc display eclipse開發 height images tomcat block 1、打開eclipse,界面如下: 2、首先配置tomcat,操作:Windows--->perferences 如下: 3、操作:server-

REVIT開發隨筆,關於二進制序列化

tid src .cn com 序列化 grouping 不能 list ima 想把項目中所有元素的List預存,考慮到狀態的完美恢復,首先想到的是二進制序列化。 畢竟多年不堆碼,等解決了IGROUPING,LOOKUP不能序列化,自動屬性不能直接標註非序列化後,編譯一

第二節:創模型,使用Code First,配置映射關系(一)

一個用戶 option hone review 加載 使用 定義 fig gin 這一節,實現模型的創建,配置映射關系 使用Code First數據遷移。 創建模型 一,首先創建幾個接口:實體接口,聚合根接口,值對象接口 1,實體接口: 2,聚合根接口: 3,值對象接口

java虛擬機之內模型

管理 char 責任 類信息 一個 最大 銷毀 虛擬機棧 接口 1. 概述 對於從事 C、C++ 程序開發的人員來說,在內存管理領域,他們既是擁有最高權力的「皇帝」又是從事基礎工作的「勞動人民」 --- 既擁有每個對象的「所有權」,又擔負著每一個對象生命開始到終結的維護責任

開發分支管理模型之阿裏AoneFlow

怎麽 分享 ima 三種 出了 團隊 部分 evel eat 說到分支管理模型,令人最為熟悉的莫過於TrunkBased 和 GitFlow。 TrunkBased 模型是持續集成思想所崇尚的工作方式,它由單個master分支和許多release分支組成,每個release

django系列3 :創模型

info datetime div highlight time int bsp file png 1創建模型 在我們簡單的民意調查應用程序中,我們將創建兩個模型:Question和Choice。A Question有問題和出版日期。A Choice有兩個字段:選擇的文本和

python初識之內函式一

  python的內建函式一共有68個,這裡先學習55個 作用域相關:locals()和globals()   locals() 返回本地作用域中的所有名字   globals() 返回全域性作用域中的所有名字 迭代器生成器相關:range() 、iter()、next()   range() 可迭

Python3之內模組shutil和shelve

shutil內建模組   高階的檔案、資料夾、壓縮包處理模組 ['Error', 'ExecError', 'ReadError', 'RegistryError', 'SameFileError', 'SpecialFileError', '_ARCHIVE_FORMATS',

Python3之內函式

    內建函式 內建函式 一、內建函式定義及總數 python裡的內建函式。截止到python版本3.6.2,現在python一共為我們提供了68個內建函式。 Built-in Functions abs() dict() h

Python初識之內函式二

資料結構相關  列表和元組:list()、tuple()、reversed()、slice() l=[1, 2, 3, 4, 5] l.reverse() # 列表順序反轉 l2 = reversed(l) # 得到一個反序的迭代器 print(l) print(l2)

【python基礎】常用的內函式 python基礎之內函式

python基礎之內建函式   參考: http://www.runoob.com/python/python-built-in-functions.html -zip() zip函式接受任意多個(包括0個和1個)序列作為引數,返回一個tuple列表 例項1: x = [1,

python基礎之內函式與匿名函式

python基礎之內建函式與匿名函式   內建函式68個如下圖   重點的關注的內建函式len,sorted,enumerate,all,any,zip,filter,map,reversed,slice         l

開發分支管理模型之阿里AoneFlow

說到分支管理模型,令人最為熟悉的莫過於TrunkBased 和 GitFlow。 TrunkBased 模型是持續整合思想所崇尚的工作方式,它由單個master分支和許多release分支組成,每個release分支在特定版本的提交點上從master分支創建出

python之內函式(二)與匿名函式、遞迴函式初識

一、內建函式(二)1、和資料結構相關(24)列表和元祖(2)list:將一個可迭代物件轉化成列表(如果是字典,預設將key作為列表的元素)。tuple:將一個可迭代物件轉化成元組(如果是字典,預設將key作為元組的元素) 2、相關內建函式(2)reversed:將一個序列翻轉,並返回此翻轉序列的迭代

python之內函式(一)

一、內建函式一1、內建函式總覽   abs() dict() help() min() setattr()all() dir() hex() next() slice() any() divmod() id() object() sorted() ascii() enumerate()