这篇文章主要讲解了“Revit怎么创建和切换标记”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Revit怎么创建和切换标记”吧!
开头先讲一个问题,平时做施工图标记的时候一根梁的标记是非常多的,所以我们会通过切换标记的形式来切换标记(如下图所示),那这在代码中是如何实现的呢?
首先查看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));
}
效果:
感谢各位的阅读,以上就是“Revit怎么创建和切换标记”的内容了,经过本文的学习后,相信大家对Revit怎么创建和切换标记这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。