autodeskrevit2016二次開發(fā)入門教程第八章交互及ui api_第1頁
autodeskrevit2016二次開發(fā)入門教程第八章交互及ui api_第2頁
autodeskrevit2016二次開發(fā)入門教程第八章交互及ui api_第3頁
autodeskrevit2016二次開發(fā)入門教程第八章交互及ui api_第4頁
autodeskrevit2016二次開發(fā)入門教程第八章交互及ui api_第5頁
已閱讀5頁,還剩34頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

Autodesk?Revit2016

二次開發(fā)入門教程

第12課時

第八章交互及UIAPI

周婧祎北京谷雨時代教育科技有限公司上海比程信息科技有限公司上節(jié)回顧上一節(jié)中,我們進行了元素創(chuàng)建與修改的實例練習0103TaskDialog對話框Ribbon菜單本章內(nèi)容02Selection交互API01Selection交互APISelection類SelectionselectionmandData.Application.ActiveUIDocument.Selection;01Selection交互APIPick方法–點XYZ(s)PickPointPickBoxPick方法–元素ElementsPickElementsByRectanglePick方法–幾何引用Reference(s)PickObjectPickObjects01Selection交互API選擇點方法描述PickPoint()提示用戶在當前工作平面選取點PickPoint(String)用自定義的文字,提示用戶在當前工作平面選取點PickPoint(ObjectSnapTypes)調(diào)用指定的對象捕捉,提示用戶在當前工作平面選取一個點PickPoint(ObjectSnapTypes,String)調(diào)用指定的對象捕捉并用自定義的文字,提示用戶在當前工作平面選取一個點PickBox(PickBoxStyle)選擇一個PickedBoxPickBox(PickBoxStyle,String)自定義的文字,提示用戶選擇一個PickedBox01Selection交互API選擇點XYZpoint=selection.PickPoint(ObjectSnapTypes.Midpoints,"Pickapoint");PickedBoxbox=selection.PickBox(

PickBoxStyle.Directional,"pickabox");varmax=box.Max;varmin=box.Min;01Selection交互API選擇元素方法描述PickElementsByRectangle()提示用戶畫一個矩形來選取多個元素PickElementsByRectangle(String)用自定義的文字,提示用戶畫一個矩形來選取多個元素PickElementsByRectangle(ISelectionFilter)傳入一個自定義過濾器,并提示用戶畫一個矩形來選取多個元素PickElementsByRectangle(ISelectionFilter,String)傳入一個自定義過濾器并用自定義的文字,提示用戶畫一個矩形來選取多個元素01Selection交互API選擇元素IList<Element>pickedElements=selection.PickElementsByRectangle("pickelements");foreach(varelementinpickedElements){}IList<Element>pickedElements=selection.PickElementsByRectangle(

new

WallSelectionFilter(),"pickelements");public

class

WallSelectionFilter:ISelectionFilter{

public

boolAllowElement(Elementelem){

returnelemis

Wall;}

public

boolAllowReference(Autodesk.Revit.DB.Referencereference,Autodesk.Revit.DB.XYZposition){

return

true;}}01Selection交互API選擇幾何引用Reference方法描述PickObject(ObjectType)提示用戶選擇一個指定類型的ReferencePickObject(ObjectType,ISelectionFilter)傳入一個自定義過濾器并提示用戶選擇一個指定類型的ReferencePickObject(ObjectType,String)用自定義的文字,提示用戶選擇一個指定類型ReferencePickObject(ObjectType,ISelectionFilter,String)傳入一個自定義過濾器并用自定義的文字,提示用戶選擇一個指定類型的ReferencePickObjects(ObjectType)提示用戶選擇多個指定類型的ReferencePickObjects(ObjectType,ISelectionFilter)用自定義的文字,提示用戶選擇多個指定類型的ReferencePickObjects(ObjectType,String)傳入一個自定義過濾器并用自定義的文字,提示用戶選擇多個指定類型的ReferencePickObjects(ObjectType,ISelectionFilter,String)傳入一個自定義過濾器并用自定義的文字,提示用戶選擇多個指定類型的Reference01Selection交互API選擇幾何引用ReferenceReferencereference=selection.PickObject(ObjectType.Face,new

WallSelectionFilter(),"SelectaWall");Elementwall=RevitDoc.GetElement(reference);Faceface=wall.GetGeometryObjectFromReference(reference)as

