2014 Revit API中的Application.ActiveDocument
命名空间在哪里?
我正在尝试使用API在草图平面下的Revit模型中绘制线条,此时,我失败了。对于大多数事情'Revit',我在The Building Coder跟随Jeremy Tammik。然而,这一次,由于Autodesk更新/修改名称空间,他导致我走错了方向。我可能在2011年之前转换为VB.NET some C# he posted a while back,它创建了一个草图平面并绘制线条。问题是他用于实例化对象的名称空间已被更改。例如,他将变量“X”标注为Autodesk.Revit.Application
对象,但此时,该命名空间已更改为Autodesk.Revit.ApplicationServices.Application
。
我已经创建了一个Creation
文档和Application
,我正在尝试将该文档设置为AutoDesk.Revit.ApplicationServices.ActiveDocument.Create
方法,但它似乎不再存在了。我在Google上搜索过高低,但我似乎找不到任何东西。
有人能指出我正确的方向吗?
答案 0 :(得分:2)
下面是一个C#代码段,向您展示如何访问它。每个实体Application和Document都在UI部分(UIApplication
/ UIDocument
)和数据库部分(Application
/ Document
)之间分开。哪个文档处于活动状态是UI的问题,因此您首先必须从命令参数中获取UIApplication
对象。然后从那里得到UIDocument
对象。最后,您可以访问数据库Document
对象。
public void CreateSketchPlane(ExternalCommandData commandData)
{
UIApplication uiApplication = commandData.Application;
UIDocument activeUiDocument = uiApplication.ActiveUIDocument;
Document document = activeUiDocument.Document;
//document.Create.NewSketchPlane(...
}
仅供参考 - Application.ActiveDocument
不是命名空间。 Application
是类,ActiveDocument
是该类的属性,就像现在您拥有类 {{ 1}}及其属性 UIApplication
。
答案 1 :(得分:0)
许多旧的创建方法已经转移到每个类中的静态Create()方法。
例如,创建一条线的方法现在是Line.Create()
看看"新的""每个API年份的文档,以查看更改内容