2017-01-04 4 views
0

親アセンブリの変換に必要な子アセンブリの参照に問題があります。以下の身体子アセンブリのオートデスク設定が機能しない

{ master: 'urn:adsk.objects:os.object:stemn/57b9f339c77fe2652f830206-ckwdob3791d6u359wz7eklnmi.iam', 
    dependencies: 
     [ { file: 'urn:adsk.objects:os.object:stemn/57b9f339c77fe2652f830206-e3l7hokp0qxqn227b7qcjo47vi.iam', 
      metadata: 
      { childPath: 'fuselage.iam', 
      parentPath: '57b9f339c77fe2652f830206-ckwdob3791d6u359wz7eklnmi.iam' } }, 
     { file: 'urn:adsk.objects:os.object:stemn/57b9f339c77fe2652f830206-mhrb7um0of74iasv37nzh0k9.iam', 
      metadata: 
      { childPath: 'motor_mount.iam', 
      parentPath: '57b9f339c77fe2652f830206-ckwdob3791d6u359wz7eklnmi.iam' } } ] } 

https://developer.api.autodesk.com/references/v1/setreferenceにI POST

まず参照を設定した後、私は翻訳を要求し、翻訳の次のような結果を得る:私はのためのマニフェストを取得する。その後

{ Result: 'Success', 
    Scope: '25660970-8194-4de0-baa4-c8f1f132b2a7', 
    RegisterType: [ 'thumbnail', '2dviewing', '3dviewing' ] } 

を次のようになります。

{ guid: 'dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6c3RlbW4vNTdiOWYzMzljNzdmZTI2NTJmODMwMjA2LWNrd2RvYjM3OTFkNnUzNTl3ejdla2xubWkuaWFt', 
    owner: 'dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6c3RlbW4vNTdiOWYzMzljNzdmZTI2NTJmODMwMjA2LWNrd2RvYjM3OTFkNnUzNTl3ejdla2xubWkuaWFt', 
    type: 'design', 
    hasThumbnail: 'false', 
    startedAt: 'Wed Jan 04 04:43:59 UTC 2017', 
    urn: 'dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6c3RlbW4vNTdiOWYzMzljNzdmZTI2NTJmODMwMjA2LWNrd2RvYjM3OTFkNnUzNTl3ejdla2xubWkuaWFt', 
    region: 'US', 
    status: 'failed', 
    progress: 'complete', 
    success: '100%', 
    children: 
    [ { guid: 'aa85aad6-c480-4a35-9cbf-4cf5994a25ba', 
     messages: 
     [ { type: 'warning', 
      message: 'The drawing\'s thumbnails were not properly created.', 
      code: 'TranslationWorker-ThumbnailGenerationFailed' } ], 
     name: '57b9f339c77fe2652f830206-ckwdob3791d6u359wz7eklnmi.iam', 
     success: '100%', 
     hasThumbnail: 'false', 
     role: 'viewable', 
     version: '2.0', 
     urn: 'dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6c3RlbW4vNTdiOWYzMzljNzdmZTI2NTJmODMwMjA2LWNrd2RvYjM3OTFkNnUzNTl3ejdla2xubWkuaWFt', 
     status: 'failed', 
     assetCount: 25, 
     type: 'folder', 
     progress: 'complete', 
     children: 
     [ { guid: '015896d9-e6d3-4be6-8f3d-96da5e64eed3', 
      type: 'folder', 
      name: 'Scenes', 
      status: 'success', 
      progress: 'complete', 
      success: '100%', 
      hasThumbnail: 'false', 
      children: 
      [ { guid: '451f7aab-1917-40dd-b117-5dd8f90ab6a7', 
       type: 'geometry', 
       role: '3d', 
       name: 'Scene', 
       status: 'success', 
       messages: 
        [ { type: 'warning', 
         code: 'ATF-1023', 
         message: 
         [ 'The file: {0} does not exist.', 
         'X:\\Google Drive\\SCAAD\\PRJ_HAARDCraft\\HAARDCraft_JFlight\\CAD\\Fuselage\\fuselage.iam' ] }, 
        { type: 'warning', 
         code: 'ATF-1023', 
         message: 
         [ 'The file: {0} does not exist.', 
         'X:\\Google Drive\\SCAAD\\PRJ_HAARDCraft\\HAARDCraft_JFlight\\CAD\\Engine mount\\motor_mount.iam' ] }, 
        { type: 'error', 
         code: 'ATF-1026', 
         message: 
         [ 'The file: {0} is empty.', 
         'C:/worker/viewing-inventor-lmv/tmp/job-1/68/output/1/57b9f339c77fe2652f830206-ckwdob3791d6u359wz7eklnmi.svf' ] } ], 
       size: 27864, 
       progress: 'complete', 
       success: '100%', 
       hasThumbnail: 'false', 
       children: 
        [ { guid: '6dc4b244-8a47-4a75-bcb3-811dc7b4f294', 
         type: 'resource', 
         urn: 'urn:adsk.viewing:fs.file:dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6c3RlbW4vNTdiOWYzMzljNzdmZTI2NTJmODMwMjA2LWNrd2RvYjM3OTFkNnUzNTl3ejdla2xubWkuaWFt/output/1/57b9f339c77fe2652f830206-ckwdob3791d6u359wz7eklnmi.svf', 
         role: 'graphics', 
         mime: 'application/autodesk-svf', 
         size: 27864 } ] }, 
       { guid: '9bb1adbe-d9d9-4482-ac03-1d60bb0aea36', 
       type: 'resource', 
       urn: 'urn:adsk.viewing:fs.file:dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6c3RlbW4vNTdiOWYzMzljNzdmZTI2NTJmODMwMjA2LWNrd2RvYjM3OTFkNnUzNTl3ejdla2xubWkuaWFt/output/1/properties.db', 
       role: 'Autodesk.CloudPlatform.PropertyDatabase', 
       mime: 'application/autodesk-db', 
       status: 'success', 
       size: 24576 } ] }, 
      { guid: '039c2bcf-beb7-426b-916c-4a5adb814593', 
      type: 'resource', 
      role: 'Autodesk.CloudPlatform.DesignDescription', 
      urn: 'urn:adsk.viewing:fs.file:dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6c3RlbW4vNTdiOWYzMzljNzdmZTI2NTJmODMwMjA2LWNrd2RvYjM3OTFkNnUzNTl3ejdla2xubWkuaWFt/output/xref/designDescription.json', 
      mime: 'application/json' } ] } ] } 

