Рисование цветка

Меняя значения переменных, можно получать различные цветки.

Смена цвета лепестков чередуется. Для этого используются флаги. Начальное значение флагов определяется в зависимости от значений переменных $r, $g, $b.

сброс
толщина_пера 10
$x = 200 # координаты центра цветка
$y = 200 # ...
$a = 50  # нач.угол для первого лепестка
$l = 3   # влияет на длину лепестка
$r = 125  # цвет
$g = 0 # ...
$b = 125  # ...
 
если $r < 128 { # установка флагов
  $fr = 1
} иначе {
  $fr = 0
}
если $g < 128 {
  $fg = 1
} иначе {
  $fg = 0
}
если $b < 128 {
  $fb = 1
} иначе {
  $fb = 0
}
 
выучи лепесток { # на самом деле поллепестка
  повтори 36 {
    направо 3
    вперёд $l
  }
}
 
выучи цвет $d { 
# значение $d влияет на контраст, 
# не должено быть больше 128
  если $fr == 1 {
    $r = $r + $d
    $fr = 0
  } иначе {
    $r = $r - $d
    $fr = 1
  }
  если $fg == 1 {
    $g = $g + $d
    $fg = 0
  } иначе {
    $g = $g - $d
    $fg = 1
  }
  если $fb == 1 {
    $b = $b + $d
    $fb = 0
  } иначе {
    $b = $b - $d
    $fb = 1
  }
  цвет_пера $r,$g,$b
}
 
#################################
повтори 6 {
  цвет 80
  иди $x,$y
  нпр $a
  лепесток
  нпр $a+180
  лепесток 
  $a = $a+60
}
 
цвет 120
нпр 0
$x = $x+$l*3
$y = $y-$l-1
иди $x,$y
толщина_пера $l*6
повтори 72 {
  вперёд 1
  налево 5
}
 
иди 0,0

flower.png

Создано