We closed this forum 18 June 2010. It has served us well since 2005 as the ALPHA forum did before it from 2002 to 2005. New discussions are ongoing at the new URL http://forum.processing.org. You'll need to sign up and get a new user account. We're sorry about that inconvenience, but we think it's better in the long run. The content on this forum will remain online.
IndexProgramming Questions & HelpPrograms › Aesthetic Tutorial
Page Index Toggle Pages: 1
Aesthetic Tutorial (Read 698 times)
Aesthetic Tutorial
Apr 29th, 2006, 10:31pm
 
I'm working on a project code-named A Dangerous Sign of Crisis (video-tracking-LSystems)

I've figured out how to get a nicely dynamically growing tree. This was built using the Traer Physics library. I've tried using Springs and Attractors to grow the tree but they eat up processor power (which I need for webcam tracking at the same time) or they simply end up looking a bit crap. The best result was to grow the tree like a firework going off.

Demonstration of current dynamically growing LSystem trees (click on applet to change tree).


I'm hoping these trees will create a kind of strange garden as people roll seeds off to grow trees at the sides with the tracking gubbinz.

I've got a few more weeks to work on this and I was wondering if anyone had any suggestions for how I could alter the look of the trees, or more clever things I could do to them. Ambitious suggestions welcome - this is for my end of degree show. Thanks for your time.
Re: Aesthetic Tutorial
Reply #1 - May 1st, 2006, 5:44am
 
This looks great! I love the motion of them coming out.

A way you can play with this idea is using various authored "parts" instead of identical generic "segments" (as you have done) to represent the segments of your tree system. This would create a lego-like system from which the tree will draw from a pool, and assemble a tree from these modules.

These modules could behave and look different, and could mix and match between, giving you more variety. So for example, if certain modules weigh differently or if they sprout other kinds of modules, you'd get another dimension of variability.

Just a thought!
Re: Aesthetic Tutorial
Reply #2 - May 1st, 2006, 7:06pm
 
i think mflux is right, have a look at this.

best,
F
Re: Aesthetic Tutorial
Reply #3 - May 2nd, 2006, 1:25am
 
Weight is a fantastic suggestion considering the fact I'm throwing particles out. Just a slight tweak to the standard traer.physic particle (all of which are 1.0 at the moment) will completely randomise the tree.

The modular aspect I think will come in very useful for the seed aspect. I considered these trees germinating fruit. An evolving identity for the nodes would be great.

I have considered a 3D model, perhaps using JohnG's cylinder class which I butchered but didn't get round to giving justice. The Algorithmic Beauty of Plants gives a list of symbols to use for 3D LSystems:
Code:

page 19:
The following symbols control turtle orientation in space (Figure 1.18):
+ Turn left by angle theta, using rotation matrix RU(theta).
- Turn right by angle theta, using rotation matrix RU(-theta).
& Pitch down by angle theta, using rotation matrix RL(theta).
^ Pitch up by angle theta, using rotation matrix RL(-theta).
\ Roll left by angle theta, using rotation matrix RH(theta).
/ Roll right by angle theta, using rotation matrix RH(-theta).
| Turn around, using rotation matrix RU(180).

Even if I don't get around to this on this project it's certainly food for thought.

Thank you for the suggestions Mflux and fjen, if anyone has any more I'd love to hear them.
Page Index Toggle Pages: 1