|
从函数看,Revit没有直接提供方法来创建线的样式。LineStyle也没有提供Duplicate方法来复制新的样式。 我们可以通过创建一个新的线的子类别来创建一个新的线型。
请看下面的代码。
- [csharp] view plaincopy
- [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的属性修改线型,线宽等属性。
作者:叶雄进文章来源:http://blog.csdn.net/joexiongjin/article/category/782739
|
|