問題タブ [wavefront]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Python 3.3 - 通常の間隔の頂点から Wavefront obj ファイルとして 3D メッシュを作成する
xyz座標のテキストファイルを読み取り、その間にある同等の三角形の面を出力するPython 3.3で簡単なコマンドラインプログラムを作成しています。エクスポート形式は Wavefront obj ファイル ( https://en.wikipedia.org/wiki/Wavefront_.obj_file ) です。このアルゴリズムは、地球の高解像度衛星スキャンからの規則的な間隔のポイントで動作することのみを目的としています。実際、私は約 340000 ポイントのセットを使用して、頂点四重極の間に 2 つの三角形を作成しています。外側の反復は x 方向に進み、内側の反復は y 方向に進みます。したがって、x 方向に移動してプロセスが繰り返されるまで、y 方向のすべての頂点に対して三角形の面のペアが作成されます。原則的なパターンを示します (線は面のエッジです)。
Blender または MeshLab でファイルをインポートすると妥当な結果が得られるため、コードは適切に機能しているように見えますが、1 つのことを除いて、面のペアのすべてのストライプが x 軸に沿って隣接するストライプと接続されていないように見えます。問題を示すレンダリング画像: 接続されていないストライプ.
通常、異なるフェース ストライプ間に垂直方向のオフセットがあってはなりません。これは、それらが内側の境界線 (ライン) に沿って同じ頂点を共有しているためです。より少ない頂点とより一般的な低い座標値を使用したテストは成功しました。メソッドは完全にうまく機能していました。問題は私のメッシュ ジェネレーター内ではなく、Blender、MeshLab などの座標制限内にあるのかもしれません。
以下は、フェースを生成し、return-string ですべてをつなぎ合わせる関数です。
関数に入力される verts-variable は、次のような 2 次元リストの形式をとります。
あなたの何人かが私を悲惨な状態から救ってくれることを願っています。さらに説明が必要な場合はお知らせください。最初の投稿に追加します。
json - libgdx で .OBJ を JSON 形式に変換する
私は、.OBJ モデルを.G3DJ (JSON) 形式にその場で変換する必要があるプロジェクトに取り組んでいます。Googleコードで作成したこのコードを試しました。
https://code.google.com/p/libgdx-users/wiki/ImportingModelsFromBlender
しかし、libgdx にはありませんStillModel
。G3DExporter
何か案は?
c++ - 複数のベクトルメンバーへの解析
文字列を再帰的に解析し、結果を 1 つの構造体に格納したいと考えています。1回の反復を処理できるパーサーを作成しました。入力は次のようにフォーマットされます。
問題は、最初の 4 行のみを解析し、3 番目に検出された 'v' で停止することです。完全なコードを以下に示します。このコードを変更して、残りの入力も同じ構造体に解析するにはどうすればよいですか? start = vertex >> elements
開始ルールを からに変更しようとしましたstart = *(vertex >> elements)
が、大きなコンパイル エラーが発生するだけです。についても同様ですstart = +(vertex >> elements)
。ルールを変更する方法はありますか?
PS: 必要に応じて、コンパイル エラーをここで見つけることができます。
編集: Wavefront .OBJ パーサーを作成しようとしています。ここで与えられた入力は、私の問題を単純化したものです。
c++ - 最初のオブジェクトのみが OBJ に法線を持っています
私は .obj ファイル ローダー クラスを作成しています。ある時点で、複数のオブジェクトを含む obj-file を読み込もうとしましたが、動作させることができませんでした。
複数のオブジェクトを Blender から obj ファイルにエクスポートすると、最初のオブジェクトだけに法線があることに気付きました。すべてのオブジェクトに法線を与える方法はありますか、それとも自分で計算を開始する必要がありますか?
1 つの obj ファイルに 2 つのキューブがあります。最初のものだけが「vn . . .」を持っていることがわかります。行。
javascript - Three.js は文字列を float に変換できませんでした
convert_obj_three.py [リンク]を使用して、単純な OBJ を Three.js 形式に変換しています。
最初に、平面 UV マップを持つ立方体で試してみましたが、うまくいきました。
今、私は球と円柱を一緒にしようとしています.スクリプトは私に教えてくれます:
-t バイナリ属性を指定しなくても。
.OBJ は Rhinoceros 4 で作成されています。
ここからダウンロードできます: http://www.filedropper.com/test_15
誰かが私に問題がどこにあるのか説明できますか?
PS: 球だけでも試してみましたが、エラーは同じです。