A *new* plugin for scattering objects
-
I needed a method for scattering objects within a given (planar) area but the closest plugin I could find was [anchor=http://sketchucation.com/forums/viewtopic.php?t=7612 goto=:2aag9zkp]MatrixProximity[/anchor:2aag9zkp]by TIG.
I needed something somewhat more "natural" and decided to write a new plugin. It would be nice if somebody could use it too, so please get the alpha version on [anchor= goto=http://www.michaelvasiljevs.com/sketchup-plugin-disperse-components/:2aag9zkp]my site[/anchor:2aag9zkp], currently for windows only (SU 2014/2015 should work).
Would appreciate any feedback even if something like "you fool, SketchUp already has functionality for this!!"!
Greets
Mike -
Link provided is flaky. Try this... http://www.michaelvasiljevs.com/category/3d-modelling-log/
-
I haven't tried you plugin, what is the main difference/advantage regarding other plugins, e.g. MakeFur?
-
First impression sounds like Compo Spray.
http://sketchucation.com/forums/viewtopic.php?t=33908 -
@dan,
The main difference is it's positioning algorithm is compiled [for windows only] so it should be much faster than all the ruby ones...john
-
"it's" refers to what ?
-
Many thanks for your replies and for correcting the link.
Regarding MakeFur - I had a look at it and it does not say what algorithm it uses but my guess that samples are placed independently of each other because I can see intersections in the generated grass.
As far as I see Compo Spray functions in a similar way to MakeFur and the author writes "not allowing collision can be VERY slow" perhaps because intersections are removed in a brute-force manner.
My plugin uses Poisson disk distribution - the same way photoreceptors are scattered in a human eye. It has very nice blue noise properties. Cook of Pixar (1986) wrote "With purely random distribution, the samples tend to bunch up in some places and leave large gaps in other places" .
The MatrixProximity script actually uses jittered grid algorithm which somewhat approximates Poisson disk method and is easier to implement.
Also indeed my plugin should be a little faster because C++ built code was used.Greetings
-
The plugin Disperse Components [alpha] is now available through extension warehouse! The plugin is free (will also probably stay so) and is available at http://extensions.sketchup.com/en/node/2826
Greetings,
Mike -
I haven't tried this yet as I'm on the road but have been hoping poisson distribution would get scripted for SU. A while ago ago I posted this query http://sketchucation.com/forums/viewtopic.php?f=323%26amp;t=55779%26amp;hilit=+poisson .
Currently when I want these (for 'random' planting layouts) I run them in R and export to dxf - Your method offers possibility of saving two steps and keeping everything 'in house'. One extra though - would you be able to add a ratio for each different component so as to get an effect as in the link's first image?
-
@unearthed said:
I haven't tried this yet as I'm on the road but have been hoping poisson distribution would get scripted for SU. A while ago ago I posted this query http://sketchucation.com/forums/viewtopic.php?f=323%26amp;t=55779%26amp;hilit=+poisson .
Did not see your post, distributing plants is certainly something I also thought of before! Not sure about Poisson Sampling with ruby, was thinking going the other way - a more performant solution using OpenCL or CUDA - because sampling is quite numerically intensive.
@unearthed said:
Currently when I want these (for 'random' planting layouts) I run them in R and export to dxf - Your method offers possibility of saving two steps and keeping everything 'in house'. One extra though - would you be able to add a ratio for each different component so as to get an effect as in the link's first image?
Right, the percentage of the total samples for each component? I could certainly do this, perhaps I will make an update this weekend if there is time.
As with regards to using different radii (for each sample/plant to have a different minimum radius), as also mentioned in your other post - I will see how quickly it can be done, perhaps if it takes more than a few hours (if done efficiently!) I'll think of releasing a commercial plugin.
Greetings
Advertisement