2017-10-11 34 views
1

私たちは既存のthree.jsアプリケーションを持っており、CADデザインのサポートを追加しています。以前はDXFファイルから作成したgeojsonデータをカスタムレンダリングして管理していましたが、Autodesk Forgeを使用してより多くのデータタイプをサポートし、レンダリング前にデータを前処理しています。Autodesk Forge - カスタムビューア

序文として、単にForgeビューアthreejsバージョンを使用することはできません。これは、アプリケーション全体をForgeビューアの上に拡張としてビルドする必要があるためです。

3Dファイルの場合、Forge APIからobj/mtlファイルをダウンロードし、OBJLoader2の例を使用してvanilla three.jsに直接ロードします。私の最初のテストに基づいて、これはうまくいくと思われ、私の好みに変身します。メッシュの作成方法を制御し、アプリケーション内で動作するように最適化されていることを確認できます。

偽造apiとして2Dファイルを読み込もうとしているときに問題が発生するのは、私が知る限り、vanilla three.jsを使用してこれらをロードする方法がないf2dファイルをダウンロードさせることだけです。何か案は? 2Dデザインが別の形式でエクスポートすると、独自に読み込むことができるようになりますか?

+0

APIを使用して2Dデザインを3Dデザインに変換する方法はありますか?このようにしてobj/mtlをダウンロードし、3Dビューをレンダリングするのと同じ方法でレンダリングすることができます。 – kerv

答えて

2

現時点では、単純なThree.jsで2Dを読み込むための単純なパイプラインはわかりません。 2dでは、dwg/dxfを意味していると推測していますが、そうでない場合はもっと明示的に... Forge Model Derivatives REST APIは、dwgからsvf(f2d)以外のエクスポート形式を提供しません。

たとえば、3Dソリッドを3Dに追加することで2D DWGを変換することができますが、次にobjの書き出しが何であるかはわかりませんが、おそらく面白くないかもしれませんが、試してみる。

もう1つの方法は、AutoCADでDesign Automation APIを使用することです.DWGをアップロードして、ビューアにロードできるカスタム形式に図面を変換するカスタムdllを実行すると、AutoCAD ObjectARXまたはAutoCADが必要になります。 Net APIの専門知識と、扱う予定の図面の複雑さにもよりますが、かなりの作業である可能性があります。

最後に、アプリケーションの一部を書き換えることを意味していても、ビューアはThree.jsに基づいているので、Forgeビューアを使用することを検討することをお勧めします。そのため、一部の機能を簡単に移行できます。ちょうどhtml/cssであり、その上に任意のUI JavaScriptフレームワークを統合することができます。これは、フォーマット間の畳み込まれたパイプラインの翻訳よりも、長期的にはより強力で柔軟な解決策になります。3dをobjにエクスポートすると、CADファイルに埋め込まれているすべてのメタデータも失われます。あなたに発行してください。

私は助けて欲しいと思っています。

+0

ほんの少し役に立ちます。ありがとう ええ、私が話していた2Dは、3DオブジェクトがないDWGとDGNファイルです。単純な行といくつかのテキスト要素を考えてみましょう。 私はそれがシステムが3Dだと思うように見せかけます。試してみる価値。 私はこれらのオブジェクトを手作業で変換するという贅沢を常に持っているわけではないので、そのプロセス全体を自動化したいと考えています。私は実際には、どんな種類のファイルもアップロードできるシステムを望んでおり、私のシステムはそれをレンダリングします。 – kerv

関連する問題