Shifting vertices along normal

1 回表示 (過去 30 日間)
Patrick
Patrick 2015 年 2 月 14 日
コメント済み: Patrick 2015 年 2 月 14 日
I have 3D data with a triangular meshed surface. I've found the normal of each face. How can I shift the 3 vertices of one face along the direction of the normal by certain units? Thanks!

採用された回答

John D'Errico
John D'Errico 2015 年 2 月 14 日
Compute the normal to each facet plane.
help cross
That will give you the normal vector. Add a multiple of the normal vector to the coordinates of each vertex.
Note that each vertex is shared by several facets. So you will need to compute the TOTAL, cumulative offset for each vertex, and only then move those vertices.
Oh, by the way, be careful. Depending on the shape, if your meshed surface is not a well-behaved convex surface, moving things around willy nilly can cause the surface to cross through itself.
  1 件のコメント
Patrick
Patrick 2015 年 2 月 14 日
Really thanks for your help, John! Could you further explain a bit for "compute the TOTAL, cumulative offset for each vertex". I don't quite understand... I've got stuck with this problem for a long time.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeSurface and Mesh Plots についてさらに検索

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by