Compare commits
8 Commits
Nowe_drzew
...
master
Author | SHA1 | Date | |
---|---|---|---|
c57b8000b9 | |||
5aa5950d4b | |||
f415ef3285 | |||
1d468945ad | |||
75cf7bf12d | |||
40163a312c | |||
47f9073c2c | |||
656fd70231 |
BIN
Populus nigra italica.pptx
Normal file
BIN
Populus nigra italica.pptx
Normal file
Binary file not shown.
86
drzewo.lpy
Normal file
86
drzewo.lpy
Normal file
@ -0,0 +1,86 @@
|
|||||||
|
import random
|
||||||
|
a = 50
|
||||||
|
length = 2
|
||||||
|
dl = 0.05
|
||||||
|
globalwidth = 1.5
|
||||||
|
degree = 70
|
||||||
|
def Start():
|
||||||
|
#random.seed(150)
|
||||||
|
pass
|
||||||
|
|
||||||
|
Axiom: SetGuide(treepath,90)_(1)@GsG(0.5)A(1,0.30)
|
||||||
|
derivation length: 100
|
||||||
|
production:
|
||||||
|
A(x,k) :
|
||||||
|
if k < 3.5:
|
||||||
|
if x <= 7:
|
||||||
|
produce /(96)F(0.7,1-k/5)A(x+1,k+0.01)
|
||||||
|
elif x <= 14:
|
||||||
|
produce /(degree)F(0.7,1-k/5)[SetGuide(treepath2,8)_(0.2)&(90)-(60)B(1,k)]A(x+1,k+0.1)
|
||||||
|
else:
|
||||||
|
x = 0
|
||||||
|
produce A(x+1,k+0.01)
|
||||||
|
elif k < 4:
|
||||||
|
produce /(degree)F(0.7,1-k/5)[SetGuide(finish,8)_(0.2)&(90)-(60)B(1,k)]A(x+1,k+0.1)
|
||||||
|
B(x,k):
|
||||||
|
r = random.random()
|
||||||
|
if x <= 20:
|
||||||
|
produce F(0.8,0.05+0.25/k)[/(r*500)+(20)_(0.02)F(1)C(1,1.0)]B(x+1,k+1)
|
||||||
|
C(x,k):
|
||||||
|
r = random.random()
|
||||||
|
if x <= 3:
|
||||||
|
produce F(0.6)C(x+1,k+1);(2)Leaf()
|
||||||
|
|
||||||
|
Leaf():
|
||||||
|
produce Sweep(path,section,length,dl,globalwidth,leafwidth)
|
||||||
|
interpretation:
|
||||||
|
endlsystem
|
||||||
|
###### INITIALISATION ######
|
||||||
|
|
||||||
|
__lpy_code_version__ = 1.1
|
||||||
|
|
||||||
|
def __initialiseContext__(context):
|
||||||
|
import openalea.plantgl.all as pgl
|
||||||
|
Color_1 = pgl.Material("Color_1" , ambient = (66,33,0) , diffuse = 0 , specular = (204,204,204) , )
|
||||||
|
Color_1.name = "Color_1"
|
||||||
|
context.turtle.setMaterial(1,Color_1)
|
||||||
|
Color_2 = pgl.Material("Color_2" , ambient = (6,13,2) , diffuse = 5.76923 , )
|
||||||
|
Color_2.name = "Color_2"
|
||||||
|
context.turtle.setMaterial(2,Color_2)
|
||||||
|
import openalea.plantgl.all as pgl
|
||||||
|
path = pgl.BezierCurve2D(
|
||||||
|
pgl.Point3Array([(-0.5, 0, 1),(-0.326083, -0.0978345, 1),(-0.0956592, 0.0176126, 1),(0.0620721, -0.00621237, 1)]) ,
|
||||||
|
)
|
||||||
|
path.name = "path"
|
||||||
|
section = pgl.NurbsCurve2D(
|
||||||
|
ctrlPointList = pgl.Point3Array([(-0.672727, 0, 1),(-0.324715, 0.227106, 1),(0.023332, -0.20146, 1),(0.337225, -0.0436618, 1),(0.695455, 0.00454545, 1)]) ,
|
||||||
|
)
|
||||||
|
section.name = "section"
|
||||||
|
import openalea.plantgl.all as pgl
|
||||||
|
leafwidth = pgl.NurbsCurve2D(
|
||||||
|
ctrlPointList = pgl.Point3Array([(0, 0, 1),(0.0305872, 0.539066, 1),(0.125225, 0.681196, 1),(0.344686, 0.720503, 1),(0.544193, 0.504133, 1),(0.695718, 0.293404, 1),(0.731597, 0.166532, 1),(0.771218, 0.0592187, 1),(0.897377, 0.030847, 1),(1, -0.000465795, 1)]) ,
|
||||||
|
)
|
||||||
|
leafwidth.name = "leafwidth"
|
||||||
|
treepath = pgl.NurbsCurve2D(
|
||||||
|
ctrlPointList = pgl.Point3Array([(-0.5, 0, 1),(-0.238627, 0.00619407, 1),(-0.07298, -0.00805499, 1),(0.0491646, 0.0141531, 1),(0.234358, -9.59484e-005, 1),(0.398942, -0.00805499, 1),(0.565017, -0.00943561, 1)]) ,
|
||||||
|
)
|
||||||
|
treepath.name = "treepath"
|
||||||
|
finish = pgl.BezierCurve2D(
|
||||||
|
pgl.Point3Array([(-0.465217, 0.00434783, 1),(-0.310145, 0.0826087, 1),(-0.324638, 0.456522, 1),(-0.34633, 0.672535, 1)]) ,
|
||||||
|
)
|
||||||
|
finish.name = "finish"
|
||||||
|
treepath2 = pgl.NurbsCurve2D(
|
||||||
|
ctrlPointList = pgl.Point3Array([(-0.00917746, 0.0133432, 1),(0.72348, 1.57179, 1),(3.10364, 2.97222, 1),(3.50129, 4.69656, 1),(3.82637, 6.13593, 1)]) ,
|
||||||
|
)
|
||||||
|
treepath2.name = "treepath2"
|
||||||
|
panel_0 = ({'active': True, 'visible': True, 'name': 'Panel 1'},[('Curve2D',path),('Curve2D',section),('Function',leafwidth),('Curve2D',treepath),('Curve2D',finish),('Curve2D',treepath2)])
|
||||||
|
parameterset = [panel_0,]
|
||||||
|
context["__functions__"] = [('leafwidth',leafwidth),]
|
||||||
|
context["__curves__"] = [('path',path),('section',section),('treepath',treepath),('finish',finish),('treepath2',treepath2),]
|
||||||
|
context["__parameterset__"] = parameterset
|
||||||
|
context["path"] = path
|
||||||
|
context["section"] = section
|
||||||
|
context["leafwidth"] = pgl.QuantisedFunction(leafwidth)
|
||||||
|
context["treepath"] = treepath
|
||||||
|
context["finish"] = finish
|
||||||
|
context["treepath2"] = treepath2
|
86
drzewo.lpy~
Normal file
86
drzewo.lpy~
Normal file
@ -0,0 +1,86 @@
|
|||||||
|
import random
|
||||||
|
a = 50
|
||||||
|
length = 2
|
||||||
|
dl = 0.05
|
||||||
|
globalwidth = 1.5
|
||||||
|
degree = 70
|
||||||
|
def Start():
|
||||||
|
#random.seed(150)
|
||||||
|
pass
|
||||||
|
|
||||||
|
Axiom: SetGuide(treepath,90)_(1)@GsG(0.5)A(1,0.30)
|
||||||
|
derivation length: 100
|
||||||
|
production:
|
||||||
|
A(x,k) :
|
||||||
|
if k < 3.5:
|
||||||
|
if x <= 7:
|
||||||
|
produce /(96)F(0.7,1-k/5)A(x+1,k+0.01)
|
||||||
|
elif x <= 14:
|
||||||
|
produce /(degree)F(0.7,1-k/5)[SetGuide(treepath2,8)_(0.2)&(90)-(60)B(1,k)]A(x+1,k+0.1)
|
||||||
|
else:
|
||||||
|
x = 0
|
||||||
|
produce A(x+1,k+0.01)
|
||||||
|
elif k < 4:
|
||||||
|
produce /(degree)F(0.7,1-k/5)[SetGuide(finish,8)_(0.2)&(90)-(60)B(1,k)]A(x+1,k+0.1)
|
||||||
|
B(x,k):
|
||||||
|
r = random.random()
|
||||||
|
if x <= 20:
|
||||||
|
produce F(0.8,0.05+0.25/k)[/(r*500)+(20)_(0.02)F(1)C(1,1.0)]B(x+1,k+1)
|
||||||
|
C(x,k):
|
||||||
|
r = random.random()
|
||||||
|
if x <= 3:
|
||||||
|
produce F(0.6)C(x+1,k+1);(2)&(r*200)Leaf()
|
||||||
|
|
||||||
|
Leaf():
|
||||||
|
produce Sweep(path,section,length,dl,globalwidth,leafwidth)
|
||||||
|
interpretation:
|
||||||
|
endlsystem
|
||||||
|
###### INITIALISATION ######
|
||||||
|
|
||||||
|
__lpy_code_version__ = 1.1
|
||||||
|
|
||||||
|
def __initialiseContext__(context):
|
||||||
|
import openalea.plantgl.all as pgl
|
||||||
|
Color_1 = pgl.Material("Color_1" , ambient = (66,33,0) , diffuse = 0 , specular = (204,204,204) , )
|
||||||
|
Color_1.name = "Color_1"
|
||||||
|
context.turtle.setMaterial(1,Color_1)
|
||||||
|
Color_2 = pgl.Material("Color_2" , ambient = (6,13,2) , diffuse = 5.76923 , )
|
||||||
|
Color_2.name = "Color_2"
|
||||||
|
context.turtle.setMaterial(2,Color_2)
|
||||||
|
import openalea.plantgl.all as pgl
|
||||||
|
path = pgl.BezierCurve2D(
|
||||||
|
pgl.Point3Array([(-0.5, 0, 1),(-0.326083, -0.0978345, 1),(-0.0956592, 0.0176126, 1),(0.0620721, -0.00621237, 1)]) ,
|
||||||
|
)
|
||||||
|
path.name = "path"
|
||||||
|
section = pgl.NurbsCurve2D(
|
||||||
|
ctrlPointList = pgl.Point3Array([(-0.672727, 0, 1),(-0.324715, 0.227106, 1),(0.023332, -0.20146, 1),(0.337225, -0.0436618, 1),(0.695455, 0.00454545, 1)]) ,
|
||||||
|
)
|
||||||
|
section.name = "section"
|
||||||
|
import openalea.plantgl.all as pgl
|
||||||
|
leafwidth = pgl.NurbsCurve2D(
|
||||||
|
ctrlPointList = pgl.Point3Array([(0, 0, 1),(0.0305872, 0.539066, 1),(0.125225, 0.681196, 1),(0.344686, 0.720503, 1),(0.544193, 0.504133, 1),(0.695718, 0.293404, 1),(0.731597, 0.166532, 1),(0.771218, 0.0592187, 1),(0.897377, 0.030847, 1),(1, -0.000465795, 1)]) ,
|
||||||
|
)
|
||||||
|
leafwidth.name = "leafwidth"
|
||||||
|
treepath = pgl.NurbsCurve2D(
|
||||||
|
ctrlPointList = pgl.Point3Array([(-0.5, 0, 1),(-0.238627, 0.00619407, 1),(-0.07298, -0.00805499, 1),(0.0491646, 0.0141531, 1),(0.234358, -9.59484e-005, 1),(0.398942, -0.00805499, 1),(0.565017, -0.00943561, 1)]) ,
|
||||||
|
)
|
||||||
|
treepath.name = "treepath"
|
||||||
|
finish = pgl.BezierCurve2D(
|
||||||
|
pgl.Point3Array([(-0.465217, 0.00434783, 1),(-0.310145, 0.0826087, 1),(-0.324638, 0.456522, 1),(-0.408696, 0.669565, 1)]) ,
|
||||||
|
)
|
||||||
|
finish.name = "finish"
|
||||||
|
treepath2 = pgl.NurbsCurve2D(
|
||||||
|
ctrlPointList = pgl.Point3Array([(-0.00917746, 0.0133432, 1),(0.72348, 1.57179, 1),(3.10364, 2.97222, 1),(3.50129, 4.69656, 1),(3.82637, 6.13593, 1)]) ,
|
||||||
|
)
|
||||||
|
treepath2.name = "treepath2"
|
||||||
|
panel_0 = ({'active': True, 'visible': True, 'name': 'Panel 1'},[('Curve2D',path),('Curve2D',section),('Function',leafwidth),('Curve2D',treepath),('Curve2D',finish),('Curve2D',treepath2)])
|
||||||
|
parameterset = [panel_0,]
|
||||||
|
context["__functions__"] = [('leafwidth',leafwidth),]
|
||||||
|
context["__curves__"] = [('path',path),('section',section),('treepath',treepath),('finish',finish),('treepath2',treepath2),]
|
||||||
|
context["__parameterset__"] = parameterset
|
||||||
|
context["path"] = path
|
||||||
|
context["section"] = section
|
||||||
|
context["leafwidth"] = pgl.QuantisedFunction(leafwidth)
|
||||||
|
context["treepath"] = treepath
|
||||||
|
context["finish"] = finish
|
||||||
|
context["treepath2"] = treepath2
|
@ -1,31 +1,30 @@
|
|||||||
import random
|
import random
|
||||||
a = 50
|
a = 50
|
||||||
length = 0.75
|
|
||||||
dl = 0.01
|
|
||||||
globalwidth = 0.5
|
|
||||||
degree = 70
|
|
||||||
def Start():
|
def Start():
|
||||||
#random.seed(150)
|
#random.seed(150)
|
||||||
pass
|
pass
|
||||||
|
|
||||||
Axiom: SetGuide(treepath,90)_(1)@GsG(0.5)A(1,0.30)
|
Axiom: _(0.3)@GsG(0.5)A(1,1.0)
|
||||||
derivation length: 100
|
derivation length: 50
|
||||||
production:
|
production:
|
||||||
A(x,k) :
|
A(x,k) :
|
||||||
if x%7 == 0:
|
if x >= a-20:
|
||||||
produce /(96)F(6,1-k/5)A(x+1,k+0.1)
|
produce [-(a-x)F(1,0.05+0.25/k)C(1,k)]/(75)F(0.7,0.05+0.25/k)A(x+1,k+0.1)
|
||||||
elif x <= 35:
|
elif x <= 5:
|
||||||
produce /(degree)F(0.7,1-k/5)[SetGuide(treepath2,8)_(0.3)&(90)-(60)B(1,1.0)]A(x+1,k+0.1)
|
produce F(0.7,0.05+0.25/k)A(x+1,k+0.1)
|
||||||
|
else:
|
||||||
|
produce[-(30)F(1,0.05+0.25/k)B(1,k)]/(75)F(0.5,0.05+0.25/k)A(x+1,k+0.1)
|
||||||
B(x,k):
|
B(x,k):
|
||||||
r = random.random()
|
if x <= 5:
|
||||||
if x <= 20:
|
r1 = random.random()
|
||||||
produce F(0.8,0.05+0.25/k)[/(r*500)+(20)_(0.02)F(1)C(1,1.0)]B(x+1,k+1)
|
r2 = random.random()
|
||||||
|
produce [^(r1*50)F(1,0.05+0.25/k)-(20);Leaf(1)][&(r2*50)F(1,0.05+0.25/k)-(20);Leaf(1)]F(1,0.05+0.25/k)[-(20);Leaf(1)]B(x+1,k+1)
|
||||||
C(x,k):
|
C(x,k):
|
||||||
r = random.random()
|
if x <= 5:
|
||||||
if x <= 10:
|
r1 = random.random()
|
||||||
produce F(0.6)C(x+1,k+1)
|
r2 = random.random()
|
||||||
|
produce [^(r1*50)F(1,0.05+0.25/k)-(20);Leaf(1)]F(1,0.05+0.25/k)[-(20);Leaf(1)]C(x+1,k+1)
|
||||||
Leaf(x):
|
Leaf(x):
|
||||||
produce Sweep(path,section,length,dl,globalwidth,leafwidth)
|
produce ~l(1)
|
||||||
interpretation:
|
interpretation:
|
||||||
endlsystem
|
endlsystem
|
2
sadsad.txt
Normal file
2
sadsad.txt
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
http://www.danubeparks.org/files/1903_BlackPoplarMonography.pdf?fbclid=IwAR0tYSylgoFSudPO0EVTCmurQyXj8SO4uI2vLa14_NFRo0hcCXmjW2vKNIQ
|
||||||
|
http://www.hrpub.org/download/20160130/UJPS2-10305549.pdf
|
BIN
statystyka-1.docx
Normal file
BIN
statystyka-1.docx
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user