博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Revit API画垂直于风管的风管
阅读量:6416 次
发布时间:2019-06-23

本文共 1233 字,大约阅读时间需要 4 分钟。

start
///
 
<summary>
///
 选择风管与风管外一点,画与风管垂直的风管。
///
 
</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://revit.5d6d.com
");
        ts.Start();
        
//
得到一种风管类型
        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, 
"
选择一根风管:
");
        Duct duct = doc.GetElement(refDuct) 
as Duct;
        XYZ xyz = selection.PickPoint();
//
选择一点
        LocationCurve lCurve = duct.Location 
as LocationCurve;
        IntersectionResult interResult = lCurve.Curve.Project(xyz);
//
点在直线上的投影
        
if (interResult != 
null)
        {
            doc.Create.NewDuct(xyz, interResult.XYZPoint, ductType);
        }
        ts.Commit();
        
return Result.Succeeded;
    }
}
url:

转载于:https://www.cnblogs.com/greatverve/p/Curve-Project.html

你可能感兴趣的文章
【iOS开发-91】GCD的同步异步串行并行、NSOperation和NSOperationQueue一级用dispatch_once实现单例...
查看>>
Redis+Spring缓存实例
查看>>
Storm集群安装详解
查看>>
centos7.x搭建svn server
查看>>
原码编译安装openssh6.7p1
查看>>
项目实战:自定义监控项--监控CPU信息
查看>>
easyui-datetimebox设置默认时分秒00:00:00
查看>>
蚂蚁分类信息系统5.8多城市UTF8开源优化版
查看>>
在django1.2+python2.7环境中使用send_mail发送邮件
查看>>
“Metro”,移动设备视觉语言的新新人类
查看>>
PHP源代码下载(本代码供初学者使用)
查看>>
Disruptor-NET和内存栅栏
查看>>
Windows平台ipod touch/iphone等共享笔记本无线上网设置大全
查看>>
播放加密DVD
查看>>
产品设计体会(3013)项目的“敏捷沟通”实践
查看>>
RHEL6.3基本网络配置(1)ifconfig命令
查看>>
网络诊断工具之—路由追踪tracert命令
查看>>
Java模拟HTTP的Get和Post请求(增强)
查看>>
php 环境搭建(windows php+apache)
查看>>
让虚拟机的软盘盘符不显示(适用于所有windows系统包括Windows Server)
查看>>