【Revit API】改变填充区域的填充样式

话很少说,直接上代码app

var target = pattern.Target;
var name = pattern.Name;
var fpElem = FillPatternElement.GetFillPatternElementByName(doc, target, name);

using (var tran = new Transaction(doc, "FillPattern"))
{
tran.Start();
var selectionIds = app.ActiveUIDocument.Selection.GetElementIds(); if (selectionIds != null && selectionIds.Any()) { foreach (var id in selectionIds) { FilledRegion elem = doc.GetElement(id) as FilledRegion; if (elem != null && !elem.IsMasking) { OverrideGraphicSettings overrideGraphicSettings = new OverrideGraphicSettings(); overrideGraphicSettings = doc.ActiveView.GetElementOverrides(elem.Id); overrideGraphicSettings.SetProjectionFillPatternId(fpElem.Id); doc.ActiveView.SetElementOverrides(elem.Id, overrideGraphicSettings); } } } tran.Commit();}
相关文章
相关标签/搜索