問題タブ [openmesh]

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.

0 投票する
1 に答える
989 参照

c++ - Openmesh メッシュにエッジを追加する

OpenMesh を使い始めたばかりで、これまでに頂点を追加して面を作成することができました。メッシュにエッジを追加する方法を理解するのに問題があります。

openMesh が使用するハーフエッジ データ構造は認識していますが、エッジを追加する方法がよくわかりません。

コード:

定義:

cpp で:

ドキュメントを検索しましたが、答えが見つかったとは言えません..

0 投票する
1 に答える
684 参照

c++ - OpenMesh Decimater は頂点数を削減しません

OpenMesh を使用してメッシュをデシメートしようとしています。ドキュメントに記載されているまさにその例に従いました:

decimate_to メソッドは正しく終了し、56,000 を返します。これは、折りたたまれているはずの頂点の数です。

ただし、メッシュ上の頂点番号は変更されていないことをログで確認できます。これはどのように可能ですか?

0 投票する
1 に答える
851 参照

opengl - 接線スペースを計算するときに「頂点 texcoord」が持つべきプロパティ

    三角形メッシュを処理するために OpenMesh を使用しています。
    頂点 texcoord を設定するためにメッシュのパラメーター化を行いました。頂点 texcoord に関する私の全体的な理解はそこから得られます。間違っていなければ、頂点に変更可能な値である必要があります。
    しかし今、私はすべての頂点の接線空間を計算したいと思っています。すべてのチュートリアルでは、頂点に固定されたプロパティのように「頂点 texcoord」について話しています。これが私が読んだチュートリアル
    の1つです。

作業中のメッシュに texcoord がない場合は、Tangent Space フェーズをスキップします。これは、コードで任意の UV マップを作成することができないためです。UV マップは設計依存であり、テクスチャが作成されるときに方法を変更します。

    それで、接線スペースを計算するときに「texcoord」が持つべきプロパティは何
    ですか?

0 投票する
1 に答える
1536 参照

algorithm - Assimp と OpenMesh によるメッシュの単純化

数日前、 Assimp でエッジ コラプスを使用する方法について質問します。オブジェクトを滑らかにし、ソフトウェアで重複した頂点を削除すると、エッジの崩壊が機能する可能性がある基本的な問題が解決されます。つまり、MeshLab によって次のように単純化できるため、機能します。 単純化されたメッシュ

MeshLab では良さそうですが、Assimp と OpenMesh を使用したエンジンで実行します。問題は、Assimp が指定された頂点とインデックスをインポートしたことです。これにより、ハーフエッジが反対のペアを見逃す可能性があります(これは非多様体と呼ばれますか?)。結果のスナップショットは、OpenMesh の Quadric Decimation を使用します。

OpenMeshによるデシメーション

問題を解決するために、デシメーションなしで実行し、OpenMesh データ構造を直接解析します。すべてが期待どおりに正常に動作します (デシメーションなしの結果を意味します)。

間引きなし

メッシュをデシメートするために使用したコード:

また、私がテストしたツリー objと、Assimp によって生成された面データを提供します。ビジュアル スタジオ デバッガーから取り出したもので、一部のインデックスがインデックス ペアを見つけることができなかったという問題を示しています。

0 投票する
2 に答える
1265 参照

c++ - OpenMesh 面分割

私は最近、メッシュを改良する必要があるプロジェクトで OpenMesh を使い始めました。split(FaceHandle _fh, Point _p)三角形の重心に頂点を挿入するには、面操作を使用する必要があります。しかし、このメソッドを使用し、VertexFaceIterator を使用して新しく作成された頂点の面を取得しようとすると、(87, 87, -1) または (12, 12, -1) などの頂点インデックスを持つ無効な面が常に取得されます。分割後に OpenMesh がメッシュ トポロジを更新していないようです。

私のコードは次のようになります。faceStartItこれらの奇妙なインデックスを私に与えるものです。