Back to Node List

Path Array

path_array

Place objects along a bezier path with various distribution modes

Reviewed
Guide available
The node name and summary are available in English. Port, parameter, and article details are currently shown in Japanese.

Input Ports

NameTypeDescription
パス
path
Path
Required
オブジェクトを配置するベジェパス
スタンプ
stamp
Image
各点に配置する画像(未接続時は1pxドット)

Output Ports

NameTypeDescription
画像
output
Image
生成された配列画像

Parameters

NameTypeDefaultRangeDescription / Options
width
Int
641–1024

キャンバスの幅(ピクセル)

高さ
height
Int
641–1024

キャンバスの高さ(ピクセル)

対象サブパス
sub_path_scope
Enum
All

すべてのサブパスに適用するか、1 本だけに適用するかを選びます

  • すべてAll
    すべてのサブパスに同じ設定で適用します
  • 個別Single
    選んだ 1 本のサブパスだけに適用します
使うサブパス
sub_path_index
Int
00–255

個別モード時に使うサブパスを選びます

count
Int
50–128

各サブパスに配置するオブジェクトの数。0なら何も配置しません

配置モード
mode
Enum
Equal

オブジェクト配置の分布モード

  • 等間隔Equal
    パスに沿って等間隔で配置
  • 順次配置Fill
    始点から順次配置(ラインを描くように)
  • ランダムRandom
    パス上のランダムな位置に配置
  • 分散Scatter
    パスライン周辺にランダムに分散配置
シード
seed
Int
00–99999

ランダム/分散モード用の乱数シード

分散幅
spread
Int
40–64

パスからの最大分散距離(分散モードのみ)

分散側
scatter_side
Enum
Both

分散モードでどちら側に散らすか

  • 両側Both
    パスの両側に分散配置
  • 内側Inside
    閉じたサブパスの内側にだけ分散配置
  • 外側Outside
    閉じたサブパスの外側にだけ分散配置
順次方向
fill_direction
Enum
Forward

順次配置モードで使う配置方向

  • 順方向Forward
    始点から終点へ向かって配置
  • 逆方向Reverse
    終点から始点へ向かって逆順配置
順次ステップ
fill_step
Int
11–64

順次配置モードで何ピクセルおきに配置するか

color
Color
[1,1,1,1]

ドットの色(スタンプ未接続時に使用)

ピクセルパーフェクト
pixel_perfect
Bool
false

ベジェサンプリングの代わりにラスタライズ済みピクセル位置を使用

PP モード
pp_mode
Enum
RemoveCorner

ピクセルパーフェクト補正でどちらの冗長ピクセルを削除するか

  • 対角優先Diagonal
    水平ステップを削除してより対角的なラインに
  • 直線優先Cardinal
    垂直ステップを削除してより水平/垂直的なラインに
  • 角削除(対称)RemoveCorner
    常に角ピクセルBを削除(ミラー対称保証)
  • 角保持(対称)KeepCorner
    常に角ピクセルBを保持(ミラー対称保証)
閉パス外積モード
pp_closed_cross
Bool
false

閉じたサブパスに外積ベースの内/外エッジ削除を適用

閉パス削除側
pp_closed_side
Enum
Outer

閉パスのどちら側のエッジを削除するか

  • 内側Inner
    内側のエッジを削除
  • 外側Outer
    外側のエッジを削除

Overview

Places images (stamps) or dots along a path. Chains, button rows, street lamps, or clumps of grass—anything repeated along a line can be built in four modes: evenly spaced, sequential, random, or scattered.

  • Version: 2
  • Generator: yes (is_generator: true)

Usage tips

  • Its main strength is a small image connected to stamp, such as a rivet, grass clump, or stone. With no connection, it places 1px dots.
  • Choose by use: chain or decoration → Equal; line-drawing effect → Fill; natural distribution such as grass or stones → Scatter, with variants from seed.
  • Scatter + a closed path + scatter_side: Inside scatters within a shape, such as flowers inside a grass patch.
  • For stamp variation, layer several PathArray nodes with different seed values using blend.

Common pitfalls

  • Stamps are clipped: placement points lie on the path, but the canvas still needs room for stamp dimensions. Check the rasterization canvas and padding-like margins.
  • Start and end overlap on a closed path: Equal avoids this automatically. If they still appear to overlap, count is too high and spacing is too tight.
  • Inside/Outside has no effect: an open subpath intentionally behaves like Both. Close the path.
  • Temporarily place nothing: count = 0 is a valid empty result and can be used as a procedural on/off switch.
  • No valid Inside/Outside candidate exists: that placement is skipped instead of silently returning to the path, and scatter_side reports a warning.

Placement modes

Mode Description
Equal Divide the path evenly. Automatically avoids duplicate start/end points on a closed path
Fill Use rasterized pixels in order. Set direction with fill_direction and skipping interval with fill_step
Random Place at random path positions, reproducible by seed
Scatter Distribute randomly around the path. Control deviation with spread and side with scatter_side: both / inside / outside. On open subpaths, Inside / Outside behave as Both

Pixel-perfect mode

  • On: place relative to the pixel-coordinate sequence rasterized by rasterize_subpath. The same PP correction options as Path Stroke are available: diagonal/cardinal priority, corner removal/preservation, closed-path cross product, and removal side.
  • Off: adaptively flatten the mathematical Bézier curve and place by total arc length. Equal uses visually equal distances and only the final placement is rounded to pixels.
  • Random samples uniformly along arc length. Scatter uses a disk whose radius is spread, so actual displacement never exceeds the configured distance.

Handling subpaths

  • Sub-path Scope = All
    • Place count items on each subpath using the same rule.
  • Sub-path Scope = Single
    • Place items only on the specified subpath.
  • The upper limit of sub_path_index updates in the UI to match the number of input subpaths.

Examples

Even placement

[BezierPath] → path → [PathArray(mode:Equal, count:10)] → [Preview]

Random scattering

[MultiPath] → path → [PathArray(mode:Scatter, count:20, spread:8, seed:42)] → [Preview]

Pixel-perfect placement

[BezierPath] → path → [PathArray(pixel_perfect:ON, pp_mode:RemoveCorner)] → [Preview]

Placing on only one path

[MultiPath] → path → [PathArray(sub_path_scope:Single, sub_path_index:1)] → [Preview]

Related nodes

  • mask_scatter — scatter in a mask area rather than along a path
  • path_sample — extract numeric coordinates on a path instead of placing objects
  • region_scatter — scatter with the region system
  • path_transform — adjust a path before placement
Back to Node List