diff --git a/manual/images/modeling_geometry-nodes_corners-of-edge_explanation.png b/manual/images/modeling_geometry-nodes_corners-of-edge_explanation.png new file mode 100644 index 000000000..fde705586 Binary files /dev/null and b/manual/images/modeling_geometry-nodes_corners-of-edge_explanation.png differ diff --git a/manual/images/node-types_GeometryNodeCornersOfEdge.webp b/manual/images/node-types_GeometryNodeCornersOfEdge.webp new file mode 100644 index 000000000..4e30158fb --- /dev/null +++ b/manual/images/node-types_GeometryNodeCornersOfEdge.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:090edebb200c73eb20d08277ab66c6d6c87d9858e2d3d0c51e2579352bdbf140 +size 3872 diff --git a/manual/modeling/geometry_nodes/mesh/topology/corners_of_edge.rst b/manual/modeling/geometry_nodes/mesh/topology/corners_of_edge.rst new file mode 100644 index 000000000..cab622674 --- /dev/null +++ b/manual/modeling/geometry_nodes/mesh/topology/corners_of_edge.rst @@ -0,0 +1,65 @@ +.. index:: Geometry Nodes; Corners of Edge +.. _bpy.types.GeometryNodeCornersOfEdge: + +******************** +Corners of Edge Node +******************** + +.. figure:: /images/node-types_GeometryNodeCornersOfEdge.webp + :align: right + :alt: Corners of Edge node. + +The *Corners of Edge* node retrieves face corners connected to each edge in a mesh. +The node first gathers a list of face corners which are connected to the edges. +It's important to note that the list only has one corner per face. +Using the :doc:`/modeling/geometry_nodes/mesh/topology/offset_corner_in_face` +to offset the index inside the face by 1 gives the other corner from the face that is connected to the edge. +That list is then sorted based on the values of the *Sort Weight* input. +The *Total* output is the number of connected faces/corners, and the *Corner Index* +output is one of those corners, chosen using the *Sort Index* input. + +.. figure:: /images/modeling_geometry-nodes_corners-of-edge_explanation.png + :align: center + :width: 400px + + A graphic for which corners are returned for a given edge + +* Red: selected edge +* Blue: corners that get individually returned, depending on the sorting +* Purple: corners that can be retrieved by offseting the blue corner indices using :doc:`/modeling/geometry_nodes/mesh/topology/offset_corner_in_face` + +Inputs +====== + +Edge Index + The index of the input edge. + + .. note:: + By default this uses the :doc:`index ` + from the field context, which makes it important that the node is evaluated on + the edge domain. + +Weights + Values used to sort the corners connected to the edge. + By default the corners are sorted by index, so the corners with the smallest indices come first. + +Sort Index + Which of the sorted corners to use for the *Corner Index* output. If the value is larger than + the total number of connected face corners, it will wrap around to the beginning. + + +Properties +========== + +This node has no properties. + + +Outputs +======= + +Corner Index + A corner of the input edge in its face's winding order, chosen by the *Sort Index* input. + +Total + The number of faces or face corners connected to the edge. + diff --git a/manual/modeling/geometry_nodes/mesh/topology/index.rst b/manual/modeling/geometry_nodes/mesh/topology/index.rst index 23215625e..7ef01f4a0 100644 --- a/manual/modeling/geometry_nodes/mesh/topology/index.rst +++ b/manual/modeling/geometry_nodes/mesh/topology/index.rst @@ -8,6 +8,7 @@ Nodes that retrieve information about the connectivity between mesh elements. .. toctree:: :maxdepth: 1 + corners_of_edge.rst corners_of_face.rst corners_of_vertex.rst edges_of_corner.rst