Proposed new feature or change:
It may be helpful to be able to visualize "face_node" data (I'm not sure if it has an official name, but what I mean is: any data which has "one value for each node, for each face", which has dimensions n_faces, n_max_face_nodes). For example, if any angles are surprisingly small or surprisingly large during face_node_angles (see #1566), being able to visualize the results could help speed up debugging.
One way to do this might be to decompose into wedges. For convex faces, these could be built by connecting the midpoints of each edge to the point at the center of each face. For example, a hexagon would be decomposed into six wedges, and the value in each wedge would be the value originally at that node for that face (image adapted from claude outputs):
This image corresponds to wedges created from a single hexagon face, with original node values of "green" for nodes 1,2,3,4, "red" for node 5, and "yellow" for node 6.
The grid of wedges could be represented as a uxarray.Grid; each wedge is just a face in the new grid. Although, there are many more faces in the wedge grid than in the original grid, so it might be too expensive to store the result for very large grids. Even if it is limited to small grids, it could still be applied to small regions/subsets of large grids to help with debugging.
Proposed new feature or change:
It may be helpful to be able to visualize "face_node" data (I'm not sure if it has an official name, but what I mean is: any data which has "one value for each node, for each face", which has dimensions n_faces, n_max_face_nodes). For example, if any angles are surprisingly small or surprisingly large during
face_node_angles(see #1566), being able to visualize the results could help speed up debugging.One way to do this might be to decompose into wedges. For convex faces, these could be built by connecting the midpoints of each edge to the point at the center of each face. For example, a hexagon would be decomposed into six wedges, and the value in each wedge would be the value originally at that node for that face (image adapted from claude outputs):
This image corresponds to wedges created from a single hexagon face, with original node values of "green" for nodes 1,2,3,4, "red" for node 5, and "yellow" for node 6.
The grid of wedges could be represented as a uxarray.Grid; each wedge is just a face in the new grid. Although, there are many more faces in the wedge grid than in the original grid, so it might be too expensive to store the result for very large grids. Even if it is limited to small grids, it could still be applied to small regions/subsets of large grids to help with debugging.