FRENAR
N°06 · Canvas 2D · توليدي

النظام-L

قواعد رسمية تتحول إلى أشجار وسراخس وكسوريات. ثلاث قواعد إعادة كتابة تكفي لتوليد تعقيد شكلي لا نهاية له.

اختر نموذجًا · اضبط الزاوية والعمق
// L-System — réécriture + interprétation turtle
const presets = [
  { axiom: 'F', rules: { F: 'F[-F]F[+F]F' }, angle: 25 },
  { axiom: 'X', rules: { X: 'F+[[X]-X]-F[-FX]+X', F: 'FF' }, angle: 25 },
  ...
];

function generate(axiom, rules, iterations) {
  let str = axiom;
  for (let i = 0; i < iterations; i++) {
    str = str.split('').map(c => rules[c] || c).join('');
  }
  return str;
}

function turtle(str, len, angle) {
  const stack = [];
  str.split('').forEach(c => {
    if (c === 'F') { ctx.lineTo(x += Math.cos(a)*len, y += Math.sin(a)*len); }
    else if (c === '+') a -= angle;
    else if (c === '-') a += angle;
    else if (c === '[') stack.push({x,y,a});
    else if (c === ']') ({x,y,a} = stack.pop());
  });
}
جرّب بنفسك

عند أي عمق يصبح الشجر غير قابل للتمييز بصريًا عن نبات حقيقي؟ جرّب تغيير الزاوية 5 درجات فقط — كيف يتغير الشكل العام؟

ولّد أشكالك العضوية الخاصة باستخدام أنظمة-L

احجز جلسة