Yet another forest

If you have a design you're proud of, share the cfdg file here. It's also a good place to ask for feedback and collaborate.

Moderators: MtnViewJohn, chris, mtnviewmark

Post Reply
User avatar
lagroue
Posts: 114
Joined: Wed Jul 06, 2005 11:33 pm
Location: Paris, France
Contact:

Yet another forest

Post by lagroue »

Image

Stop rules are for babies

Code: Select all

startshape forest


rule forest 0.5 {
	forest { x 1 y 0.01 }
	forest { x -1 }
}
rule forest 0.5 {
	forest { x 1 y -0.01 }
	forest { x -1 }
}
rule forest 4.5 {
	forest { s 0.8 }
}
rule forest {
	forest { s 1.25 }
}
rule forest 0.03 {
	forest { x 1 }
	forest { x -1 }
	tree { }
}

rule tree {
	tree1 { r 85 }
}
rule tree {
	tree2 { r 95 }
}

rule tree1 {
	SQUARE { s 0.2 }
	SQUARE { s 0.2 x 0.2 }
	SQUARE { s 0.2 x 0.4 }
	SQUARE { s 0.2 x 0.6 }
	SQUARE { s 0.2 x 0.8 }
	SQUARE { s 0.1 b 1 x -0.1 }
	SQUARE { s 0.1 b 1 }
	SQUARE { s 0.1 b 1 x 0.1 }
	SQUARE { s 0.1 b 1 x 0.2 }
	SQUARE { s 0.1 b 1 x 0.3 }
	SQUARE { s 0.1 b 1 x 0.4 }
	SQUARE { s 0.1 b 1 x 0.5 }
	SQUARE { s 0.1 b 1 x 0.6 }
	SQUARE { s 0.1 b 1 x 0.7 }
	SQUARE { s 0.1 b 1 x 0.8 }
	SQUARE { s 0.1 b 1 x 0.9 }
	tree1 { x 1 r 1 s 0.95 b 0.01 }
}

rule tree1 0.3 {
	SQUARE { s 0.2 }
	tree2 { }
	tree1 { r -20 s 0.7 b -0.5}
}

rule tree1 0.05 {
	CIRCLE { }
	tree1 { }
}

rule tree2 {
	SQUARE { s 0.2 }
	SQUARE { s 0.2 x 0.2 }
	SQUARE { s 0.2 x 0.4 }
	SQUARE { s 0.2 x 0.6 }
	SQUARE { s 0.2 x 0.8 }
	SQUARE { s 0.1 b 1 x -0.1 }
	SQUARE { s 0.1 b 1 }
	SQUARE { s 0.1 b 1 x 0.1 }
	SQUARE { s 0.1 b 1 x 0.2 }
	SQUARE { s 0.1 b 1 x 0.3 }
	SQUARE { s 0.1 b 1 x 0.4 }
	SQUARE { s 0.1 b 1 x 0.5 }
	SQUARE { s 0.1 b 1 x 0.6 }
	SQUARE { s 0.1 b 1 x 0.7 }
	SQUARE { s 0.1 b 1 x 0.8 }
	SQUARE { s 0.1 b 1 x 0.9 }
	tree2 { x 1 r -1 s 0.95 b 0.01 }
}

rule tree2 0.3 {
	SQUARE { s 0.2 }
	tree1 { }
	tree2 { r 20 s 0.7 b -0.5}
}

rule tree2 0.05 {
	CIRCLE { }
	tree2 { }
}
Image

Image

Image

Image

Image

User avatar
LaT3x
Posts: 68
Joined: Wed Jul 06, 2005 3:11 pm
Location: Madrid, Spain

Post by LaT3x »

Wooow... REAL 100%
PERFECT

megaduck0
Posts: 13
Joined: Wed Jul 06, 2005 3:36 pm

Post by megaduck0 »

sweet forest, but I prefer to think of it as "Stop rules are for the impatient"

User avatar
lagroue
Posts: 114
Joined: Wed Jul 06, 2005 11:33 pm
Location: Paris, France
Contact:

Post by lagroue »

megaduck0 wrote:sweet forest, but I prefer to think of it as "Stop rules are for the impatient"
I thought you weren't afraid of computing time ???
megaduck0 wrote:Watch out - they're really heavy on the shape count.
:P

User avatar
aaronstj
Posts: 66
Joined: Wed Jul 06, 2005 11:34 am
Location: Seattle

Post by aaronstj »

Looks great. And I agree there's something more "pure" about a grammer without stop rules. Infinite recursion for everyone!

Also, what's with the circles? Bird's nests?

User avatar
lagroue
Posts: 114
Joined: Wed Jul 06, 2005 11:33 pm
Location: Paris, France
Contact:

Post by lagroue »

