>ADN: DEVR3894
>ADN service level: Professional
>產品:Revit MEP 2012
>版本:2012
>語言:中文
>操作系統:window7 64bit
>聯系電話:137xxxx1960
>問題標題:關於修改元素參數的問題?
>問題內容:
上次提問,關於遍歷鏈接文檔創建空間的問題。
最終解決辦法是:在鏈接文檔的時候選擇“原點到原點”
失敗的原因就是坐標系沒有對正。
這次的問題如下:
我希望在風管連接彎頭之前,設置好首選的彎頭類型。
1.元素參數如果是int或者double可以直接修改。
如果是ElementId如何知道從哪裡得到這些Id
2.如圖所示,編輯風管類型。
如何改變T形三通,接頭,這樣的參數的值。
參考代碼:
[Transaction(TransactionMode.Manual)]
[Regeneration(RegenerationOption.Manual)]
cmd : IExternalCommand
{
Result Execute(ExternalCommandData cmdData, msg, ElementSet elements)
{
UIDocument uiDoc = cmdData.Application.ActiveUIDocument;
UIApplication uiApp = cmdData.Application;
Document doc = uiDoc.Document;
Selection selection = uiDoc.Selection;
Transaction ts = Transaction(doc, );
ts.Start();
FilteredElementCollector collector = FilteredElementCollector(doc);
collector.OfClass((Duct)).OfCategory(BuiltInCategory.OST_DuctCurves);
Duct duct = ;
(Element el collector)
{
duct = el Duct;
;
}
FilteredElementCollector collectorFitting = FilteredElementCollector(doc);
collectorFitting.OfClass((FamilyInstance)).OfCategory(BuiltInCategory.OST_DuctFitting);
FamilyInstance fitting = ;
(Element el collectorFitting)
{
fitting = el FamilyInstance;
;
}
(Parameter p duct.DuctType.Parameters)
{
(p.Definition.Name == )
{
p.Set();
}
(p.Definition.Name == )
{
p.Set(fitting.Category.Id);
}
}
ts.Commit();
Result.Succeeded;
}
}