Преобразование DWG в DGN с использованием API автоматизации проектирования - PullRequest
0 голосов
/ 13 марта 2019

Есть ли возможность для конвертации из dwg в ​​dgn с помощью API автоматизации кузнечного проектирования? Если да, то каков будет лучший способ сделать это? Любое предложение будет полезно.

Ответы [ 2 ]

0 голосов
/ 10 мая 2019

Я пытался получить конкретные коды для этого вопроса, поскольку он требует некоторых хитростей и поддержки начального файла в Design Automation. С помощью команды инженеров, теперь она работает.

Предположим, мы тестируем с почтальоном. Если вы работаете с v2 Design Automation, сценарии ниже демонстрируют использование.

Активность

{
  "HostApplication": "",
  "RequiredEngineVersion": "23.1",
  "Parameters": {
    "InputParameters": [{
      "Name": "HostDwg",
      "LocalFileName": "$(HostDwg)"
    }],
    "OutputParameters": [{
      "Name": "Result",
      "LocalFileName": "result.dgn"
    }]
  },
  "Instruction": {
    "CommandLineParameters": null,
    "Script":"(command \"_-DGNEXPORT\" \"_V8\" (strcat (getvar \"DWGPREFIX\") 
 \"result.dgn\") \"_Master\" \"Standard\" (strcat (getvar \"LOCALROOTPREFIX\") 
  \"Template\\\\V8-Imperial-Seed3D.dgn\"))\n"
  },
  "Version": 1,
  "Id": "CreateActByLISP"
}

WorkItem :

{
  "@odata.type": "#ACES.Models.WorkItem",
  "Arguments": {
    "InputArguments": [
      {
        "Resource": "http://forge-test.oss-cn-shanghai.aliyuncs.com/test.dwg",
        "Name": "HostDwg",
        "StorageProvider": "Generic"
      }
    ],
    "OutputArguments": [
      {
        "Name": "Result",
        "StorageProvider": "Generic",
        "HttpVerb": "POST",
        "Resource": null
      }
    ]
  },
  "ActivityId": "CreateActByLISP",
  "Id": ""
}

При работе с v3 в Design Automation сценарий будет выглядеть следующим образом. Примечание: двигатель нуждается в 23,1 (Autodesk.AutoCAD + 23_1)

Активность

{
"commandLine": [
    "$(engine.path)\\accoreconsole.exe /i $(args[HostDwg].path) /s $(settings[script].path)"
],
"parameters": {
    "HostDwg": {
        "verb": "get",
        "description": "Host drawing to be loaded into acad.",
        "localName": "$(HostDwg)"
    },
    "Result": {
        "verb": "post",
        "description": "Results",
        "localName": "result.dgn"
    }
},
"engine": "Autodesk.AutoCAD+23_1",
"appbundles": [],
"settings": {
    "script": {
        "value": "(command \"_-DGNEXPORT\" \"_V8\" (strcat (getvar \"DWGPREFIX\") \"result.dgn\") \"_Master\" \"Standard\" (strcat (getvar \"LOCALROOTPREFIX\") \"Template\\\\V8-Imperial-Seed3D.dgn\"))\n"
    }
},
"description": "PlotToPdf for all layouts.",
 "id": "myexportdgn"
}

WorkItem

{
 "activityId": "{{your nick name}}.myexportdgn+{{activity alias}}",
 "arguments": {
"HostDwg": {
  "url": "http://forge-test.oss-cn-shanghai.aliyuncs.com/test.dwg"
},
"Result": {
  "verb": "put",
  "url": "<your upload url>"
   }
 }
 }
0 голосов
/ 14 марта 2019

Да, вы можете использовать команду -DGNEXPORT в вашем скрипте для достижения этой цели.

...