Get In Line! (May 9,2011)

47 votes
Version: 
5.0
Date Updated: 
04/09/2011
Author Name: 
JokerMartini

This script evenly distributes the selected objects based on the start and end target objects.

Anyone is more than welcome to add to this.
Things you could potentially add are qsorting, transform, scale, and rotation sorting as well.

Right now it just does position.

Features

- V1.0 | Distribute selected objects evenly between two targeted objects

- V2.0 | Random position offset for each object on X,Y,Z

- V3.0 | Functionality code rewrite

- V4.0 | Offset position adjustments and bug fixes

- V5.0 | New UI design and random positioning along vector
- V5.0 | Custom Axis selecting for position aligning individually for X,Y,Z.

WishList

- Distribute Option for each axis individually X,Y,Z
- Distribute Rotation
- QSort selected objects (will allow for animating ex:spring)

Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
barigazy's picture

...

@trueman
Just change state_ok function in line 6.
Here is the fix

fn state_ok = if selection.count == 0 then return off else
(
	for obj in selection where isValidNode obj do
	(
		if (obj.name == StartObj.name or obj.name == EndObj.name) do return off
	) ; on
)

barigazy

trueman's picture

Hi. Thanks for the cool

Hi. Thanks for the cool script.
I suggest it would be nice to add start/end objects existence check. Sometimes I accidentally try to distribute objects between deleted objects that leads to runtime error.

JokerMartini's picture

This is getting a re-write at

This is getting a re-write at the moment and will be much quicker with easier control and use.

John Martini
Digital Artist
http://www.JokerMartini.com (new site)

Spacelord's picture

Thank you

This is so cool, I was just thinking it would be great to have a Revit feature that is very similar to this script in 3dsmax and here it is !!

Thanks a million.

Serjio444's picture

sorry I do not understand how

sorry
I do not understand how this script works
You can make video?

JokerMartini's picture

Sorry about the bug. I'll

Sorry about the bug. I'll look into fixing that and implement it into the update.

I never test on groups as they, to me, are bad practice to use inside of 3ds Max. I only say that because man handles them incorrectly. That is no fault of you or I, but just wanted to make mention of it.

As far as fixing that though, I'll be sure to do so. Thank you for the report.

John Martini
Digital Artist
http://www.JokerMartini.com (new site)

dub73's picture

not working with groups

nice script, but it is not working with groups, it opens groups and distribute all objects. It should keep groups closed and distribute only the group node/container. That would be awesome :)

cheers

dub

asymptote's picture

Very useful, the only things

Very useful, the only things I could suggest to improve are realtime preview and ability to remember which objects are selected (selection sets?)

thx for the script.

crystal3d's picture

very good and

and it shuffles the order of the objects... maybe it could consider the objects' name on distribution order like 12345 and not like 154362.

thanks you

JokerMartini's picture

You could space out the

You could space out the objects based on their bounding box and then space them accordingly.
It is definitely something worth integrating into the next release of this script.

John Martini
Digital Artist
http://www.JokerMartini.com (new site)

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.