Face;Referencereference=selection.PickObject(ObjectType.Face,"SelectaWall");Elementwall=RevitDoc.GetElement(reference);01Selection交互API取消選擇(ESC)->OperationCanceledExceptiontry{

//pick...}catch(Autodesk.Revit.Exceptions.OperationCanceledException){

//ESCpressed}01Selection交互API

實例練習·選擇一個點,在該點創(chuàng)建一個柱子·選擇剛創(chuàng)建的柱子,計算其體積·框選若干元素,得到選中的墻的數(shù)量RevitAPI開發(fā)論壇

Revit開發(fā)幫助Revit開發(fā)討論帖

Revit開發(fā)討論中國BIM論壇

Revit開發(fā)源碼下載Autodesk,Asia,Pte,Ltd.AutodeskRevit二次開發(fā)基礎教程[M].上海市四平路1239號:同濟大學出版社,2015.1-37參考文獻賈合豐.

2016Autodesk最新開發(fā)計劃培訓課程資料賈合豐.

Revit開發(fā)進階(基本篇2)謝謝觀看!Autodesk?Revit2016

二次開發(fā)入門教程

第13課時

第八章交互及UIAPI

周婧祎北京谷雨時代教育科技有限公司上海比程信息科技有限公司上節(jié)回顧上一節(jié)中我們主要講到了Selection交互API還進行了一系列的實例練習

0103TaskDialog任務對話框Ribbon菜單本章內(nèi)容02Selection交互API02TaskDialog任務對話框在Revit中,任務對話框是具有Revit風格的Windows對話框的替代品,是一種典型的模態(tài)對話框。1.創(chuàng)建展示任務對話框的方法有2種:

·創(chuàng)建并單獨設值任務對話框,使用Show()方法顯示給用戶 ·運用靜態(tài)Show方法直接創(chuàng)建并展示給用戶(僅有一個子集的選項可被設定)2.任務對話框可以被用于:

·給用戶提供信息。 ·詢問用戶,并得到反饋 ·允許用戶選擇,并執(zhí)行相應命令02TaskDialog任務對話框任務對話框的控件:1)標題(Title) 6)普通按鈕(CommonButton)2)主標題(MainInstruction) 7)默認按鈕或鏈接(Defaultbuttonorlink)3)主要內(nèi)容(MainContent) 8)不再提示復選框(DNSMCheckbox)4)擴展內(nèi)容(ExpandedContent) 9)文字信息(FooterText)5)命令鏈接(CommandLinks) 方法描述Show()顯示任務對話框Show(String,String)顯示一個包含標題、主要說明和關閉按鈕的任務對話框Show(monButtons)顯示一個包含標題、主要說明和普通按鈕的任務對話框Show(monButtons,TaskDialogResult)顯示一個包含標題、主要說明、普通按鈕和默認按鈕的任務對話框02TaskDialog任務對話框TaskDialog.Show("title",

"Instruction");TaskDialogResult

result

=TaskDialog.Show("title",

"Instruction"monButtons.Ok|monButtons.No,TaskDialogResult.No);02TaskDialog任務對話框02TaskDialog任務對話框任務對話框執(zhí)行結(jié)果每個任務對話框都有執(zhí)行結(jié)果,用戶可以拿到該結(jié)果進行進一步的操作和處理任務對話框有以下這些Result:·None ·CommandLink1·OK ·CommandLink2·Cancel ·CommandLink3·Retry ·CommandLink4·Yes ·Close ·No

02TaskDialog任務對話框

實例練習運用兩種方法創(chuàng)建任務對話框RevitAPI開發(fā)論壇

Revit開發(fā)幫助Revit開發(fā)討論帖

Revit開發(fā)討論中國BIM論壇

Revit開發(fā)源碼下載Autodesk,Asia,Pte,Ltd.AutodeskRevit二次開發(fā)基礎教程[M].上海市四平路1239號:同濟大學出版社,2015.1-37參考文獻賈合豐.

2016Autodesk最新開發(fā)計劃培訓課程資料賈合豐.

Revit開發(fā)進階(基本篇2)謝謝觀看!Autodesk?Revit2016

二次開發(fā)入門教程

第14課時

第八章交互及UIAPI

周婧祎北京谷雨時代教育科技有限公司上海比程信息科技有限公司上節(jié)回顧上一節(jié)中我們主要講到了TaskDialog任務對話框的兩種創(chuàng)建方法0103TaskDialog對話框Ribbon菜單本章內(nèi)容02Selection交互API03Ribbon菜單1.選項卡頁(RibbonTab):用戶可以創(chuàng)建一個新的選項卡頁,用來管理自己的面板RibbonPanel2.面板(RibbonPanel):其他控件的容器3.命令按鈕(PushButton):對應一個mand,單擊這個按鈕,對應的mand將被執(zhí)行。4.下拉按鈕(PulldownButton):帶有下拉列表的按鈕控件,表中的每個元素都是一個命令按鈕,在下拉列表的元素間可以加水平分割線。5.下拉記憶按鈕(SplitButton):是下拉按鈕的派生類控件,分為上下兩部分,上部分功能類似命令按鈕,下部分功能類似下拉按鈕。6.下拉組合框(ComboBox):是有下拉列表的選擇控件,通過單擊控件上的箭頭可顯示或隱藏下拉列表,此控件不支持多項選擇。03Ribbon菜單選項卡頁命令按鈕下拉記憶按鈕下拉按鈕面板下拉組合框分隔符03Ribbon菜單·創(chuàng)建Ribbon對象 一般都在IExternalApplication的OnStartup函數(shù)里面, mand也可以行·創(chuàng)建RibbonTab:UIControlledApplication.CreateRibbonTab(string)UIApplication.CreateRibbonTab(string)·創(chuàng)建RibbonPanel:UIControlledApplication.CreateRibbonPanel(tabName,panelName)UIApplication.CreateRibbonPanel(tabName,panelName)03Ribbon菜單創(chuàng)建控件(按鈕等)RibbonPanel.AddItem(RibbonItemData)varbuttonData=newPu

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論