40
$\begingroup$

Other than manually typing in locations, is there an easy way to align objects on an axis like you would in Visio?

$\endgroup$
39
$\begingroup$

You can use Align Objects available in the 3d view header under Object > Transform > Align Objects.

enter image description here

This will bring up a panel in the toolshelf and you can choose the axis to align the selected objects on. You can also choose to align relative to and the mode to align by.

enter image description here

$\endgroup$
  • 1
    $\begingroup$ shift + click x/y/z to align by multiple axes. $\endgroup$ – user875234 Jul 4 at 13:46
21
$\begingroup$

I like to use the Pivot Point Align feature in conjunction with zero-scaling.

  • Press Alt, (comma) to activate Pivot Point Align, or click the button next to the pivot center selector in the 3D View header.
  • Select your two objects.
  • Press S to activate scaling. Then, press the axis key (X, Y, or Z) corresponding to the axis on which you want the objects to be aligned.
  • Press the 0 (zero) key on your keyboard. This will scale the distance between the center points of the objects to zero (i.e., they will be on top of each other) but since Pivot Point Align is on, the scale of the objects is conserved.

I really like this method for a few reasons:

  • It's quick: it only takes me about five seconds to do RMBRMBAlt,SX0Enter.
  • It works in edit mode as well, to align vertices.
  • You can easily specify where they should be aligned to with the normal pivot point settings. For example, by default, they will align at the median, but you could also choose to do the 3D cursor, active object, etc.
  • You can select a local axis along which to transform. To do this, select the relevant object last (so it is the active object), and then press the axis key twice. For example, to align a cube and sphere on the sphere's local X axis, select the cube, then the sphere, then press SXX0. You can also do this with gimbal, normal, or view axes by selecting the appropriate axis type from the Transform Orientation dropdown menu.
  • You can use proportional editing to gradually scale nearby objects in as well.
  • Essentially, you can use all the editing features you normally use.
$\endgroup$
  • 1
    $\begingroup$ Unfortunately this method used as you just described moves both objects one toward the other to the median point of their distance. This means that it doesn't properly work if one obj is already where in the right position. To solve this inconvenient: before execute your procedure, just select the obj you need to stay in position then go to property panel > Transform > Position and click on the lock of the 3 axis to lock the object movements. Do the same on the rotation and scale lock accordingly on your needs. Then execute your procedure. Enjoy. $\endgroup$ – willy wonka Mar 31 '18 at 15:45
  • $\begingroup$ @willywonka: A beauty of this method is that it doesn't require such a complication. Instead, do either of these: (a) (1) make the object already in the correct position your active object, (2) set your pivot center (. dot) to "Active Element", (3) execute my procedure; or (b) (1) put the 3D cursor at the correct position (probably using Shift-S U), (2) set your pivot point center (. dot) to 3D Cursor, (3) execute my procedure. This is what I mean by "You can easily specify where they should be aligned to with the normal pivot point settings"! $\endgroup$ – wchargin Mar 31 '18 at 17:14
  • 2
    $\begingroup$ I suggest to add this step to your main post because this makes it work: "(2) set your pivot center (. dot) to "Active Element"" $\endgroup$ – willy wonka Mar 31 '18 at 22:49
  • $\begingroup$ @willywonka: This is in the main post: it's the third bullet point of the second list, as something that you can do optionally. (It's not something that you always want, so it's not in the main mechanics list.) $\endgroup$ – wchargin Mar 31 '18 at 23:28
  • $\begingroup$ Oh... I see... I didn't notice because it is not much explicit as it is in the comment: "set your pivot center (. dot) to "Active Element"" seems to me more clear than "You can easily specify where they should be aligned to with the normal pivot point settings. For example, by default, they will align at the median, but you could also choose to do the 3D cursor, active object, etc.".... Perhaps IMHO it could be an idea to evaluate to add an explicit indication of that to first bullet list as first or second item with the indication that it is optional. IMO it could improve the answer clarity $\endgroup$ – willy wonka Apr 1 '18 at 2:07
6
$\begingroup$

You can do this with Mesh Align Plus (my addon). After installing the addon, either watch the steps in the GIF or read the text version below:

Align objects by edges

The feature you're looking for is the Quick Align Lines operator in the 3D View > Tools Panel (T) > Mesh Align Plus Tab, in its own panel.

1. Pick a destination target (stationary edge that you're aligning to)

  • In edit mode (Tab), shift + right click to select the two edge verts you want to align your object with
  • Hit Grab Destination

2. Pick a source target (edge that will be aligned with the destination)

  • In edit mode (Tab), shift + right click to select the two edge verts that need to line up with the destination when the alignment is applied. Leave them selected.

3. Apply the operation

  • Make sure the object you want to move is selected, and (in object mode or edit mode) hit Apply to: Object
$\endgroup$
2
$\begingroup$

You can mark the spot with your cursor and, select your object and hit Shift + S then select Selection to Cursor. This will snap your selected object to wherever your cursor is.

$\endgroup$
2
$\begingroup$

You can use Snapping with the rotation snapping option enabled:

enter image description here

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.