Remove spacing between objects

Bug #171083 reported by Stuporglue-users on 2006-01-15
This bug affects 1 person
Affects Status Importance Assigned to Milestone

Bug Description

It would be nice if in the Align and Distribute dialog
there were an option to move all objects twards the the
anchor such that they were aligned to the object
closest to them. See attached image for an example.

(Referenceing image now).

The top group of objects is selected. When the tool is
clicked, the right most block stays in place, the next
left block moves so that it's right side is touching
the right-most block's left side. The second left block
is moved so that it's right side is touching the first
left block's left side and so on, so that all objects
are now touching. The objects aren't resized, just moved.

It's a bit like "remove overlaps" except that it removes
gaps, which was already requested (and maybe implemented?)

Michael Wybrow (mjwybrow) wrote :

This is not really my area. Though after talking to Tim
Dwyer, the author of the Remove Overlap code, it seems that
adding this functionality should not be too hard to
implement. Having said this, neither of us really have time
to look at this for the moment.

You can get the behaiour you are after though by doing the
1) Select all the objects
2) Open the Transform dialog.
3) Select the Scale tab.
4) Tick "Apply to each object seperately"
5) Scale proportonally to a large enough size that all the
objects are touching (i.e., overlap)
6) Run Remove Overlap with zero vertical and horizontal space
7) Open the Transform dialog.
8) Untick "Apply to each object seperately"
9) Choose the inverse scaling of the initial scaling you
selected. This will scale everything back to its original size.
(When scaling, choosing 150% for width and height will scale
the object to 250% of its original size. It adds the value
you input to 100%. I don't personally think this is the
correct behaviour but that's what it does. So lets say you
then want to scale it back to it's original size. Since
100% of the 250% it has become is 100/250 or 2/5 or 40%, you
need to input -60% to get it back to original size. You
will have to work this out for yourself if you need to use a
different value to make them overlap.) Hopefully someone
will implement exactly this behaviour via a button for you.

Hystrix (hystrix-) on 2007-12-19
Changed in inkscape:
importance: Undecided → Wishlist
status: New → Confirmed
Pablo Trabajos (pajarico) wrote :

I have needed this several times and there is an easy solution, just move all your objects so they overlap and click "Remove overlaps".

Caveat: it will displace all the objects and there is no way to indicate which object should act as anchor. Taking into consideration the "Relative to:" menu would be a solution, for example using "Relative to: first selected" would use the first selected object as anchor.

tags: added: aligning objects transformations
removed: other
Pablo Trabajos (pajarico) wrote :

However, a better solution would be if the remove overlap acted as described by the reporter when the H and V spinboxes were at 0. The values on those spinboxes are only honored if the overlap of the objects is bigger (for instance, if the objects are overlapped -10px and the H spinbox says -5px it will work; but if the objects are overlapped -5px and the H box says -10px it won't work).

It also glitches with large values (H:400 displaces objects vertically).

I would also like this feature to be implemented.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers