rbreu / beeref

BeeRef Reference Image Viewer
GNU General Public License v3.0
536 stars 42 forks source link

Automatic guides + snapping #129

Open prokoudine opened 2 months ago

prokoudine commented 2 months ago

Once feature I've been missing in BeeRef is automatic guides that help aligning images on the canvas to each other. E.g. I have a bunch of youtube thumbnails as references and I want to make a grid of those. Here is an example of what I'm talking about:

image

I know that I can use 'Arrange -> Optimal', but that always changes the original position of images (not sure why), plus I'd still need to align groups against one another, and the arrange command is not very helpful there.

What I've seen some other related applications do is provide automatic guide + snapping. The application would look at other objects currently visible in the viewport, take their bounding boxes and/or centers into consideration, render automatic guides e.g. between top edge of one image and top edge of the image you are dragging, and then snap into place the image that is being dragged. Here is e.g. Inkscape:

https://github.com/user-attachments/assets/4ba5d6ec-82cc-4714-bcff-1ac7f96f3efa

Similarly, when you resize an image, it would be nice to have an option to snap to e.g. corners of another image visible in the viewport. Another quick demo:

https://github.com/user-attachments/assets/2b3553c8-129d-45a2-8ce7-870bcb04f03f

It's a bonus to have distribution guides for equal spacing between multiple objects, but just aligning would be a great help already.

Love the project, thanks for your attention!

senntore commented 2 months ago

Yes! I hope this feature will be implemented at some point.