Presentation is loading. Please wait.

Presentation is loading. Please wait.

SCRIPTING AND CONSTRUCTION THREE DIMENSIONAL TREE By Ryan Pierce and Marco Rathjen.

Similar presentations


Presentation on theme: "SCRIPTING AND CONSTRUCTION THREE DIMENSIONAL TREE By Ryan Pierce and Marco Rathjen."— Presentation transcript:

1 SCRIPTING AND CONSTRUCTION THREE DIMENSIONAL TREE By Ryan Pierce and Marco Rathjen

2 Goal Set out to discover algorithms for building pre-rendered, relatively realistic tree systems for use in 3D modeling.

3 L-Systems Lindenmayer Systems Introduced in 1968 by Astrid Lindenmayer, a Hungarian theoretical biologist and botanist. Used to model the behavior of plant cells and subsequent plant development. Also, fractals.

4 Parametric L-Systems Parametric L-Systems are defined as a tuple: G = (V, ω, P) V is the alphabet, basically a set of strings that are used as variables. ω is the initiator, a string of several initial conditions P is a set of production rules defining the system’s growth.

5 Basic L-System (Algae) ω = A n = 0: A n = 1: AB n = 2: ABA n = 3: ABAAB n = 4: ABAABABA n = 5: ABAABABAABAAB n = 6: ABAABABAABAABABAABABA Alphabet -> V: A, B Axiom - > ω: A Production Rules -> P:  (A-> AB)  (B-> A)

6 Sierpinski Triangles (n=2, 4, 6, 8) Square Koch (n=3) Dragon Curve (n=10) Basic L-Systems http://www.kevs3d.co.uk/dev/lsystems/http://www.kevs3d.co.uk/dev/lsystems/ - Demos

7 Fractal Plant System (n=6, angle=25 degrees)

8 Turtles A turtle has: a location an orientation a pen

9 Dielectric Breakdown Model Simulates branching pattern that occurs during electrical discharge. Breakdown occurs when an insulator (dielectric) is converted into a conductor. Given a grid G, growing an aggregate by size n takes at best O(n * G^1.5) G is especially large in 3D 1.) Calculate electric potential φ on a regular grid. 2.) Select grid cell as growth site based on φ. 3.) Add growth site to boundary condition. 4.) Repeat until desired aggregate is obtained.

10 Modern Algorithms Space Colonization Laplacian Growth Various Laplacian Growth techniques

11 Modern Algorithms Space Colonization Laplacian Growth a.Attraction points b.Closest nodes c.Normalized vector d.Adding vectors and normalizing e.Lateral branching/extending main axis f.Neighborhood of g.Removing attraction points h.Closest nodes Initial: 1.Insert a point charge at the origin. 2.Locate the candidate sites around charge (8 or 26 neighbors) 3.Calculate potential at each site according to the above equation. Recursive: 1. Randomly select weighted growth site according to preferences. 2.Add new point charge to site. 3.Update potential at all candidate sites. 4.Add new candidate sites. 5.Calculate potential at new candidate sites using equation.

12 Space Colonization

13

14 Laplacian Growth Runtime: O(n) for attraction point calculation More “convincing” for mature trees Simulates fight for resources during growth Wide variety of shapes with small parameter set, and little variation of algorithm Runtime: O(n 2 ) Memory: O(n) where n is the number of growth sites in the final aggregate. Extra negative charges can be inserted to stunt or encourage growth Allows for global simulations (light, wind) Space Colonization vs. Laplacian Growth

15 For the Test! Know the three basic parts of an L-System: Alphabet, Initiator, and Production Systems (aka Variables, Initial Conditions, and Rules)

16 Sources Images/L-Systems: http://en.wikipedia.org/ wiki/L-system http://en.wikipedia.org/ wiki/L-system Laplacian Growth: http://scholar.google.co m/scholar_url?hl=en&q =https://www.mat.ucsb. edu/Publications/tkim_l aplacian_small.pdf&sa= X&scisig=AAGBfm10e7e vR4QcXYO8KKlKcecPyQ GRWA&oi=scholarr Space Colonization: http://algorithmicbotany.org/papers/colonization.egwnp2007.html


Download ppt "SCRIPTING AND CONSTRUCTION THREE DIMENSIONAL TREE By Ryan Pierce and Marco Rathjen."

Similar presentations


Ads by Google