Jump to content
You must now use your email address to sign in [click for more info] ×

Distribute not working, or am I doing it wrong?


Recommended Posts

Looking at AD here, IMHO it can't do it that way, even the available align settings might suggerate to support this (maybe it's a alignment bug, so don't know if it is intended to behave this way). So you might have instead first to select the inner boxes and distribute those first evenly in a manner you like, then maybe group those and then center or distribute that group on the bigger outer box.

☛ Affinity Designer 1.10.8 ◆ Affinity Photo 1.10.8 ◆ Affinity Publisher 1.10.8 ◆ OSX El Capitan
☛ Affinity V2.3 apps ◆ MacOS Sonoma 14.2 ◆ iPad OS 17.2

Link to comment
Share on other sites

Distributing evenly will give you three even gaps between the four boxes. If you want the gaps at the ends of the outer box to be the same size, you can achieve that quite easily by snapping another small box to each end of the outer box and then evenly distributing all six small boxes.

Alfred spacer.png
Affinity Designer/Photo/Publisher 2 for Windows • Windows 10 Home/Pro
Affinity Designer/Photo/Publisher 2 for iPad • iPadOS 17.4.1 (iPad 7th gen)

Link to comment
Share on other sites

53 minutes ago, tomatohorse said:

Isn't a huge part of distributing the fact that you want it evenly spaced within a defined area?  Can Affinity really not do this?

 

You don't have a "defined area". You have five objects selected.

 

"Distributing" puts an even space between selected objects, one of which is the big box which has no space between it at all because it overlaps everything.

Windows PCs. Photo and Designer, latest non-beta versions.

Link to comment
Share on other sites

5 minutes ago, toltec said:

 

You don't have a "defined area". You have five objects selected.

 

"Distributing" puts an even space between selected objects, one of which is the big box which has no space between it at all because it overlaps everything.

 

True, but consider the fact that all the other commands in the arrange popup work this way. If I want to center a object, for example, I select the box it is within and make sure "selection bounds" is chosen. No problem there.

 

The distribute button is right next to those commands. Wouldn't it make sense to have it work the same way, provided "selection bounds" is chosen? Seems logical to me...

Link to comment
Share on other sites

26 minutes ago, tomatohorse said:

 

True, but consider the fact that all the other commands in the arrange popup work this way. If I want to center a object, for example, I select the box it is within and make sure "selection bounds" is chosen. No problem there.

 

The distribute button is right next to those commands. Wouldn't it make sense to have it work the same way, provided "selection bounds" is chosen? Seems logical to me...

 

But how would you define the selection bounds in your case ? The big box is selected as a object to be distributed, not as a "selection boundary" so you would need a separate "selection bounds" command. Just for the big box. There is a big difference between aligning objects to putting an equal space between them. In my eyes, at least. It uses the outside edges of the box to measure the gap, so your big box edges are outside the boundary.

 

The way round it is to do as Alfred says. Place boxes that align with (but outside) the big box area first, then delete them,align.png.2eafaafe30d103704f203054fd97cf60.png

Windows PCs. Photo and Designer, latest non-beta versions.

Link to comment
Share on other sites

1 hour ago, toltec said:

 

But how would you define the selection bounds in your case ?

 

It would use the same logic as align. Something like, "If all objects are contained within a larger object, and that larger object is selected, distribute evenly within the container." The align command doesn't assume you want both boxes aligned; it understands that you only want one, within its selected container. Same for distribute.

 

Distributing within a container is a fairly common task, so this would be really useful. 

 

The work-around you and Alfred suggested works, and I want to thank you both for teaching it to me. :) 

 

However, creating two extra objects, putting them at the edges of the box, then deleting them seems less than ideal. But I guess if I want anything different I need to make a feature request.

Link to comment
Share on other sites

Align doesn't reference the largest object, just the one that is at the most extreme x or y co-ord. If on is much larger than the others, the alignment happens to that.

 

