4

Please see the image. The 1st group on top has 3 objects with equal spacing between them. But not aligned vertically.

enter image description here

When I rotated each of them (anchor is in center of each object), the highlighted spacing becomes uneven. Which seemed a little surprising to me, as I've never tried such thing.

This doesn't happen when the objects are aligned vertically.

Is there any explanation for this? And how can I equalize the space without hit and trial?

EDIT: Maybe users are not understanding what output I need. I don't want to rotate the overall appearance of the collection of those 3 objects. I want to rotate them at their own place, with space between them same. See the 2nd part of image. The rotation is okay but the only thing is wrong is the ueven spacing between them. i.e., I want the 1st and 3rd solids to be vertically aligned at top.

enter image description here

  • 1
    The computer can not understand vague descriptions any more than humans can. If you cant explain what you want exactly to humans then your attempt is dead in the water. Try explaining what distance you want preserved and around what points do you expect the rotation to happen. Also not teht it sounds like you want something that is not geometrically possible with the constraints you are describing us. Yes the distance changes by angle, thats why ww2 tanks had sloping armor – joojaa Jul 23 at 17:20
  • @joojaa if you comment something serious, either explain it in a better way, not sarcastic. Or just please do not comment on my stuff. I just dint' get 50% of your comment. Hope you won't mind. – Vikas Jul 24 at 15:23
  • 1
    Its not sarcastic. A) to do anything you have to know how it works. B) The unevenness is a result of how geometry really works as opposed to how you hope it works. But that's easy to fix. You can turn the objects and re distribute it by counter rotating entire group distribute and rotate back. PS: In reality you are hoping illustrator would be a parametric CAD it is not (ultimately that is a tradeof). – joojaa Jul 24 at 15:31
  • 1
    Thank you very much – Vikas Jul 24 at 15:43
3

You are looking at a basic geometry and real-world example of the difference between aligning / distributing centroids versus aligning / distributing edges in a non-linear group - it's not the software - this is just how reality in a Euclidean geometric reference frame works.

Were your lozenges centre-aligned horizontally as well as distributed between centroids, giving each an equal individual rotation would result in equal horizontal spacing; however, as they are aligned centre-top-centre, this cannot occur - see quick diagram.

enter image description here

The quick takeaway is that the object centroids are still equally spaced: due to the vertical alignment shift, this cannot still be true of the shape's borders; if they were circles, all relative distances would be maintained, as in a circle the horizontal distance from centroid to edge is always the same no matter the rotation applied.


Edit post question being edited and changed in specific requirements:

Illustrator's Transform Each will work exactly as needed for your chosen use case, retaining top alignment without issue:

enter image description here

And adjunct to seeing @Scott's comment to my answer, I have added two more clarifying diagrams - Transform Each works as expected, as Scott had initially answered.

First, Transform Each being applied with Preview on:

enter image description here

And subsequent dimensioning of the resultant with appropriate annotation - my earlier answer, combined with Scott's absolutely correct recommendation of Transform Each gets a reliable, logical result - yay!

enter image description here

Hope this helps.

  • @Scott - I added one additional image to my answer to explain / reiterate that in fact Transform Each is performing as expected - your answer is correct. – GerardFalla Jul 23 at 21:38
5

You must be using the Transform Each function or rotating each piece one at a time.

Singular rotations on independent objects are based upon that object's center. Because the center of the objects are in different locations, the spacing will change if you rotate things one at a time (or use Transform Each).

There's no need to group anything. However, you should select all 3 shapes and rotate them all at the same time, the spacing will remain consistent because the center of rotation will be combined, and common among all three objects.


Okay, sorry. some misunderstanding on my part. The above is still true though.

For this particular set up you are probably better off using strokes and a more "subtractive" workflow rather than expanded shapes. Using strokes helps prevent distortion of shapes and makes editing a bit easier.

To create a common rotation so that spacing is consistent AND keep tops aligned.....

Here's how I'd handle it....

  • 3 thick strokes with rounded caps. All the same size, length, and aligned/distributed evenly.
  • Rotate them all 20°
  • Realign to tops and distribute horizontal spacing (spacing should be fine, but it doesn't hurt to click that button)
  • Use the Eraser Tool to break the strokes in various places
  • Delete unwanted excess

enter image description here


Another option with strokes is to use Shear rather than rotate.

Shear will not work on expanded shapes. Shear will distort shapes, but not strokes. Shear will keep the top positions in place but it may change the length of the strokes based upon the shear amount.

enter image description here


(AICS6 animations, but it's the same methodology in newer versions.)

  • Please check edit. – Vikas Jul 23 at 16:10
  • Please check edit again. Maybe I didn't explain the problem better :) – Vikas Jul 23 at 16:23
  • what do you use to record video? – Vikas Jul 24 at 4:51
  • 1
    @Vikas.. on my answers you don't need to tag anything. I get notified always on my answers. SEE HERE about the gifs... – Scott Jul 24 at 5:06
  • 1
    @Vikas No. No special privileges. All comments on any answer will always notify the person who posted the answer. It's how all stack sites work. The tag is only necessary to tag a user other than the user who posted the question, or answer. i.e. I have to tag you here, on my answer, so you'll be notified. But if I comment on your question you'll get notified by default. – Scott Jul 24 at 5:14

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.