# Reproducing the proportionally scaling inward and outward (Scale - Shift z) but using geometry nodes

I'm trying to reproduce the proportionally scaling inward and outward (Scale - Shift z) or (S - Shift+Z) but using geometry nodes.

See image below of what I'm trying to get it to do. But it doesn't seem to work in this case how can I fix this? Pic of Gorgious suggestion: Attached blend file below • You need to switch the Scale elements from Uniform to Axes and set to Z axis to 0 Feb 8 at 16:22
• @Gorgious that didn't work I'll post a pic of what that does and post that in the question. Feb 8 at 16:24

Since Transform Geometry doesn't have a Selection socket, we need to use the Scale Elements node in Single Axis mode, as @Gorgious suggested. However, simply making the Z axis $$0$$ would result in a single direction of $$(1,1,0)$$ whereas we want to scale on two axes—$$x(1,0,0)$$ and $$y(0,1,0)$$—so we need to use two Scale Elements operations one after another for each of them: By default, Scale Elements node scales each face or edge from their own individual 'origin's. To make them move together, we need to use a single Center as the operation origin—here I'm doing that by providing it with the selection's average position I get from an Attribute Statistic node.

As a side note you're perhaps already aware:

Why don't we use the three Named Attributes as a selection directly, and first make it go through a Capture Attribute instead?

Because, it seems, domain interpolation going from vertices (Point domain) to faces have some differences between the old vertex group system (which is a special kind of float+boolean attribute field) and the new generic attributes system in Geometry Nodes. Directly using the vertex groups as a selection gives you extraneous faces (faces those vertices belong to) you don't want in your scaling operation. Capturing the vertex groups as a boolean field in the Point domain forces Geometry Nodes to re-do the interpolation, this time without those extraneous faces in our selection:  • Great! Explanation!!! Feb 8 at 19:18