开发者

3d width and cross-sections

开发者 https://www.devze.com 2023-02-01 18:59 出处:网络
Greetings, We have a horn-shaped 3d body, which is represented as a list of vertices and faces. Each face is a triangle represented by 3 vertices. The body is positioned along the Z-axis (height). We

Greetings,

We have a horn-shaped 3d body, which is represented as a list of vertices and faces. Each face is a triangle represented by 3 vertices. The body is positioned along the Z-axis (height). We would like to开发者_开发百科 make several cuts at certain heights. Each cut (a plane perpendicular to the Z- axis) may create one or more cross-sections with the body (the body may split to several branches). The question is how to find those cross-sections. Another question: how to find (efficiently) the maximum width of the body, i.e. 2 points (not necessarily from the list of vertices) on the surface of the body with the same z-coordinate, and maximum distance between them?

Thank you


For the first part binary space partitioning of triangles (or better edges) on Z coordinate can answer what triangles (edges) are cut with plane parallel to Z-axis.

For second part, I think that only points that are vertices of cutting polygon has to be checked for maximum width. But it is complex since maximum width doesn't have to be monotone (only ascending or only descending) function in any interval of Z-coordinates, not even in interval of 2 adjacent different Z coordinates of original vertices.

0

精彩评论

暂无评论...
验证码 换一张
取 消