I need to align some vertices up with the vertices that is extending out the furthest on the X axis. I want to know if there is a way to make them all aligned in one step. Instead of messing with each vertices X position. Is there a way to do that?
7 Answers
Set pivot point to 'active element' and transformation orientation to 'normal'.
Duplicate the edge you want them to be parallel to, move it with G and Z twice (along normal) and extrude it (E+Z) to create a clear normal.
Select your unstraight edge and afterwards the created polygon, so the polygon is the active element.
Hit S to scale, Z twice and move the mouse or just press 0 to make it completely straight.
Delete the temporary polygon.
Works always, no matter how your object is weirdly rotated in 3D space.
-
$\begingroup$ Also it is possible to align view to the edge which you'd like to scale along. This would allow to skip steps with duplicating it, extruding and deleting. $\endgroup$– Mr ZakCommented Dec 30, 2015 at 20:04
-
$\begingroup$ Wow fantastic informative answer. I think I understand why this active element scale tricks work. Is it because the closer you get to the active element while scaling, the closer you are to 0 you are? I guess this is why when you enter 0 they all scale evenly? $\endgroup$ Commented Dec 31, 2015 at 1:56
IMO the fastest way to do this is by using the active element as pivot.
Set the pivot to Active (⎇ Alt.):
Select the vertices you wish to align, being sure to select the vertex you want to align them to last (so that it is the Active vertex):
Scale (S) the selection to 0 along the axis you wish to align along. In this case, the X axis. So SX0:
All at once:
If your object isn't aligned to the axes, then you can use a custom transform orientation.
Before doing the three steps above, select one of the edges running lengthwise and press ⎈ Ctrl⎇ AltSpace. This will create a custom transform orientation with one of the axes aligned to the selected edge (in this case the Y axis):
Note that to use the custom orientation when scaling you'll have to press the axis key twice. So SYY0:
- Select all vertices you want to align
- To align them, scale them to 0 at the axis you need, so in my case I press SY0
- Turn on the magnet and snap to vertex
- Grab the Y axis handle and move it over the vertex you want to align the selected vertices.
This is the easiest way for me.
When the model is aligned to the coordinate system, my prefered method is scaling:
Select the vertices Alt-RMB S,X,0
Then translate manually G.
When the object is rotated this method can also be used for local axis. Press X twice to constrain on the local axis.
S,X,X,0
-
$\begingroup$ A modest improvement: select the vertex at the final desired location, and copy the value on the x axis from the transform pane of the properties shelf. Rhen perform the steps stacker outlines above, except that the last one instead of movin with the G key, copy the x value into the appropriate box in the transform panel of the properties shelf. $\endgroup$– brasshatCommented Dec 30, 2015 at 10:11
-
$\begingroup$ Personally, i'm confused why this hasn't more upvotes. Simplest way IMO. $\endgroup$– Luka ashCommented Dec 30, 2015 at 16:50
-
$\begingroup$ @Rielight the answer is incomplete because it suggests to complete manually. $\endgroup$– stackerCommented Dec 30, 2015 at 18:31
-
$\begingroup$ Excellent answer. I think i am starting to understand now how vertices and transform orientation works. Thanks $\endgroup$ Commented Dec 31, 2015 at 1:58
-
$\begingroup$ This is how we used to do it when I was using 3dsmax in a professional setting. I would also add that usually I will couple G with snap. I will just copy a vertex and place it to where I want the them to all line up. Then do the scaling to zero. Afterwhile I would hold cltr and snap to the closest vertex switched on ... even faster than cutting and pasting the x value! - cheers. $\endgroup$ Commented Dec 31, 2015 at 14:31
Try this:
Enable the LoopTools addon if you haven't already
Snap the cursor the the outermost vert, you'll need to mark this position for a later step
Select the line of verts and use the appropriate front/side ortho view so you are looking directly at the edge. Hit W > Looptools > Flatten and set the mode to "from view". That will arrange all the verts to a straight line, but it will be at the average location instead of the farthest. Luckily, we marked the farthest point in step 2...
Hit Shift+S and select "selection to cursor (offset)". This should bring everything forward to the outermost point.
Not the simplest or most direct way, but should get the job done without having to move each vert individually or guess at the position.
-
$\begingroup$ Awesome answer. I researched a bit into loop tools and it looks like a very helpful add on! Thanks for the support. $\endgroup$ Commented Dec 31, 2015 at 2:06
Example of Shrink Wrap of Cylinder in Edit Mode. Interactive. The top vertices are in a vertex group.
Create vertex group for the vertices in question. Create cube target. Use Shrink Wrap Modifier.
So convenient.
Select the scaling manipulator (circled in the picture).
And then grab the x-axis handle:
Use it a couple times until all the vertices are lined up, then press G and then press X and move the mouse to where you want the vertices at.
This is the simplest way to my knowledge.
-
$\begingroup$ Man thank you all for the help. All these methods are extremely helpful! $\endgroup$ Commented Dec 31, 2015 at 1:41