# Tag Info

3

If you're interested in vertex normals specifically, there's an easy answer even for non-planar polygons that avoids the question of defining what the exact surface is: for each vertex, calculate the normal of the plane formed by the two edges entering and leaving that vertex. More formally, given vertices $\mathbf{v}_1, \mathbf{v}_2, \ldots \mathbf{v}_n$ ...

1

Observe that you can construct another graph by connecting the centroids of faces with centroids of adjacent faces. This is known as the dual. The edges of the graph between the centroids can be represented as the twin relation between halfedges. Then you can use something like Depth First Search to visit all the faces: function visit(f) mark f as visited ...

1

I think the problem comes from this starting assumption: If we have a quad that is non-planar. A non-planar quad does not have a normal. It's not a flat surface, so you can't talk about what its normal would be. You can't talk about the normal of a sphere, a cone, or any other non-flat surface. You can talk about what the normal might be at any particular ...

1

In CGAL, there is the Arrangement package that allows to build a topologically valid planar partition given a set of segments, and the Regularized Boolean Set-Operations that provides boolean operations between polygons.

1

{𝑝0,𝑝8,𝑝7,𝑝6} and {𝑝4,𝑝3,𝑝2} are called "left bounds" because if you look at both these bounds, the polygon interior is to the right of them: Likewise, {𝑝0,𝑝1,𝑝2} and {𝑝4,𝑝5,𝑝6} are "right bounds" because the polygon interior is at their left: For reference, this example comes from: http://what-when-how.com/computer-...

Only top voted, non community-wiki answers of a minimum length are eligible