簡化您的工作流程:搜尋 miniwebtool。
添加插件
主頁 > 雜項 > 通用工具 > L-System分形產生器
 

L-System分形產生器

利用林氏系統(L-system)規則產生美麗的分形。選擇經典的預設組合(科赫雪花、謝爾賓斯基、龍形曲線、分形樹、植物)或編寫您自己的公理、產生規則與海龜旋轉角度 — 本工具會擴展字串、引導海龜移動,並渲染出具有深度著色與動畫繪製效果的 SVG。

L-System分形產生器
嘗試預設值:
使用大寫 FG 表示繪製筆畫,並使用任何其他字母 (X, Y, A, B…) 表示不繪製的重寫符號。註解以 # 開頭。
F 向前繪製 f 移動 (不繪製) + 向左轉 - 向右轉 | 翻轉 180° [ 儲存狀態 ] 恢復狀態
朝向 = 正東 (曲線),90° = 正北 (樹木與植物向上生長)。疊代次數上限為 8 — 字串長度會迅速暴增。
伺服器端字串重寫 + 海龜繪圖 → 可縮放 SVG。

Embed L-System分形產生器 Widget

L-System分形產生器

**L-System分形產生器**將 Lindenmayer 系統語法轉化為美麗、具備深度顏色且有動畫效果的 SVG 分形。選擇一個預設值 — 科赫雪花、謝爾賓斯基三角形、海威龍形曲線、希爾伯特曲線、分形植物、樹木或灌木 — 或者編寫您自己的公理與產生規則,並看著字串爆炸般地成長為自相似的形狀。此工具在伺服器端擴展字串,引導虛擬海龜讀取每個符號,並將結果渲染為可縮放的 SVG,您可以下載、編輯或貼到您的簡報中。

什麼是 L-System?

Lindenmayer 系統(簡稱 L-System)是一種並行字串重寫語法,由匈牙利生物學家 Aristid Lindenmayer 於 1968 年發明,旨在對植物和微生物的生長進行數學建模。它包含三個要素:**公理**(由一個或多個符號組成的起始字串)、一個或多個**產生規則**(每條規則將單個符號映射到取代字串)以及**解釋**(在這裡是海龜繪圖 — 一隻服從前進、左轉、右轉、儲存和恢復指令的虛擬畫筆)。

要執行該系統,您從公理開始並並行套用規則 — 所有符號都會同時被取代,然後開始下一次疊代。經過幾次疊代後,字串會變得非常龐大,且呈現出明顯的分形特徵。當您將該字串交給海龜時,自相似的圖形就會顯現出來。

海龜符號一覽

符號海龜的動作
F, G向前移動一步並繪製一條線。
f向前移動一步但不繪製。
+向左轉您指定的角度(例如 25°、60°、90°)。
-向右轉該角度。
|將朝向翻轉 180°。
[將目前的位置和朝向推入堆疊中 — 用於開始一個分支。
]從堆疊中彈出位置和朝向 — 返回到分支點。
X, Y, A, …其他字母:純重寫符號。它們會影響下一次疊代,但本身不繪製任何內容。

是什麼讓這個 L-System分形產生器 與眾不同

逐筆畫動畫繪製 使用 SVG stroke-dashoffset 動畫觀察每個分支層級依序出現。首先繪製樹幹,然後是主要分支,接著是細枝 — 完美映射了重寫的遞迴結構。您可以隨時點擊「重新播放」。
深度感知著色 每個筆畫都清楚自己的括號深度。植物預設值使用棕色到綠色再到藍色的調色盤,使樹幹看起來非常逼真;曲線則使用靛藍到青色的漸層。可選的線條漸細功能可以讓分支在末端變細。
疊代追蹤 準確查看字串在每次疊代中如何增長。追蹤面板顯示了字串長度(通常每步增長 3-5 倍)以及每個中間字串的前 120 個字元 — 讓產生過程變得清晰可見,不再隱藏。
十二種教學級預設值 科赫雪花、科赫正方形、謝爾賓斯基三角形與箭頭曲線、海威龍形曲線、希爾伯特曲線、萊維 C 曲線、水晶、分形植物、樹木、灌木和海藻 — 每一個都展示了不同的 L-System 機制。
產生規則卡片 每條規則都顯示為一張卡片,包含符號、箭頭和取代字串。公理有自己專屬的琥珀色卡片。您可以一目了然地閱讀語法,而不用從文字區域中進行反向工程。
SVG 與 PNG 匯出 下載乾淨、無動畫的 SVG 以用於印刷和簡報,或下載 2 倍解析度的 PNG 以用於聊天和社群媒體。將 L-System 定義(公理、規則、角度、疊代次數)複製為純文字,以便與同學分享。

