Как я могу создать действие для преобразования данных в Design Automation API?

Я создаю прототип веб-службы для преобразования данных с помощью API автоматизации проектирования в Autodesk Forge.

Мой подход состоит в том, чтобы вызвать действие, которое выполняет сценарий для импорта целевого файла данных (такого как STEP, формат IGES). В качестве примера я создал действие для преобразования файла STEP в DWG следующим образом:

{
    "HostApplication": "",
    "RequiredEngineVersion": "22.0",
    "Parameters": {
        "InputParameters": [{
            "Name": "Source",
            "LocalFileName": "input.stp"
        }, {
            "Name": "HostDwg",
            "LocalFileName": "$(HostDwg)"
        }],
        "OutputParameters": [{
            "Name": "Result",
            "LocalFileName": "output.dwg"
        }]
    },
    "Instruction": {
        "CommandLineParameters": null,
        "Script": "import\ninput.stp\nsaveas\n\noutput.dwg\n"
    },
    "Version": 1,
    "Id": "Step2Dwg"
}

Рабочий элемент для вызова этого действия был выполнен без ошибок, но в выходной файл (output.dwg) не было ничего импортировано из входного файла (input.stp). Возможно, это связано с тем, что некоторые поля (например, AllowedChildProcess) отсутствовали в определении действия «Step2Dwg», но я не знаю, как это исправить.

Мои вопросы:

  1. Как исправить определение активности "Step2Dwg" для успешного преобразования данных?
  2. Есть ли другой подход к созданию действия для успешного преобразования данных?

person K.H.    schedule 24.07.2018    source источник


Ответы (1)


Вы можете использовать действие «Translate-STEP2DWG». Оно принимает файл .stp в качестве входных данных и генерирует файл result.dwg в ​​качестве выходных данных. Это общедоступное действие, против которого любой может отправлять рабочие элементы.

Деятельность определяется так:

{
      "Id": "Translate-STEP2DWG",
      "AppPackages": [],
      "HostApplication": "AcTranslators.exe",
      "RequiredEngineVersion": "22.0",
      "Parameters": {
        "InputParameters": [
          {
            "Name": "HostDwg",
            "LocalFileName": "source.stp"
          }
        ],
        "OutputParameters": [
          {
            "Name": "Result",
            "LocalFileName": "result.dwg"
          }
        ]
      },
      "Instruction": {
        "CommandLineParameters": "-i source.stp -o result.dwg",
        "Script": ""
      },
      "AllowedChildProcesses": [
      ],
      "IsPublic": true,
      "Version": 1,
      "Description": ""
    }

Вот пример тела запроса рабочего элемента:

{
  "ActivityId": "Translate-STEP2DWG",
  "Arguments": {
    "InputArguments": [
      {
        "Resource": "https://s3.amazonaws.com/AutoCAD-Core-Engine-Services/TestDwg/3DStep.stp",
        "Name": "HostDwg"
      }
    ],
    "OutputArguments": [
      {
        "Name": "Result",
        "HttpVerb": "POST"
      }
    ]
  }
}
person Madhukar Moogala    schedule 24.07.2018