.STL ASCIIファイルを操作するためのコードを記述しようとしていますが、ファイル形式を完全に理解しようとしています。私が見たことから、各三角形の「ファセットノーマル」線の内容は、描かれた三角形には何の影響も与えません。また、三角形のどの辺が「外側」とみなされるかは、頂点の順序を逆にすることによって行われます。ステレオリソグラフィ(.STL)ファイルでは、各三角形に法線ベクトルが必要なのはなぜですか?
この三角形
facet normal 1 1 1
outer loop
vertex -1 1 1
vertex 1 -1 1
vertex 1 1 -1
endloop
endfacet
も、この三角形と同じである。この三角形
facet normal -1 -1 -1
outer loop
vertex -1 1 1
vertex 1 -1 1
vertex 1 1 -1
endloop
endfacet
と同一です。明示的な法線ベクトルを持つことが数学的に冗長な情報であり、それはファイル形式である理由それはでも、とにかく固体の描画に使用されていないということを考えること
facet normal 1 0 0
outer loop
vertex -1 1 1
vertex 1 -1 1
vertex 1 1 -1
endloop
endfacet
?それが何かに使われているのなら、それは何のためですか?
編集:Autodesk Meshmixerでこれらのファイルを開いていることを追加してください。
なぜこれらの2つのいずれかに必要な三角形の法線を明示的に述べていますか?法線ベクトルの方向の情報は、三角形を定義する3つの点に既に存在しています。私はなぜ情報が明示的に提供されるのか不思議に思っています。 – Braden
@Braden使用される法線は、三角形のサーフェスに垂直な幾何学的ベクトルと必ずしも同じではないためです。 – Spektre
ああ、面白いです。この場合、STLファイル内の「通常の」ベクトルの定義はどのようになりますか?与えられたファイルに必要な理由があれば、その三角形に最も関連性の高い情報を運ぶベクトルだけですか? – Braden