重寫是如何運作的(範例說明)

以公理為 F、規則為 F → F+F-F-F+F 且海龜角度設定為 90° 的科赫曲線為例。以下是字串的演變過程:

  • 疊代 0: F — 1 個字元。
  • 疊代 1: F+F-F-F+F — 9 個字元。單個 F 變成了一個方形凸起。
  • 疊代 2: F+F-F-F+F + F+F-F-F+F - F+F-F-F+F - F+F-F-F+F + F+F-F-F+F — 49 個字元。疊代 1 中的每個 F 本身都被替換成了 F+F-F-F+F。
  • 疊代 3: 249 個字元。疊代 4:1,249 個字元。疊代 5:6,249 個字元。

這種增長是幾何級數的:每次疊代都會將長度乘以 5(取代字串的長度)。經過 5 次疊代後,海龜有數千個指令需要執行,其結果是清晰可辨的科赫分形 — 一條類似海岸線的曲線,其分形維度為 log(4)/log(3) ≈ 1.26。

括號如何構建植物

如果沒有括號符號 [ 和 ],每個 L-System 都會是一條單一且不間斷的曲線。括號解鎖了分支功能:當海龜遇到 [ 時,它會將目前的位置和朝向推入堆疊中,在括號內繪製分支,然後在遇到 ] 時彈出恢復到原來的位置。規則 F → F[+F][-F]F 代表「每個前進筆畫都會變成一個筆畫、一個左分支、一個右分支和一個延續筆畫」— 這就是製作樹木的配方。

分形植物預設值完美地展示了這一點。它的規則 X = F+[[X]-X]-F[-FX]+X 使用雙重括號來編碼分支中的分支。經過 5 次疊代後,生成的字串包含 11,000 多個符號和約 1,000 多對括號 — 海龜盡職地沿途執行儲存與恢復,繪製出一株蕨類植物。

L-System 應用於何處

  • 程序化植物生成: SpeedTree 和 Houdini 生態系統使用 L-System(以及它們的隨機、參數化和上下文相關擴充)為電影和遊戲種植森林、叢林和農田。
  • 建築與城市建模: 源自 L-System 的基於規則的語法可以生成建築物外牆、街道網絡以及整個程序化城市。
  • 生物學與形態學: 最初的應用場景 — 模擬藻類細胞的發育、植物的分支以及珊瑚和水晶的結構。
  • 電腦圖學與 Demoscene 藝術: 複雜分形曲線的緊湊描述,檔案大小極小 — 一條 30 位元組的規則就能產生百萬像素的圖像。
  • 數學教育: 上下文無關並行語法的經典範例;從形式語言到分形幾何的直觀橋樑。
  • 生成音樂與編舞: 相同的重寫機制應用於樂句或舞蹈動作,能產生結構化且有機的創作。

設計您自己的 L-System

以下是一些始終能產生美觀分形的經驗法則:

  • 從規模小開始。 新規則執行三次疊代就足以看出結構。只有在確定形狀按照您期望的方式增長後,再增加次數。
  • 選擇能整除 360° 的角度(60°、72°、90°、120°)來繪製曲線。對於植物,18° 到 30° 之間的角度會產生看起來很自然的分支。
  • 使用非繪製符號(如 X)來控制結構。規則 F → FF 只是將每個筆畫加倍,但以 X 為公理的 X → F+X[-X] 則會創建一個分支形狀 — F 繪製可見的線條,X 控制分支模式。
  • 保持括號平衡。 每個 [ 必須有一個匹配的 ]。雖然此工具在繪製時容忍不平衡的括號,但您會遇到意料之外的跳躍。
  • 注意增長率。 If 您的規則將 F 替換為五個符號,則每次疊代都會將字串乘以 5。F → FF+F-F+F 的六次疊代就已經超出了大多數渲染器的負荷。

