數(shù)據(jù)讀取與修改

視頻連接http://v.bimcc.com/course/35/tasks


一、數(shù)據(jù)的讀取

Revit提供了兩種數(shù)據(jù)

Parameters和Parameters map

一般常用的是Parameters

下面是幾種典型的方法

1.GetOrderedParameters

收集所有可見屬性,并直接按照屬性的順序排列(忽略屬性分組順序)

2.GetParameterFormatOptions

獲取數(shù)據(jù)格式

3.LookupParameter

一般用于版本語言切換后,查找自定義族中的自定義參數(shù)。

4.Parameter(Guid)

通過共享參數(shù)的特定Guid屬性來查找

5.Parameter(BuiltInParameter)

通過自帶參數(shù)的特定built in param屬性來查找


下面通過代碼來實現(xiàn)數(shù)據(jù)的讀取 一般用LookupParameter和get_Parameter兩個方法

            UIDocument uidoc = commandData.Application.ActiveUIDocument;
            Document doc = uidoc.Document;

            Reference refer = uidoc.Selection.PickObject(ObjectType.Element, "請選擇墻");
            Wall awall = doc.GetElement(refer) as Wall;
            //Parameter para = awall.get_Parameter(BuiltInParameter.CURVE_ELEM_LENGTH);//方式一
            Parameter para = awall.LookupParameter("長度");//方式二
            double lenght1 = para.AsDouble();   //as..獲取值
            string length2 = para.AsValueString();
            TaskDialog.Show("長度", lenght1.ToString() + "\r\n" +length2);

            return Result.Succeeded;
墻的長度信息

點擊一面墻,即可獲得屬性

//其中l(wèi)ength1 length2對應不同單位下的數(shù)值


二、數(shù)據(jù)的修改

直接上步驟
比如這里要修改墻的底部偏移這個屬性



在墻的parameter屬性中 找到definition 點進去找到built in parameter 復制

            UIDocument uidoc = commandData.Application.ActiveUIDocument;
            Document doc = uidoc.Document;

            Reference refer = uidoc.Selection.PickObject(ObjectType.Element, "請選擇墻");
            Wall awall = doc.GetElement(refer) as Wall;
            Parameter para = awall.get_Parameter(BuiltInParameter.WALL_BASE_OFFSET);

            //一般在using里創(chuàng)建新事務
            using (Transaction trans = new Transaction(doc, "修改墻的底部偏移"))
            {
                trans.Start();
                para.Set( 1000 / 304.8);
                trans.Commit();
            }

            return Result.Succeeded;

修改后的效果

其他的屬性可以參照api中的修改函數(shù),類似地修改

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

  • 1.數(shù)據(jù)讀取 1.1屬性讀取 屬性分為類型屬性和實例屬性,可以通過Parametes或者ParametersMap...
    Karel_閱讀 1,749評論 0 1
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,612評論 19 139
  • 1. 簡介 1.1 什么是 MyBatis ? MyBatis 是支持定制化 SQL、存儲過程以及高級映射的優(yōu)秀的...
    笨鳥慢飛閱讀 6,248評論 0 4
  • 國家電網(wǎng)公司企業(yè)標準(Q/GDW)- 面向?qū)ο蟮挠秒娦畔?shù)據(jù)交換協(xié)議 - 報批稿:20170802 前言: 排版 ...
    庭說閱讀 12,441評論 6 13
  • 親子日記第七十天,今天還是很熱,一如既往地送給孩子們?nèi)チ藢W校,回家收拾家務,剛吃完中午飯朋友打電話讓我陪她...
    AA穩(wěn)穩(wěn)閱讀 176評論 0 1

友情鏈接更多精彩內(nèi)容