您的位置:首页 > 编程语言 > Go语言

Revit开发通过Category设置构件颜色

2016-10-24 13:31 369 查看
在Revit的视图里可以通过 可见性/图形替换

来设置构件的显示颜色,里面有一个通过模型类别

设置构件颜色的方法,在API里也是可以实现这一

操作的。

下面是一个设置墙类别构件颜色的小例子

注意:此颜色在真实模式下不显示

            Document doc = commandData.Application.ActiveUIDocument.Document;

            //过滤填充图案

            FilteredElementCollector fillPatternFilter = new FilteredElementCollector(doc);

            fillPatternFilter.OfClass(typeof(FillPatternElement));

            //获取实体填充

            FillPatternElement fp = fillPatternFilter.First(m => (m as FillPatternElement).GetFillPattern().IsSolidFill) as FillPatternElement;

            Transaction trans = new Transaction(doc, "trans");

            trans.Start();

            View v = doc.ActiveView;

            ElementId cateId =new ElementId((int)BuiltInCategory.OST_Walls);

            //

            OverrideGraphicSettings ogs = v.GetCategoryOverrides(cateId); 

            //设置 投影/表面 ->填充图案->填充图案

            ogs.SetProjectionFillPatternId(fp.Id);

            //设置 投影/表面 ->填充图案->颜色

            ogs.SetProjectionFillColor(new Color(255, 0, 0));

            //应用到视图

            v.SetCategoryOverrides(cateId, ogs);            

            trans.Commit();

            return Result.Succeeded;

博主会经常更新一些技术文章,请大家多多关注,

源码下载请加qq群480950299
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