隨機與參數化擴充

此工具中的確定性 L-System 是最簡單的變體。現實世界中的植物建模者使用更豐富的語法:**隨機 L-System**(stochastic L-systems)為同一個符號的多條規則分配機率,因此每株植物都略有不同。**參數化 L-System**(parametric L-systems)將數值(分支的長度或厚度)附加到符號上,並允許規則讀取和修改它們。**上下文相關 L-System**(context-sensitive L-systems)允許規則僅在其符號具有特定鄰居時才觸發。這些擴充將靜態分形轉化為一個可以生長、反應和老化的系統。

常見誤解

  • 「疊代次數越多總是看起來越好」: 錯誤。超過五或六次疊代後,筆畫會重疊並失去細節。最佳疊代深度取決於規則和顯示解析度。
  • 「L-System 只能繪製植物」: 它們可以描述任何自相似曲線。希爾伯特曲線、龍形曲線、謝爾賓斯基地毯 — 全都是 L-System。
  • 「必須使用括號」: 不需要。像科赫、龍形和萊維等單筆畫曲線不需要使用括號。只有當您需要分支時才需要括號。
  • 「所有分形都具有相同的分形維度」: 錯誤。科赫的維度約為 1.26,龍形的維度是 2,謝爾賓斯基的維度約為 1.58,希爾伯特曲線的維度接近 2 — 每條規則都有自己的維度,由字串增長速度與海龜移動距離決定。

常見問題

什麼是 L-System?

Lindenmayer 系統(簡稱 L-System)是一種並行字串重寫語法,由生物學家 Aristid Lindenmayer 於 1968 年發明,用於模擬植物生長。它從一個公理(短字串)開始,重複套用將單個符號替換為更長字串的產生規則,然後將最終字串解釋為海龜繪圖指令。其結果是一個自相似的分形。

這些符號代表什麼意思?

F 和 G 是繪製筆畫(海龜向前移動並繪製一條線)。f 是靜音移動(向前移動但不繪製)。+ 將海龜依您指定的角度向左轉,- 向右轉,而 | 則翻轉 180 度。[ 將海龜的位置和朝向推入堆疊中,] 則將其彈出恢復。所有其他字母(X、Y、A、B 等)均為僅重寫符號 — 它們會影響下一次疊代,但不會進行繪製。

為什麼 L-System 擅長模擬植物?

括號符號 [ ] 讓海龜能夠記住並恢復其位置,因此單個規則就能實現分支。像 F = F[+F][-F]F 這樣的規則可以繪製一根莖,向兩個方向分支,然後繼續生長 — 這正是植物生長的方式。透過稍微不同的規則和角度,同一個引擎就能生成蕨類、灌木、樹木、海藻和根系。

規則中的 F 和 X 有什麼區別?

F 既是一個繪製符號(當海龜看到 F時會繪製一條線)又是一個重寫符號(規則可以在左側匹配 F)。X 則是一個純重寫符號 — 當海龜在繪製過程中看到 X 時,它什麼都不做。當您想要一個能控制結構但又不被繪製出來的符號時,X 就非常有用。

我應該使用多少次疊代?

對於大多數預設值, 4-6 次疊代就能產生可辨識的分形。字串長度呈指數級增長,因此從 6 次增加到 7 次疊代可能會使工作量增加 3-5 倍。此工具將疊代次數限制為 8 次,重寫後的字串限制為 250,000 個字元,以保持渲染的即時響應。

什麼控制了基於深度的顏色?

每個 [ 都會將海龜推入更深的括號層級;每個 ] 則會彈出恢復。所達到的最深層級即為最大深度。選擇「深度漸層」可以根據每個筆畫的括號層級來著色 — 這非常適合植物,因為樹幹和分支自然會處於不同的深度。

