话不多说,直接上代码

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();
}

 

posted on 2018-07-05 14:09  airforce094  阅读(872)  评论(0编辑  收藏  举报