做了一个自动测算净高的插件,需要通过注释块标记高度,但是出来的时候会有边界线,如下图,通过filledregionType的lineweight定义宽度失败,通过LineStyleId进行设置,但是直接获取LineStyle样式只会获取管理->线样式里面的线,没有我们需要的<不可见线>这个分类。
此处需要收集以下GraphStyle找到不可见线Id直接赋值即可,实例中我将绿色的部分进行边界取消
var filter = new FilteredElementCollector(doc);
var dates = filter.OfClass(typeof(GraphicsStyle)).ToElements();
var line = dates.Where(x => x.Name.Contains("线")).ToList();
var fake = line.FirstOrDefault(x => x.Name.Contains("不可见"));
//201是不可见线的id作为样板中自带的id是不变的如果怕出问题可以用上面的方法获取
fill.SetLineStyleId(new ElementId(201));