Shortest Path
透過點的 Distribution 找到起點和終點之間的最短路徑來生成路徑。
演算法透過以下方式計算最短路徑:
- 從 Input Path 的給定位置開始。
- 在 Distribution 中搜尋鄰近點。預設情況下是最接近的 10 個點,但也可以基於 Search Distance。
- 選擇最接近終點位置的鄰近點並移動到它。
- 循環步驟 2 和 3,直到路徑到達終點位置。

使用 Text Shape 生成多條最短路徑。
Input Shape - 連接一個 Shape 以從中生成起點和終點位置。
Count - 設定要生成的路徑數量。
Start Travel - 設定 Shortest Path 起點沿 Input Shape 的位置。如果 Count 大於 1,連接一個 Behaviour 以變化每條路徑的位置。
End Travel - Shortest Path 終點沿 Input Shape 的位置。如果 Count 大於 1,連接一個 Behaviour 以變化每條路徑的位置。
Use Search Radius - 預設情況下,使用最接近的 10 個點來計算最短路徑——勾選 Use Search Radius 後,可以使用 Search Radius 進行更精細的控制。
Search Radius - 設定搜尋「最短路徑下一步應行進到的點」的最大半徑。
Use Levels - 勾選時,確定使用 Input Shape 的哪個層級來建立起點/終點位置。
Level Mode - 選擇影響網格層級的哪個/哪些層次。
- Custom… - 手動設定 Custom Level。
- Text (Lines) - 與 Text Shape 一起使用,將影響每個行。
- Text (Words) - 與 Text Shape 一起使用,將影響每個單詞。
- Text (Characters) - 與 Text Shape 一起使用,將影響每個字元。
如果使用包含字串 TEXT 的 Text Shape 作為 Input Shape,Level Mode 可用於確定起點/終點位置從何處建立/建立到何處。例如,如果設為 Text (Characters),起點和終點必須都位於每個單獨字母(T、E、X 或 T)上,而如果設為 Text (Words),起點和終點可以沿整個單詞的任何位置生成。例如,起點可以位於第一個 T 上,而終點位於 X 上的某個位置。
Custom Level - 設定自訂層級。
Points Distribution - 選擇一個 Distribution 來為最短路徑演算法建立搜尋點。
Shortest Path 支援 Viewport 設定 中的 Draw Debug Information 選項,可用於預覽 Points Distribution 中的點。
- 建立一個 Ellipse。
- 將其 Radius 設為
200,200。 - 建立一個 Shortest Path。
- 連接 ellipse.id→shortestPath.inputShape。
- 將 Shortest Path 的 Count 設為
20。 - 右鍵按一下 Start Travel 屬性,選擇
Add Behaviour > Random。 - 將 Random 的 Maximum 設為
1。 - 變更 Shortest Path 上 Random Distribution 的 Seed 值。
可以使用 Mask Distribution 確保只有 Shape 內部的點才會被考慮用於最短路徑。