How to Pinch/Scale uniformly with an edge constraint (Blender 2.8)

Hi all,

I’m wondering if there’s something similar to the sub-object ‘Edge’ Constraint option that exists in 3DS Max. The closest thing in Blender 2.8 is ‘Edge Slide’ and ‘Vertex Slide’ which does work like an edge constraint, however only allows movement along a single axis. For example, I’d love to be able to use the Scale tool to uniformly ‘pinch’ them towards or away from each other.

This is what it looks like in 3DStudio Max:

Max_Scale

Max_Scale_Sphere

I found I can somewhat mimic the results of an edge constraint by changing the Transform Orientation to ‘Normal’

TransformNormal

This seems to work okay on a single set of edges within an edge loop…

Blender_NormalTransform_Vertex_Optomized

… but does not allow me to do the same with the entire edge loop as per the above 3DS Max example

Blender_Scale_Optomized

Also, If I scale in the edge sub-object level instead of vertex, the edge angles go out of whack for some reason. Strange behaviour

Blender_NormalTransform_Edge_Optomized

Thanks!

2 Likes

Hey

I’m not sure if I understand quite right what you mean (I’m quite new to Blender) but you can tap G twice and type value on your keyboard, like I did here, I typed -.9 and then .9

doubleG

It’s not the most practical way of doing it, but you can use this in the meantime.

2 Likes

Hey mate, thanks.

Yep, I’ve been doing exactly what you’ve shown there. Also, If you’re not familiar, you can use the ‘Offset Edge Loop Cut’ tool to create & scale brand new edge loops with one action really quickly.

Offset

Do you see how the tool scales those newly created edge loops? It’s like a ‘push & pull’ or ‘pinch’ action with both edge loops selected at once. And it’s nicely constrained to the perpendicular edge, so it follows the geometry for you.

Unfortunately, you can’t use this tool to do the scaling bit only because it always creates a new set of edge loops from the ones you have selected. Like this:

So yeah, I wonder if it’s possible to script some sort of ‘edge’ constraint behavior in the vertex sub-object mode that applies to every perpendicular edge in the mesh. Or maybe to take the scaling behavior in the ‘Offset Edge Loop Cut’ tool and make that into a separate tool.

2 Likes

I was looking for exactly this, I have been using Blender for a long time and thought maybe I should google it to see if it is possible. it is only needed in very specific situations and would be amazing to have.

I guess doing it one edge at a time is the best way. I would like to see this feature in blender, however if it isnt in 2.8 then I doubt its coming in the main build. Constraining to face, edge and normal was one of the most useful things for max sometimes.

If anyone has more info, I would love to see an update on this!

I would like to add - you could also scale edges by their individual origins in this example. Select the edges that connect the rings and scale them - rather than selecting the rings and trying to move them. This would be just as quick as the max way - in this example.

3 Likes

Hey, glad you found this post!

I agree, it would be cool to see this implemented in the future.

I did post this question on the official developer forum but did not receive any replies last I checked. I’m not sure how to communicate this to the devs further, though I suspect it would be low on their list of priorities anyways.

I gave your method a go for the UV sphere example and it works pretty well. I think this is what you meant:

Blender

Thanks!

3 Likes

Machin3 tools DuesEx implements this: https://machin3.io/MACHIN3tools/docs/edge_constraint/

Although its rather expensive for a single feature, $10