synthetic topiary. premislaw prunsinkiewicz (prof. p) mark james radomír měch

20
Synthetic Topiary

Upload: randolph-powers

Post on 22-Dec-2015

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Synthetic Topiary. Premislaw Prunsinkiewicz (Prof. P) Mark James Radomír Měch

Synthetic Topiary

Page 2: Synthetic Topiary. Premislaw Prunsinkiewicz (Prof. P) Mark James Radomír Měch

Synthetic Topiary

• Premislaw Prunsinkiewicz (Prof. P)

• Mark James

• Radomír Měch

Page 3: Synthetic Topiary. Premislaw Prunsinkiewicz (Prof. P) Mark James Radomír Měch

Synthetic Topiary

• Development in two directions:– structure-oriented models– space-oriented models

Page 4: Synthetic Topiary. Premislaw Prunsinkiewicz (Prof. P) Mark James Radomír Měch

Synthetic Topiary

• Development in two directions:– structure-oriented models

• Endogenous : module inherits lineage at creation.

• Interactive : information flow.

Context-sensitive L-systems

– space-oriented models

Page 5: Synthetic Topiary. Premislaw Prunsinkiewicz (Prof. P) Mark James Radomír Měch

Synthetic Topiary

• Development in two directions:– structure-oriented models– space-oriented models

• exogenous : information transmitted from environment.

Page 6: Synthetic Topiary. Premislaw Prunsinkiewicz (Prof. P) Mark James Radomír Měch

Synthetic Topiary

• Development in two directions:– structure-oriented models– space-oriented models

Environmentally-sensitive L-systems address the dichotomy.

Page 7: Synthetic Topiary. Premislaw Prunsinkiewicz (Prof. P) Mark James Radomír Měch

Lindenmayer systems

• Stochastic context-sensitive grammars.

• id : lc < pred > rc : cond succ : prob– replace pred by succ with probability prob if

• pred has lc on the left and rc on the right and

• cond is true

Page 8: Synthetic Topiary. Premislaw Prunsinkiewicz (Prof. P) Mark James Radomír Měch

Modules

• Each module controls a LOGO-style turtle.– F moves forward.– +-, &^, / \ are rotations around H, U, L.– @o draws a sphere at current position.– % terminates a branch (e.g. pruning )

• magnitude parameters are optional

Page 9: Synthetic Topiary. Premislaw Prunsinkiewicz (Prof. P) Mark James Radomír Měch

Lindenmayer Systems

• Example: L-System 2ω : A(1) B(3) A(5)

p1: A(x) A(x+1) : 0.4

p2: A(x) B(x-1) : 0.6

p3: A(x) < B(y) > A(z) : y<4 B(x+z)[A(y)]

A(1) B(3) A(5)

Page 10: Synthetic Topiary. Premislaw Prunsinkiewicz (Prof. P) Mark James Radomír Měch

Lindenmayer Systems

• Example: L-System 2 ω : A(1) B(3) A(5)

p1: A(x) A(x+1) : 0.4

p2: A(x) B(x-1) : 0.6

p3: A(x) < B(y) > A(z) : y<4 B(x+z)[A(y)]

A(2) B(3) A(5)

Page 11: Synthetic Topiary. Premislaw Prunsinkiewicz (Prof. P) Mark James Radomír Měch

Lindenmayer Systems

• Example: L-System 2ω : A(1) B(3) A(5)

p1: A(x) A(x+1) : 0.4

p2: A(x) B(x-1) : 0.6

p3: A(x) < B(y) > A(z) : y<4 B(x+z)[A(y)]

B(7)[A(3)]

Page 12: Synthetic Topiary. Premislaw Prunsinkiewicz (Prof. P) Mark James Radomír Měch

Lindenmayer Systems

• Example: L-System 2ω : A(1) B(3) A(5)

p1: A(x) A(x+1) : 0.4

p2: A(x) B(x-1) : 0.6

p3: A(x) < B(y) > A(z) : y<4 B(x+z)[A(y)]

B(7)[B(2)]

Page 13: Synthetic Topiary. Premislaw Prunsinkiewicz (Prof. P) Mark James Radomír Měch

Environmental Sensitivity

• Add a ‘query’ module to read the position.– ?P(x,y) will assign the current position to x,y.– ?H(h) will assign the H orientation to h.

• Allows parameter variation depending on external parameter.

A?P(x,y) : (x²+y²)<10² F(x²+y²)

• Example: L-System 3

Page 14: Synthetic Topiary. Premislaw Prunsinkiewicz (Prof. P) Mark James Radomír Měch

Pruning

• Use ?P to find when to prune, % to do it.

• Example: L-system 4– Dormant buds grow on the tree.– New branches grow if the ‘leading bud’ is cut.– Pruning function cut bud leaving a L*L cube.

Page 15: Synthetic Topiary. Premislaw Prunsinkiewicz (Prof. P) Mark James Radomír Měch

A model of tree development

• Early works: A tree is a self-similar branching structure.– Led to unnatural exponential growth.

• Botanical model:A shoot is viable only if it receives enough light.– Leads to a more constrained branching ratio.

Page 16: Synthetic Topiary. Premislaw Prunsinkiewicz (Prof. P) Mark James Radomír Měch

A model of tree development

• Hypotheses:– Start with a single non-branching shoot.– New shoots grow from buds near end of

previous year’s segments.– There is a maximum branching ratio.– All branch segments have the same length.– Current year’s shoots grow leaves.– Leaves need light.

Page 17: Synthetic Topiary. Premislaw Prunsinkiewicz (Prof. P) Mark James Radomír Měch

A model of tree development

• Consequences– Crown radius is Θ(age).– Available leaf area is Θ(age²).– Number of potential shoots is Θ(exp(age))

• will get, in time, limited by available leaf area.

• Branching factor bage is thus

bage = (2.age+1)/age²

• This produces L-system 5.

Page 18: Synthetic Topiary. Premislaw Prunsinkiewicz (Prof. P) Mark James Radomír Měch

Putting all together : LS 6

ω: Axiom - start with a single apex, aged 1.

P1: Growth - !pruned, branching.

P2: Growth - !pruned, !branching, creates a bud.

P3: Growth - pruned.

P4: Creates growth signal S where P3 occured.

P5,6: Propagate S to earlier buds.

P7: S activate a new apex, with the right age.

P8: Housekeeping - Age of the buds.

Page 19: Synthetic Topiary. Premislaw Prunsinkiewicz (Prof. P) Mark James Radomír Měch

Conclusion

• Issues :– Defining the pruning volume equation.

• Use constructive geometry.

• Use ellipsoid skeletons.

– Large number of primitives.• Reuse via instantiation.

– Characterizing plants and their reaction to pruning is non-trivial.

Page 20: Synthetic Topiary. Premislaw Prunsinkiewicz (Prof. P) Mark James Radomír Měch

Conclusion

• It’s cool.

• Enough data to code the algorithm.– It’s all theory, maybe a fancy CS660 project ?