如何在Forge中导入DWG文件以及如何将RFA文件作为输入传递并输出RFA文件

时间:2020-02-26 17:36:59

标签: autodesk-forge revit

我正在尝试将现有的Revit Addin转换为在Forge Design Automation上运行。在我的代码中,有一个步骤可以导入DWG文件。如果我将DWG文件作为输入参数传递,如何在代码中引用该文件以导入该文件?另外,如何在“活动命令行”中将RFA文件指定为输入而不是RVT?

“commandLine": [ "$(engine.path)\\\\revitcoreconsole.exe /i $(args[rvtFile].path) /al $(appbundles[CountItApp].path)" ],”

下面的当前代码

//获取文档 _rvtDoc = commandData.Application.ActiveUIDocument.Document;

        DWGImportOptions DIO = new DWGImportOptions();
        DIO.ColorMode = ImportColorMode.Preserved;
        //DIO.Unit = ImportUnit.Foot;
        DIO.CustomScale = 1.00;
        DIO.Placement = ImportPlacement.Origin;
        ElementId eleID = new ElementId(1234);
        string path = @"C:\Logan\BIM Dev\Reference Files\NewTestVAV_Exploded.dwg";
        View nv = _rvtDoc.ActiveView;

1 个答案:

答案 0 :(得分:0)

要将DWG文件作为输入文件传递,您需要:

  1. 在活动中添加另一个参数,例如:

        "inputDwg": {
        "verb": "get",
        "description": "input Dwg file",
        "localName": "input.dwg"
        },
    
  2. 然后,在工作项中传递dwg的网址。

  3. 处理插件中的Dwg文件,代码应与您所拥有的非常相似,但请记住,由于无法使用doc.ActiveView,因此无法对其进行doc.ActiveView操作,并且需要手动获取路径Dwg文件的文件应为 Directory.GetCurrentDirectory()+ @“ \ input.dwg”

    DWGImportOptions DIO = new DWGImportOptions();
    DIO.ColorMode = ImportColorMode.Preserved;
    //DIO.Unit = ImportUnit.Foot;
    DIO.CustomScale = 1.00;
    DIO.Placement = ImportPlacement.Origin;
    ElementId eleID = new ElementId(1234);
    string path = Directory.GetCurrentDirectory()+@"\input.dwg";
    View nv = //Find the view you want here
    doc.Import(path, DIO, nv, eleId );
    

希望有帮助;)