aaronstj wrote:Also, what's with the circles? Bird's nests?
Are you kidding ?
It's mistletoe, I'm definitive about that. (don't look at first image)

User avatar
aaronstj
Posts: 66
Joined: Wed Jul 06, 2005 11:34 am
Location: Seattle

Post by aaronstj »

Heh. We don't have many deciduous forests around here, guess I've never really seen it before when it wasn't Christmas.

User avatar
lagroue
Posts: 114
Joined: Wed Jul 06, 2005 11:33 pm
Location: Paris, France
Contact:

Post by lagroue »

Now I understand why some of us do pinewoods, and other winter trees.

Should I precise I'm still working of leaves ? :roll:

User avatar
lagroue
Posts: 114
Joined: Wed Jul 06, 2005 11:33 pm
Location: Paris, France
Contact:

Post by lagroue »

Forest by night, anyone ? Here are some wallpapers (no overdub, pure cfdg)

Image Image

Code: Select all

 startshape forest
background { hue 200 sat 0.2 b -0.7 }

// forest

rule forest 4.5 {
  forest { s 0.8 } }
rule forest {
  forest { s 1.25 } }
rule forest 0.5 {
  forest { x 1 y 0.03 }
  forest { x -1 } }
rule forest 0.5 {
  forest { x 1 y -0.03 }
  forest { x -1 } }
rule forest 0.03 {
  forest { x 1 }
  forest { x -1 }
  seed { } }

// seeds

rule seed {
  seed { }
  seed { s 1 0.9 } }
rule seed {
  tree { y 0.5 r 85
         sat 0.2 hue 50 |hue 90 b 0.3 } }
rule seed {
  tree { y 0.5 r 85
         sat 1 hue 30 |hue 70 b 0.5 } }
rule seed {
  tree { y 0.5 flip 180 r 95
         sat 0.5 hue 30 |hue 50 b 0.3 } }
rule seed {
  tree { y 0.5 flip 180 r 95
         sat 1 hue 50 |hue 70 b 0.5 } }
rule seed {
  tree { y 0.5 r 85 s 0.8 1
         sat 0.2 hue 50 |hue 90 b 0.3 } }
rule seed {
  tree { y 0.5 r 85 s 0.9 1
         sat 1 hue 30 |hue 70 b 0.5 } }
rule seed {
  tree { y 0.5 flip 180 r 95 s 0.9 1
         sat 0.5 hue 30 |hue 50 b 0.3 } }
rule seed {
  tree { y 0.5 flip 180 r 95 s 0.8 1
         sat 1 hue 50 |hue 70 b 0.5 } }

// trees

rule tree {
  trunc { }
  tree { x 1 r 1 s 0.9
         hue 0.05| sat 0.01 b 0.05 } }
rule tree 0.15 {
  tree { flip 180 }
  tree { r -20 y -0.1 s 0.5 0.85
         b -0.2 hue -0.03| sat 0.4 } }
rule tree 0.15 {
  tree { flip 180 }
  tree { r -20 y -0.1 s 0.6 0.85
         b -0.2 sat 0.2 } }
rule tree 0.05 {
  tree { flip 180 }
  tree { r -10 y -0.1 s 1.01
         b 0.3 hue 0.1| sat -0.1} }
rule tree 0.01 {
  tree { |hue 10 } }

// trunc

rule trunc 2 {
  SQUARE { s 1.1 0.2 b -0.7 sat -0.5 }
  SQUARE { s 1.1 0.1 b 0.8 sat -0.2 } }
rule trunc {
  SQUARE { s 1.1 0.2 b -0.6 sat -0.5 }
  SQUARE { x -0.25 s 0.55 0.1 b 0.8 sat -0.5 }
  SQUARE { x 0.25 s 0.55 0.1 b 0.9 } }
rule trunc {
  SQUARE { s 1.1 0.2 b -0.6 sat -0.5 }
  SQUARE { x -0.25 s 0.55 0.1 b 0.9 }
  SQUARE { x 0.25 s 0.55 0.1 b 0.8 sat -0.5  } }

// leaf

rule tree 0.1 {
  leaf { }
  tree { } }

rule leaf { drawleaf { } }

rule drawleaf { CIRCLE { hue 70 sat -0.1 b 0.1 } }
rule drawleaf { CIRCLE { hue 50 sat 0.1 } }
rule drawleaf 0.05 { CIRCLE { hue -50 sat 1 b 1 } }

// leaf : waiting rule artifact

rule leaf { waitleaf { } }
rule waitleaf { waitleaf { } }
rule waitleaf 0.02 { drawleaf { } }

shevegen
Posts: 57
Joined: Wed Jul 06, 2005 5:38 am

Post by shevegen »

I begin to find no words....

( I'd almost think it could be nice to have a monthly poll vote BUT i in no way do want to see creativity bound by any kind of results )

Post Reply