You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过API为标题栏边缘分配<Invisible lines>类别/图形样式

Revit API编程:设置标题栏族图纸边缘不可见问题

我正在通过编程定义标题栏族,需要将样板中的图纸边缘设置为不可见,且导出DWG格式时保持该状态。手动编辑标题栏族时,把图纸边缘分配到<Invisible lines>类别就能实现效果,但编程时遇到了阻碍。

已执行的操作

  • 从标题栏族样板创建文档并获取首个ViewSheet对象:
Document tbFamilyDoc = Application.uiApplication.Application.NewFamilyDocument(TITLEBLOCK_FAMILY_TEMPLATE);
ViewSheet viewSheet = new FilteredElementCollector(tbFamilyDoc)
    .OfClass(typeof(ViewSheet))
    .Cast<ViewSheet>()
    .First();
  • 计划通过修改线条的LineStyle属性实现需求,但无法获取<Invisible lines>对应的GraphicsStyle对象:
var lines = new FilteredElementCollector(tbFamilyDoc, viewSheet.Id)
    .WhereElementIsNotElementType()
    .OfClass(typeof(CurveElement))
    .Cast<CurveElement>()
    .ToList()
    .ForEach(line => line.LineStyle = graphicsStyleInvisibleLines);
  • 尝试通过内置类别获取对应Category对象,均返回null:
    • 通过BuiltInCategory.OST_InvisibleLines获取(RevitLookup显示该类别ID为-2000064,对应<Invisible lines>):
      Category invisibleLinesCat = tbFamilyDoc.Settings.Categories.get_Item(BuiltInCategory.OST_InvisibleLines);
      
    • 通过其父类别BuiltInCategory.OST_IOS(对应"Internal Object Styles",ID为-2000059)获取:
      Category internalCat = tbFamilyDoc.Settings.Categories.get_Item(BuiltInCategory.OST_IOS);
      

问题

如何获取<Invisible lines>类别或其对应的GraphicsStyle对象的引用?

内容的提问来源于stack exchange,提问作者Noa GL

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 16:55:10