Building Coder(Revit 二次开发) - 改变元素颜色

本文介绍了如何使用编程方法在指定视图中通过视图类的ProjColorOverrideByElement属性来改变单个元素的颜色,以实现改变注释符号如标签的颜色。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原文链接: Change Element Colour

我们曾经在博文 changing the colour of model or detail curves 中讨论过如何通过设置模型或者细节曲线的类别线风格来改变它们的颜色。

现在我们又遇到了另一个小问题:如何设置一个元素的颜色。为此 Joe Ye 给出了一个简单明确的回答。

提问:
如何通过编程方式改变一个注释符号的颜色?比方说标签?

回答:
通过编程方式,可以在指定视图中通过视图类的 ProjColorOverrideByElement 属性该表单个元素的颜色。该属性要求一个元素集合作为参数,然后在指定视图中覆盖指定元素的投影线颜色。
public void ChangeElementColor()
{
  Application app = this.ActiveUIDocument.Application.Application;
 
  UIDocument uidoc = this.ActiveUIDocument;
  Document doc = uidoc.Document;
 
  Color color = app.Create.NewColor();
  color.Blue = ( byte ) 150;
  color.Red = ( byte ) 200;
  color.Green = ( byte ) 200;
 
  Selection sel = uidoc.Selection;
 
  Reference ref1 = sel.PickObject( ObjectType.Element, "Pick element to change its colour" );
 
  Element elem = ref1.Element;
 
  List<ElementId> ids = new List<ElementId>( 1 );
  ids.Add( elem.Id );
 
  Transaction trans = new Transaction( doc );
  trans.Start( "ChangeColor" );
 
  doc.ActiveView.set_ProjColorOverrideByElement( ids, color );
 
  trans.Commit();
}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值