如何编程创建线的样式(LineStyle)

从函数看,Revit没有直接提供方法来创建线的样式。LineStyle也没有提供Duplicate方法来复制新的样式。 我们可以通过创建一个新的线的子类别来创建一个新的线型。

请看下面的代码。

 [TransactionAttribute(Autodesk.Revit.Attributes.TransactionMode.Manual)]
  public class CreateLineStyle : IExternalCommand
  {
    public Result Execute(ExternalCommandData commandData, ref string messages, ElementSet elements)
    {

      UIApplication app = commandData.Application;
      Document doc = app.ActiveUIDocument.Document;
      Transaction trans = new Transaction(doc, "ExComm");
      trans.Start();

      Category lineCat = doc.Settings.Categories.get_Item(BuiltInCategory.OST_Lines);

      Category newCat = doc.Settings.Categories.NewSubcategory(lineCat, "joeTest1");
      Color newcolor = app.Application.Create.NewColor();
      newcolor.Red = 250;
      newcolor.Green = 10;
      newcolor.Blue = 0;
      newCat.LineColor = newcolor;
      trans.Commit();

      return Result.Succeeded;
    }
  }


这里只是指定了线的颜色,可以通过Category的属性修改线型,线宽等属性。

你可能感兴趣的:(编程,String,Class)