Not so spacing or distribution. Distribution looks at the objects' bounding box centers, and places the objects based on those centers. It doesn't matter what size the objects are reletive to each other. its only the centers.

 

Spacing does much the same, but adjusts the x/y co-ords so that each item will have the same space when all the bounding box size is factored in.

 

For spacing within a bounding object, look into the constraints function.

iMac 27" Retina, c. 2015: OS X 10.11.5: 3.3 GHz I c-5: 32 Gb,  AMD Radeon R9 M290 2048 Mb

iPad 12.9" Retina, iOS 10, 512 Gb, Apple pencil

Huion WH1409 tablet

Link to comment
Share on other sites

1 hour ago, tomatohorse said:

Distributing within a container is a fairly common task, so this would be really useful. 

But is it really that common to want the inter-object spacing be the same as the spacing to the edges of the 'container,' even assuming that programmatically the other objects are 'contained' by that object?

 

Or consider a more general case where the 'contained' objects may not all be of the same size or even the same type of shape as the 'container' object.

All 3 1.10.8, & all 3 V2.4.1 Mac apps; 2020 iMac 27"; 3.8GHz i7, Radeon Pro 5700, 32GB RAM; macOS 10.15.7
Affinity Photo 
1.10.8; Affinity Designer 1.108; & all 3 V2 apps for iPad; 6th Generation iPad 32 GB; Apple Pencil; iPadOS 15.7

Link to comment
Share on other sites

11 minutes ago, R C-R said:

But is it really that common to want the inter-object spacing be the same as the spacing to the edges of the 'container,' even assuming that programmatically the other objects are 'contained' by that object?

 

I suspect not. I think I would generally be more likely to want the spacing at the edges to be half that of the inter-object spacing.

 

11 minutes ago, R C-R said:

Or consider a more general case where the 'contained' objects may not all be of the same size or even the same type of shape as the 'container' object.

 

Quite so. I’m not sure that this could be done satisfactorily even for a relatively simple case such as rectangles inside an ellipse, never mind an irregularly shaped container.

 

Alfred spacer.png
Affinity Designer/Photo/Publisher 2 for Windows • Windows 10 Home/Pro
Affinity Designer/Photo/Publisher 2 for iPad • iPadOS 17.4.1 (iPad 7th gen)

Link to comment
Share on other sites

  • 2 years later...

The solution you're looking for is the constraints panel:

panel_constraints.png

It's hidden by default, so you'll have to enable it in View->Studio. A floating constraints panel should then pop up somewhere on your canvas. Affinity Designer might bug out, so try resetting the studio if nothing appears.

In order to achieve the effect you were after, you'll have to de-select all arrows in the constraints panel by clicking on them. Make sure your child objects are inside your parent object (container). Groups are also valid containers in addition to other objects, so CMD/CTRL+G is a good way to create a parent/child relationship, enabling constraints.

Sorry you didn't get the help you were after sooner. I don't think this solution is either very intuitive or discoverable. I don't know why the constraint options aren't included with the distribution options, given how closely they're related. I also think a keyboard shortcut that you could hold down while scaling the parent object to distribute the children evenly inside instead of scaling everything would complement the constraint options.

Link to comment
Share on other sites

  • 1 year later...
6 hours ago, fruid said:

on the iPad I can distribute the objects evenly and adjust the space by entering a px number. On desktop, this seems impossible. Thoughts?

I guess you are not doing it properly on the desktop. There is a checkbox called Auto Distribute, uncheck that once you have hit the far right 'button' on the Align Horizontally/Vertically, this is the Space Horizontally/Vertically.

Mac Pro (Late 2013) Mac OS 12.7.4 
Affinity Designer 2.4.1 | Affinity Photo 2.4.1 | Affinity Publisher 2.4.1 | Beta versions as they appear.

I have never mastered color management, period, so I cannot help with that.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use | Privacy Policy | Guidelines | We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.