起始角度是如何運作的?

起始角度是海龜在第一步時所面對的方向。0° 表示正東(向右)— 供大多數曲線使用。90° 表示正北(向上)— 供植物和樹木使用,以便它們朝著畫布頂部生長。嘗試更改任何預設值上的起始角度以旋轉整個圖形。

我可以下載這個分形嗎?

可以。您可以下載為 SVG 以在印刷、簡報和雷射切割機中進行清晰的縮放,或者下載為 PNG 以在聊天和社群媒體上分享。「複製」按鈕可複製完整的 L-System 定義(公理、規則、角度、疊代次數),以便您將其貼到筆記或其他工具中。

最大複雜度是多少?

最多支援 8 次重寫疊代、擴展字串中 250,000 個字元、60,000 個繪製線段以及 12 條產生規則。這些限制使 SVG 足夠輕量,從而能夠流暢地渲染和下載。對於更大的網格,請考慮使用桌上型 L-System 工具,例如 cgkit 或 Houdini。

如果我的括號不平衡會怎麼樣?

不平衡的 ](沒有匹配的 [)會被默默忽略 — 海龜會留在原地。不平衡的 [(沒有閉合的 ])意味著海龜永遠不會彈出恢復,因此它會繼續向前繪製而永遠不會返回分支點。此工具總是會完成繪製,但結果可能與您的預期不符。請為每個 [ 匹配一個 ]。

什麼是海龜繪圖解釋器?

它是一個服從來自字串移動指令的虛擬畫筆。這個名字源於 Logo 程式語言。海龜有一個位置和一個朝向(它面對的方向)。每個 F 都會使其在目前朝向上面前移動一步;+ 和 - 會旋轉朝向。海龜正是將平面字串轉化為 2D 圖形的關鍵。

為什麼我的分形看起來被壓扁了?

此工具會自動將圖形填滿至畫布,同時保持長寬比,因此圖形會縮放但不會變形。如果分形在視覺上看起來不平衡,那可能是規則本身的原因 — 例如,龍形曲線寬度大於高度,這是正確的。增加疊代次數以查看形狀的收斂。

引用此內容、頁面或工具為:

"L-System分形產生器" 於 https://MiniWebtool.com/zh-tw/l-system分形產生器/,來自 MiniWebtool,https://MiniWebtool.com/

由 MiniWebtool 團隊製作。更新日期:2026-05-20

其他相關工具:

通用工具:

常用工具:

隨機撲克牌產生器分數計算機真心話大冒險產生器斜邊計算機圖片分割器羅馬數字轉換器百分比增長率計算機標準偏差計算機 - 高精度百分比增加計算機磅轉公斤轉換器比例計算機AI內容檢測器相對標準偏差計算機圓計算機kg到lbs轉換器毛利率計算機MAC地址查找kpa到psi轉換器隨機餐點產生器🎮 遊戲靈敏度轉換器太陽、月亮與上升星座計算機 🌞🌙✨年齡計算機最簡分數計算機百分比減少計算機🌡️ 體感溫度計算機百分比折扣計算機質數分解計算機分數百分比轉換器百分比變化計算機迷宮產生器反向文字隨機信用卡生成器隨機名稱生成器分數到小數計算機凱薩密碼工具ANC計算機克到磅轉換器校正鈣計算機影片壓縮器影片轉圖片擷取器商和餘數計算機百分比計算機不規則多邊形面積計算機GUID / UUID 生成器對數計算機坡度與傾斜度計算機線性迴歸計算機調整影片速度百分比誤差計算機HEX計算機CAGR計算機二次公式計算機年份天數計算機 - 今天是今年的第幾天Instagram用戶ID查詢比率與百分比計算機加價計算機Bar to PSI 轉換器📅 日期計算機樂透號碼生成器查找並替換文字psi到kpa轉換器隨機錦標賽對陣生成器簡單利息計算機小字體生成器 ⁽ᶜᵒᵖʸ ⁿ ᵖᵃˢᵗᵉ⁾積分計算機我的幸運數字是什麼直角三角形計算機音訊分割器SRT時間偏移複利計算機定期存款計算機小數到分數計算機平均值計算機按字母順序排序星期幾計算機兩點間距離計算機隨機顏色生成器文字重複工具⏱️ 小時計算機橢圓 周長計算機OPS計算機隨機選擇器因子計算機ERA計算機最小公倍數計算機畢達哥拉斯定理計算機磅到克轉換器隨機日期生成器樓梯計算機總和計算機出生星期計算機隨機字母生成器燃油費用計算機隨機時間生成器填字遊戲製作器合併影片SRT轉換為TXT工具隨機名字選擇器剪刀石頭布產生器跑步配速計算機百分比到ppm轉換器🌐 時區轉換器複數計算機文件大小轉換器隨機物品生成器隨機數學題產生器組合計算機多分數計算機演講時間計算機汽車貸款計算機FPS 轉換器PSI 轉 Bar 轉換器可整除測試計算機刪除線文字產生器體積轉換器相關係數計算器賓果卡生成器YouTube頻道統計Zalgo文本生成器年金現值計算機天使數字計算機隨機英文單字產生器階乘計算機圖片打碼工具排序數字鋼筋計算機壓力轉換器步數距離計算機cpm計算機二進製計算機中位數計算機散佈圖製作器棒球打擊率計算機純利潤計算機隨機生日生成器隨機貓狗名字產生器HEX轉換器倒立文本產生器小數到百分比轉換器投球命中率計算機AI標點符號添加器常規時間到小數時間轉換器模計算機土星回歸計算機斜率計算機凱利公式計算機文本格式化工具科學記數法計算機行數統計工具體型計算機弧長計算機預期壽命計算機汽車折舊計算機分數簡化橢圓面積計算機比率計算機磚塊與砂漿計算機log-base-2計算機SRT合併工具質數檢查器Facebook用戶ID查詢WAR計算機⏱️ 倒數計時器愛情兼容性計算機條碼產生器立方根計算機加權成績計算機騎行速度計算機卡路里消耗計算機隨機字符串生成器MAC地址產生器卡諾圖 (K-Map) 求解器旋轉影片股息收益率計算機emi計算機功率轉換器工時計算機歐姆定律計算機英尺英寸轉換為厘米質數列表黃金比例計算機ppm到百分比轉換器克到盎司轉換器密度計算機速度轉換器💧 露點計算機游泳配速計算機破產風險計算機移除標點符號線上工具姓名靈數計算機四捨五入計算機每局被上壘率 WHIP 計算機為影片新增浮水印APR 計算機十六進位轉CMYK轉換器正方形計算機線規計算機農曆轉換器Base64解碼器股票平均成本計算機前照燈光束距離計算機引擎壓縮比計算機輪胎胎紋磨損計算機拖車舌重計算機車輛重量分佈計算機旅行費用分攤計算機剎車距離計算機工傷賠償計算機遺產分配計算機商標分類查詢計算機專利申請費計算機銷售稅關聯檢查器刑期減免計算機訴訟時效計算機Airbnb 定價優化工具室友房租分攤計算機Section 8 租金計算機BRRRR 方法計算機現金對現金報酬率計算機租金收益率計算機1031 交換計算機財富成長視覺化工具午餐花費計算機健身房 vs 居家健身花費計算機咖啡花費計算機遠端工作省錢計算機副業ROI計算機訂閱費用追蹤器SaaS定價計算機自由接案專案報價計算機煙燻木材搭配指南發酵時間計算機醃製時間計算機飲食限制食譜篩選器香料替代查找器咖啡因半衰期追蹤器標準杯計算機葡萄酒搭配建議器攀岩難度等級轉換器自行車齒輪比計算機釣魚結強度計算機瑜伽體式保持計時器游泳SWOLF計算機跑步成績預測計算機拳擊出拳力量計算機橄欖球得分計算機板球得分率計算機足球 xG預期進球計算機網球計分器Wells評分計算機 (DVT/PE)格拉斯哥昏迷指數計算機阿普加評分計算機FFMI計算機庫珀12分鐘跑步計算機一英里步行測試Rockport計算機瘦體重力量計算器碳水化合物胰島素比例計算機胰島素敏感係數計算機希伯來曆轉換器伊斯蘭曆轉換器跨文化年齡計算機多久以前計算機還有多久倒數計算機日期模式產生器中間日期計算機日期加上工作日工作日計算機詞頻分析器句子長度變異分析器海明威風格可讀性編輯器發音音標轉換器維吉尼亞密碼工具埃特巴什密碼工具ROT13編碼解碼器EXIF 資料檢視與移除工具豬拉丁文翻譯器倒推首字母縮寫產生器首字母縮寫產生器全字母句檢查器漏字文檢測器圖片轉SVG描摹器圖片轉 ASCII 藝術轉換器JSON Schema 產生器TypeScript 線上演練場Less 到 CSS 編譯器SCSS轉CSS編譯器SVG 轉 React/JSX 轉換器查詢字串產生器URL解析器UUID驗證和解碼器HTTP狀態碼參考cURL指令建構器謝爾賓斯基三角形產生器3D曲面繪圖器極座標方程繪圖器茱莉亞集合生成器曼德博集合探索器L-System分形產生器Delaunay 三角剖分生成器Voronoi 圖生成器萬花尺圖案產生器鑲嵌圖案產生器六標準差製程能力計算機柏拉圖生成器NPS淨推薦值計算機留存率同期群計算機客戶流失率計算機客戶獲取成本CAC計算機顧客終身價值 CLV 計算機轉換率計算機A/B測試樣本數計算機A/B測試顯著性計算機透鏡方程式計算機導線磁場計算機電場計算機庫侖定律計算機斯涅爾定律計算機慣性矩計算機角速度計算機向心力計算機單擺週期計算機彈簧勁度係數計算機都卜勒效應計算機索提諾比率計算機特雷諾比率計算機股票貝塔係數計算器通膨保值美國國債 TIPS 計算機房貸重新攤還計算機遠期利率計算機債券存續期計算機(麥考利與修正)債券凸性計算機固定指數年金計算機變額年金計算機反向抵押貸款計算機年金支付計算機日本算盤模擬器俄羅斯農民乘法吠陀數學技巧計算機古埃及乘法計算機羅馬數字數學求解器心算訓練器九九乘法表測驗進位與借位視覺化工具數的合成分解生成器硬幣應用題求解器距離速度時間三角形計算機工作效率問題求解器混合問題求解器年齡問題求解器火車相遇問題求解器補水計算機配速卡路里計算機藥物劑量計算機酒精卡路里計算機身體重塑計算機隨機辯論題目產生器隨機聖經經文產生器隨機段落產生器隨機英文句子生成器礫石、砂和表土計算機鋼材重量計算機螺栓扭矩計算機管道流量計算機樑荷載計算機美元換黃金轉換器選擇權機率計算機股票分割計算機員工持股計畫計算機發票滯納金計算機自由工作者時薪計算機租賃與購買比較計算機進階小費分攤計算機行李清單產生器時差反應計算機旅行預算計算機飛行距離計算機熱損失計算機發電成本計算機用水量計算機家電用電成本計算機家庭能源稽核計算機太陽能投資報酬率計算機太陽能板計算機堆肥cn比計算機草坪肥料計算機霜凍日期計算機高床種植箱土壤計算機NPK肥料計算機種子發芽率計算機視訊位元率計算機音樂調性轉換器音樂BPM節拍點擊器照片檔案大小估計計算機百萬畫素到列印尺寸計算機裁切係數計算機曝光三角計算機車輛拖曳能力計算機汽車租賃計算機0–60與四分之一英里計算機電動車充電時間計算機電動汽車續航計算機3D距離計算機環面計算機圓台計算機正多邊形計算機圓錐曲線識別器雙曲線計算機長除法計算機Twitter/X 字元計數機YouTube留言抽選器YouTube標籤提取器YouTube縮圖下載器YouTube收益估算器隨機RPG角色生成器