同じコードパスを使用するsetreferenceを使用して設定された非アセンブリの子パーツを使用してアセンブリをレンダリングすることはできますが、子アセンブリを含むアセンブリをレンダリングするときにはsetreferenceは子アセンブリファイルへの参照を正常に設定していないようです。子アセンブリへの参照を設定する際にシーケンスに何か問題がありますか?

答えて

1

私は@sabrehageと議論し、最終的に作業コードを取得しました。

まず、Forge Derivative API v2(zip +ルートファイルのみ指定)を使用することをお勧めします。これにより、APIユーザーは参照を明示的に指定する必要はありません。

それでもフォージデリバティブAPI v1のを使用したい場合は、以下のノートである:ローカルInventorで

は、ファイルの参照はInventorのプロジェクトによって管理されています。 Inventorは、まずプロジェクトの特定のフォルダでrefファイルを探し、次に相対パスを探します。明らかに、ファイルがForgeのバケツにアップロードされると、プロジェクトファイルはなくなり、すべてのファイルは物理的な観点から同じレベルになります。したがって、v1では、送信者が指定する参照ファイルに依存します。

階層が似ている場合: http://adndevblog.typepad.com/cloud_and_mobile/2015/09/how-to-set-references-with-inventor-files-for-view-and-data-api.html

Top Assembly.iam 
    part1.ipt 
    part2.ipt 

参照ファイルは、単純にブログに記載されているもののように構成することができます。

@sabrehagenのデータセット内

、階層は、ネストされたアセンブリが含まれ、偶数サブフォルダに:

