使用revit api畫(huà)垂直于風(fēng)管的風(fēng)管示例
/// <summary>
/// 選擇風(fēng)管與風(fēng)管外一點(diǎn),畫(huà)與風(fēng)管垂直的風(fēng)管。
/// </summary>
[Transaction(TransactionMode.Manual)]
[Regeneration(RegenerationOption.Manual)]
public class cmd : IExternalCommand
{
public Result Execute(ExternalCommandData cmdData, ref string msg, ElementSet elements)
{
UIDocument uiDoc = cmdData.Application.ActiveUIDocument;
UIApplication uiApp = cmdData.Application;
Document doc = uiDoc.Document;
Selection selection = uiDoc.Selection;
Transaction ts = new Transaction(doc, "http://www.dbjr.com.cn");
ts.Start();
//得到一種風(fēng)管類型
DuctType ductType = null;
FilteredElementCollector collector = new FilteredElementCollector(doc);
collector.OfClass(typeof(DuctType));
foreach (Element el in collector.ToElements())
{
ductType = el as DuctType;
break;
}
//
Reference refDuct = selection.PickObject(ObjectType.Element, "選擇一根風(fēng)管:");
Duct duct = doc.GetElement(refDuct) as Duct;
XYZ xyz = selection.PickPoint();//選擇一點(diǎn)
LocationCurve lCurve = duct.Location as LocationCurve;
IntersectionResult interResult = lCurve.Curve.Project(xyz);//點(diǎn)在直線上的投影
if (interResult != null)
{
doc.Create.NewDuct(xyz, interResult.XYZPoint, ductType);
}
ts.Commit();
return Result.Succeeded;
}
}
相關(guān)文章
C#使用ZXing.Net實(shí)現(xiàn)識(shí)別二維碼和條碼
ZXing用Java實(shí)現(xiàn)的多種格式的一維二維條碼圖像處理庫(kù),而ZXing.Net是其.Net版本的實(shí)現(xiàn),本文主要為大家詳細(xì)介紹了如何使用ZXing.Net實(shí)現(xiàn)識(shí)別二維碼和條碼,需要的可以參考下2024-01-01
C# 泛型數(shù)組學(xué)習(xí)小結(jié)
C# 泛型數(shù)組學(xué)習(xí)中我們需要注意什么事項(xiàng)呢?C# 泛型數(shù)組的使用又是如何呢?那么本文就向你詳細(xì)介紹這方面的內(nèi)容2012-09-09
C#基于Socket的網(wǎng)絡(luò)通信類你了解嗎
這篇文章主要為大家詳細(xì)介紹了C#基于Socket的網(wǎng)絡(luò)通信類,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助2022-03-03
桌面浮動(dòng)窗口(類似惡意廣告)的實(shí)現(xiàn)詳解
c#簡(jiǎn)單工廠、工廠方法與抽象工廠的區(qū)別分析
unity實(shí)現(xiàn)貼圖矩陣運(yùn)算(旋轉(zhuǎn)平移縮放)
詳解C# Protobuf如何做到0分配內(nèi)存的序列化

