当前位置:网站首页>Revit二次开发——创建和切换标记(第十六期)
Revit二次开发——创建和切换标记(第十六期)
2022-04-21 12:48:00 【一席青衣卧龙城】
开头先讲一个问题,平时做施工图标记的时候一根梁的标记是非常多的,所以我们会通过切换标记的形式来切换标记(如下图所示),那这在代码中是如何实现的呢?
首先查看API,这是我们创建一个NewTag所需要的各个参数:
第一个参数:我们用doc.ActiveView当前活动视图;
第二个参数:找到我们的梁;
第三个参数:是否加箭头;
第四个参数:有三种形式:类别标记,多类别标记和材质。我们选第一个类别标记。
第五个参数:水平方向还是竖直方向。
第六个参数:坐标
FilteredElementCollector fil = new FilteredElementCollector(doc, uiDoc.ActiveView.Id);
fil.OfCategory(BuiltInCategory.OST_StructuralFraming);//梁
foreach(Element el in fil)
{
IndependentTag tagg = doc.Create.NewTag(doc.ActiveView, el, true, TagMode.TM_ADDBY_CATEGORY, TagOrientation.Vertical, new XYZ (0,0,0));//给每一夸梁进行标记
}
实现的效果:
系统只按默认的上次的选择进行创建,不能实现一件标记,那么接下来该怎么做呢?
这里只需要用到一句话: tagg.ChangeTypeId(id);
和上边的代码全部整合:
FilteredElementCollector fil = new FilteredElementCollector(doc, uiDoc.ActiveView.Id);
fil.OfCategory(BuiltInCategory.OST_StructuralFraming);//梁
FilteredElementCollector filtered = new FilteredElementCollector(doc);//标注
filtered.OfClass(typeof(FamilySymbol)).OfCategory(BuiltInCategory.OST_StructuralFramingTags);
ElementId id = null;
foreach (FamilySymbol tag in filtered)
{
if (tag.Name == "梁集中标注")
{
id = tag.Id;
}
}
foreach (Element el in fil)
{
IndependentTag tagg = doc.Create.NewTag(doc.ActiveView, el, true, TagMode.TM_ADDBY_CATEGORY, TagOrientation.Vertical, new XYZ (0,15,0));//给每一夸梁进行标记
tagg.ChangeTypeId(id);
IndependentTag tag = doc.Create.NewTag(doc.ActiveView, el, true, TagMode.TM_ADDBY_CATEGORY, TagOrientation.Vertical, new XYZ(0, 0, 0));
}
效果:
版权声明
本文为[一席青衣卧龙城]所创,转载请带上原文链接,感谢
https://cloud.tencent.com/developer/article/1985229
边栏推荐
猜你喜欢

mysql数据库操作语句练习

2020 meituan (multithreading + redis)

GSMA宣布:2022 MWC上海延期举办

2020年4面美团(多线程+redis

Teach you to easily solve CSRF Cross Site Request Forgery Attack

IPEmotion采集J1939协议信号

A comprehensive understanding of static code analysis

Controlling the release and introduction of rip routing based on Routing

第四章 SQL查询之-层次化查询

风丘科技为您提供10M以太网解决方案
随机推荐
import in protocol buffer
pycharm 跳转到指定行
Flowable activiti7 countersign
Simulated Login of selenium's slider verification code (pig Bajie website)
2022年监理工程师合同管理练习题及答案
2022年初级会计职称考试经济法基础练习题及答案
DeFi借贷VS传统金融“无风险”利率产品
2022年监理工程师考试质量、投资、进度控制练习题及答案
SM state secret learning
Validation data validation annotation
Modify the name of the string through the list
2022年一级注册建筑师考试建筑物理与设备复习题及答案
import in protocol buffer
SM国密学习
Berkeley, Samsung | a fast post training converter pruning framework
研讨会回放视频:如何提升Jenkins能力,使其成为真正的DevOps平台
基于C#实现文本读取的7种方式
二叉树遍历系列02-Morris遍历
一文了解全面静态代码分析
Introduction notes to PHP zero Foundation (11): String