問題タブ [face]
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.
javascript - 立方体の面の色を変更します
私は実際にこの質問を見つけましたが、それはmaterial.color
存在しないと言っています。描画している立方体のさまざまな面の色を変更する方法を知る必要があります。
c++ - opencv2\contrib\contrib.hpp が OpenCV 3.1.0 に見つからない
opencv2\contrib\contrib.hpp が OpenCV 3.1.0 に見つからない
また、FaceRecognizerenter、createEigenFaceRecognizer()のトレーニングと保存ができません助けてください
three.js - THREE.BufferGeometry - 頂点法線と面法線
のドキュメントにTHREE.BufferGeometry
は次のように書かれています。
normal (itemSize: 3)
このジオメトリの各頂点の面または頂点法線ベクトルの x、y、および z コンポーネントを格納します。.fromGeometry() によって設定されます。
この変数はいつ頂点法線を保持し、いつ面法線を保持しますか?
THREE.MeshMaterial
aを使用すると法線が面法線として解釈され、aTHREE.LineMaterial
を使用すると法線が頂点法線として使用されるのと同じくらい単純ですか? それともそれよりも複雑ですか?
また、フラット シェーディングでメッシュをレンダリングするために使用できることも理解しTHREE.FlatShading
ました (面の法線はまっすぐ外側を向いています)。
法線はもう必要ないと思います。このような場合に、バッファ ジオメトリがTHREE.BoxGeometry
通常のアトリビュートを保持しているなどから作られているのはなぜですか? この情報はまだレンダリングに使用されていますか、それともバッファ ジオメトリからそれらを削除することで最適化できるのでしょうか?
three.js - Three.js - 別のメッシュの特定の面/頂点から新しいメッシュを作成する
特定の Three.js の問題に数日間苦労しましたが、それを行う方法が見つかりません。これは私の場合です:
1) いくつかの三角形の面で形成されたフローティング メッシュがあります。このメッシュは、getAttribute('position') を使用して頂点と面を取得した後、ローダーによって返されたジオメトリから作成されます。
2) 今やりたいことは、底面を床に対して「投影」することです。
3) 後で、この新しい面を追加して、両方の面の 3 つの頂点の間のスペースを埋める結果のメッシュを作成します。
ステップ 2 ですでに問題が発生しています... 新しい面を作成するには、その 3 つの頂点が既に geometry.vertices に追加されていると思われます。元の面の頂点を複製して、それを行いました。geometry.vertices.push() の結果を使用して新しいインデックスを知り、後でそのインデックス (-1) を使用して最終的に新しい面を作成します。しかし、その形は奇妙で、位置とサイズも奇妙です。私は世界/シーン/ベクトル位置等価理論を正しく理解していないと思います:P
これを適用してみましたが、うまくいきませんでした: three.js で頂点の絶対位置を取得するにはどうすればよいですか? Projection http://barkofthebyte.azurewebsites.net/post/2014/05/05/three-js-projecting-mouse-clicks-to-a-3d-scene-how-を使用して、Three.js でワールド座標をスクリーン座標に変換する やることと仕組み
元の面全体を直接複製してメッシュに追加すると、面が追加されますが、同じ位置にあるため、頂点を変更して床に配置することはできません (または少なくとも元の面を変更する必要はありません)。面の頂点!)。つまり、x、y、z プロパティを変更できますが、元のメッシュの寸法と一致しない非常に小さな測定値です。
誰かがこの概念を正しく理解するのを手伝ってくれますか?
編集:ソースコード
javascript - Three.js - 複数のジオメトリ/メッシュをマージして共通領域を削除する
2 つのジオメトリ/メッシュ (赤と青) を 1 つにマージしようとしています。しかし、新しいジオメトリを作成し、geometry.merge() を適用した後、すべての内側の頂点と面がまだそこにあることがわかりました (緑色の領域)。
レンダリングされた面に視覚的な不具合が発生し、マージされたボリュームを正しく計算できないため、余分な情報をすべて削除したいと思います.最後の写真のようなものが必要です。最小限の外部/外部のみを含む単一のメッシュ面と頂点を削除し、内側のものを削除します。
ThreeCSG を適用してメッシュを差し引いてみましたが、大きなモデルを読み込もうとすると常にクラッシュすることがわかりました。また、共通の顔を検出するためにレイキャスターを適用しようとしましたが、これも大きなモデルのパフォーマンスに大きな影響を与えます。
ここでは、ThreeCSG が唯一の適切なオプションですか? しかし、すべてのモデルで使用できるわけではないので、破棄する必要があります。メッシュの三角形の数にあまり依存しない高速なものを適用したいと思います。
c++ - C++、オブジェクト リーダーを書き込もうとしている、1 つのベクトルからデータを取得しようとするとエラーが発生する
私は本当に単純な obj ファイル リーダーを作成しようとしています。これは、obj ファイルからすべての頂点値を順番に 1 つのベクトルに書き込みます (既に実行済みです)。また、obj ファイルからの面の値によって参照される頂点値を別のベクトルに書き込みます。例:
v1 = 0.0 0.0 0.0
v2 = 1.0 0.0 0.0
v3 = 1.0 1.0 0.0
f1 = 3 2 1
私のプログラムは、すべての頂点値を最初のベクトルに順番に書き込み、次に、面を構成する頂点値を次のように 2 番目のベクトルに書き込みます: 1.0 1.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0
最初のベクトル (verticesCoordsXYZ) から値を取得して 2 番目のベクトル (faceCoords) に戻すまで、すべてがうまくいきました。コメントアウトしたコードがプログラムを壊します。最初のベクトルで検索している場所がベクトルのサイズよりも大きいようです (プログラムが中断すると、メモリ位置エラーで out_of_range が発生し、verticesCoordsXYZ のサイズが0)、すべての頂点値でベクトルを埋めましたが。
私は何を間違っていますか?ベクトルがどのように機能するかを理解していないのでしょうか。ベクトルの範囲外ですか? この問題を解決するにはどうすればよいですか?
android - Google Vision API から顔を検出し、顔を切り取る
Android Vision APIを使用して画像から顔の領域を見つけました。しかし、ライブカメラから顔を切り取る方法。リンク
c++ - 3D で 2 つの面の交差を検出する方法
まあ言ってみれば
face1 と face2 は myFace のタイプの面です。
if (!(ac<1.00000001 && ac>0.99999999) && !(ac>-1.00000001 && ac<-0.99999999))
その場合、面は平行ではありません。
しかし、それらが交差しているかどうかをどのように検出できますか?