0

x3dom ライブラリを使用して外部の x3d ファイルを表示し、ロードした 3D シーンを 360 度回転させたいポリマー サイトがあります。

x3dom をポリマーで成功させた人はいますか? これが機能しない理由はわかりません。すべてのポリマーが正しく (私が持っている)、前提条件の x3dom.js スクリプトと x3dom.css もページの先頭にロードしたと仮定してください。これは、重要な部分を示すためにコード スニペットを簡略化したものです。

 <x3d width='350px' height='400px'>
      <scene>
           <inline nameSpaceName="myNS" mapDEFToID="true" url="{{_x3dPath}}"></inline>
      </scene>
 </x3d>

 <script>
      Polymer({
           properties: {
                _x3dPath: {type: String},
           }, 

           ready: function() { 
                this._x3dPath = "/someDynamicPath/threeDfile.x3d";
           }
      });
 </script>

助言がありますか?

4

1 に答える 1

1

サードパーティ ライブラリのラッパーとして機能するカスタム要素を作成する必要があります。(例: x3dom-wrapper.html )。

そのファイル内に、x3dom .js へのスクリプト参照を追加する必要があります。

<script type="text/javascript" src='../bower_components/x3dom/x3dom.js'></script>

次に、他のポリマー コンポーネントと同様に、ラッパー カスタム要素をインポートする必要があります。そうすれば、x3dom 依存関係が必要なときに確実に利用できるようになります。

編集:ライブラリをラップすることは依然として良い習慣ですが、問題の原因ではありません。簡単なテストを行ったところ、「準備完了」ポリマー イベント ハンドラで x3dom.reload() を呼び出す必要があることがわかりました。そうすれば、x3dom システムが適切にリロードされます

于 2016-03-04T15:22:06.653 に答える