topassemb.iam 
    part in top assemb.ipt 
    subassem folder 
     subassem.iam 
     part1 in sub assem1.ipt 
     part2 in sub assem1.ipt 

正しい方法は、(のみトップアセンブリのための)1回の呼び出しで指定し、でサブフォルダを指定することです参照地図さらに、パス名はURLでエンコードされているのではなく、元の名前で定義する必要があります。すなわち、サブフォルダを指定せずに、フォージは、すべてのファイルが同じレベルの範囲内にあると考えて、それが最後に保存(絶対パス)の階層に競合した場合

{ 
    "master" : "urn:adsk.objects:os.object:adsk2017-8/topassemb.iam", 
    "dependencies" : [ 
     { 
      "file" : "urn:adsk.objects:os.object:adsk2017-8/subassem.iam", 
      "metadata" : { 
       "childPath" : "subassem/subassem.iam", 
       "parentPath" : "topassemb.iam" 
       } 
     }, 
     { 
      "file" : "urn:adsk.objects:os.object:adsk2017-8/part1%20in%20sub%20assem1.ipt", 
      "metadata" : { 
       "childPath" : "part1 in sub assem1.ipt", 
       "parentPath" : "subassem/subassem.iam" 
       } 
     }, 
     { 
      "file" : "urn:adsk.objects:os.object:adsk2017-8/part2%20in%20sub%20assem1.ipt", 
      "metadata" : { 
       "childPath" : "part2 in sub assem1.ipt", 
       "parentPath" : "subassem/subassem.iam" 
       } 
     }, 
     { 
      "file" : "urn:adsk.objects:os.object:adsk2017-8/part%20in%20top%20assemb.ipt", 
      "metadata" : { 
       "childPath" : "part in top assemb.ipt", 
       "parentPath" : "topassemb.iam" 
       } 
     } 
    ] 
} 

。そのため、バケット内の対応するファイルを見つけることができませんでした。

Forgeがファイルを取得して正しい参照を取得した後で、参照ファイルを調べ、指定されている場合はサブフォルダを作成し、それらのファイルをbucketのサブフォルダに格納し、最終的に変換します。

0

私が覚えているように、設定参照のWebサービスで部品を設定する必要があります。これはブログ:http://adndevblog.typepad.com/cloud_and_mobile/2015/09/how-to-set-references-with-inventor-files-for-view-and-data-api.htmlです。おそらくそれはあなたが問題を診断するのを助けるかもしれません。 しかし、手動で参照を設定する必要はないため、v2に移行することを強くお勧めします。すべてのデータセットをzipファイルとしてアップロードし、どのファイルがトップ(ルート)ファイルであるかを設定するだけで、Forgeは自動的に階層を分析します。これは別のブログです:http://adndevblog.typepad.com/cloud_and_mobile/2016/07/translate-referenced-files-by-derivative-api.html

+0

ありがとうございました。アセンブリに必要なファイルのリストにアクセスできないため、すべてのファイルのzipをアップロードすることはできません。私はそれが失敗するという意図でアセンブリファイルの翻訳を開始します。私はどのサポートファイルが見つからないのかを見て、それらのファイルを探し出し、ファイルをアップロードし、参照を設定してから、再度アセンブリを翻訳します。現在のところ、apiはアセンブリファイルに必要なファイルを取得するための方法を提供していません。あなたはその機能を追加できますか? これに関係なく、これはiamファイルをサポートする参照設定が動作しないように見えるという問題には対処していません。お知らせ下さい。 – sabrehagen

+0

申し訳ありませんがあなたの返信を忘れました。はい、現時点では、Webサービスは変換前に参照ファイルにルートファイルを通知しません。私はあなたのために願いを記録することができます。元の問題については、私にデモデータセットを提供することができますか?私はあなたの質問を誤解していたことを恐れている、私はテストを与える必要があります。あなたは[email protected]まで私に電子メールで送ることができます。ありがとう –

+0

ありがとう。私はデモを準備し、それをあなたに送ります。 – sabrehagen

関連する問題