From da278e02643b851a0b08ab3a7d74ba76066ec8b1 Mon Sep 17 00:00:00 2001 From: Keavon Chambers Date: Sat, 24 Jan 2026 02:17:16 -0800 Subject: [PATCH] New node: Map Points Also resolves #3217 --- .../node_graph/document_node_definitions.rs | 2 +- node-graph/nodes/vector/src/vector_nodes.rs | 17 +++++++++++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/editor/src/messages/portfolio/document/node_graph/document_node_definitions.rs b/editor/src/messages/portfolio/document/node_graph/document_node_definitions.rs index 1f721628..c062e538 100644 --- a/editor/src/messages/portfolio/document/node_graph/document_node_definitions.rs +++ b/editor/src/messages/portfolio/document/node_graph/document_node_definitions.rs @@ -2043,7 +2043,7 @@ fn document_node_definitions() -> HashMap, mapped: impl Node, Output = DVec2>) -> Table { + let mut content = content; + let mut index = 0; + + for row in content.iter_mut() { + for (_, position) in row.element.point_domain.positions_mut() { + let owned_ctx = OwnedContextImpl::from(ctx.clone()).with_index(index).with_position(*position); + index += 1; + + *position = mapped.eval(owned_ctx.into_context()).await; + } + } + + content +} + #[node_macro::node(category("Vector"), path(graphene_core::vector))] async fn flatten_path( _: impl Ctx,