From a12ffbec29436fa35d0784361c9102f0b7f6112c Mon Sep 17 00:00:00 2001 From: Victor Giers Date: Wed, 13 May 2026 13:31:22 +0200 Subject: [PATCH] auto-git: [change] src/spline-corridor/spline-repeaters.ts --- src/spline-corridor/spline-repeaters.ts | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/spline-corridor/spline-repeaters.ts b/src/spline-corridor/spline-repeaters.ts index 1eff1921..b70a2bbc 100644 --- a/src/spline-corridor/spline-repeaters.ts +++ b/src/spline-corridor/spline-repeaters.ts @@ -16,6 +16,10 @@ import { BUNDLED_SPLINE_CORRIDOR_ASSET_REGISTRY, type BundledSplineCorridorAsset } from "./bundled-spline-corridor-assets"; +import { + isDistanceInSplineCorridorClipIntervals, + type SplineCorridorPathClipInterval +} from "./spline-corridor-clips"; export interface SplineRepeaterPathPointLike { id?: string; @@ -149,6 +153,7 @@ function resolvePlacementOffset(repeater: ScenePathRepeater): number { export function deriveSplineRepeaterInstances(options: { path: SplineRepeaterPathLike; terrains?: readonly Terrain[]; + clipIntervals?: readonly SplineCorridorPathClipInterval[]; }): SplineRepeaterInstance[] { const { path } = options; const terrains = options.terrains ?? []; @@ -208,6 +213,15 @@ export function deriveSplineRepeaterInstances(options: { break; } + if ( + isDistanceInSplineCorridorClipIntervals( + distance, + options.clipIntervals + ) + ) { + continue; + } + const progress = distance / resolvedPath.totalLength; const center = sampleResolvedScenePathPosition(resolvedPath, progress); const tangent = normalizeHorizontal(