Resize an object while maintaining relationship to others?

Post questions on how to use or achieve an effect in Inkscape.
lightmare
Posts: 14
Joined: Sat Jul 07, 2018 9:29 am

Resize an object while maintaining relationship to others?

Postby lightmare » Mon Jul 09, 2018 3:58 pm

Several objects' midpoints are snapped to the edges of a rectangle, but I want to resize the rectangle without resizing the other objects nor effecting their relationship to the rectangle---in essence staying snapped to the rectangle as I resize the rectangle. How would you do this?
Thanks
Jeff

User avatar
Xav
Posts: 1209
Joined: Fri May 08, 2009 1:18 am
Location: UK
Contact:

Re: Resize an object while maintaining relationship to others?

Postby Xav » Mon Jul 09, 2018 5:15 pm

I don't think this is possible, at least not in any simple way. One of the other forum regulars might come along with a clever way to achieve this, so I'm not ruling it out entirely.

The issue gets to the heart of what snapping is. In Inkscape it's a convenience feature that applies at the time that you draw or move something, and adjusts the coordinates for you. But no record is kept of the snapping that occurred, or the relationship between the coordinates and the snap point. The fact that snapping occurred is just a quirk of history - all that remains is the coordinates that were set as a result. So, in the general case, changing the dimensions of an object will have no effect at all on anything that was snapped to it.

I think your most practical option is to resize the rectangle then move and re-snap the other objects.
Co-creator of The Greys and Monsters, Inked - Inkscape drawn webcomics
Web SiteFacebookTwitter

theozh
Posts: 437
Joined: Fri Mar 23, 2012 6:30 pm

Re: Resize an object while maintaining relationship to others?

Postby theozh » Mon Jul 09, 2018 5:20 pm

well, this feature sounds too CAD-like for Inkscape developers ;-)
Do you mean midpoints or centerpoints?
In the case of centerpoints snapped to the edges of an rectangle, I would do it like follows:
1. mark all objects
2. Transform dialog (Shift+Ctrl+M), select "Scale proportionally", deselect "Apply to each object separately"
3. scale it e.g. by 50% (or the value x you need)
4. deselect the black rectangle, keep the other objects selected
5. Transform dialog, select "Apply to each object separately"
6. scale the objects e.g. by 200% (or 10000/x)
The centerpoints of the objects will stay where they've been.
However, if you meant midpoints I don't know yet how I would do it. Probably, manually... :shock:

Resize_with_Relation.png
Resize_with_Relation.png (2.25 KiB) Viewed 1157 times
Win7/64, Inkscape 0.92.2

lightmare
Posts: 14
Joined: Sat Jul 07, 2018 9:29 am

Re: Resize an object while maintaining relationship to others?

Postby lightmare » Tue Jul 10, 2018 1:29 am

Thanks to both of you. theozh, it's interesting that you mention CAD. I'm not an artist, and the projects for which I'm learning Inkscape are actually somewhere between CAD and illustration, and I originally tried to learn easyCAD but the learning curve was too steep. Then I came upon Inkscape, which appears to have nearly everything I'll need. I just tried your method, and it works well. It's a clever way to get what I'm looking for done. Thanks!

theozh
Posts: 437
Joined: Fri Mar 23, 2012 6:30 pm

Re: Resize an object while maintaining relationship to others?

Postby theozh » Tue Jul 10, 2018 3:40 am

glad that I could help :-)
I am not an artist either. And when I need some drawings it's mostly going more to a technical direction. That's why I am missing quite a few CAD-like features, e.g. drawing with some specific scale, linked objects or constraints of points, lines, objects,... well, things like you also requested. However, I was told several times that Inkscape is no CAD-tool. Well, if you can program Python, there would be the option to write your own extensions.
Win7/64, Inkscape 0.92.2


Return to “Help with using Inkscape”