Baltor Get started

Gallery / Mesh algorithms

Centripetal Catmull-Rom spline

In your harnessMesh algorithmMIT

Interpolate a curve through control points with uniform, centripetal or chordal Catmull-Rom parameterization, open or closed. Use it for paths through waypoints, camera rails and track layouts.

Render of Centripetal Catmull-Rom spline
The render its check recorded in Godot 4.7.2, 256 by 256 pixels.

What it takes and gives

Entry points
catmull_rom_point, catmull_rom, build, main
Parameters
alpha, closed, samples_per_segment
Complexity
O(points * samples_per_segment)
Axes
+Y up, metres

Limits. Interpolating splines have only C1 continuity at the control points (curvature may jump). Coincident consecutive control points are separated by a tiny knot gap. Open ends use reflected neighbour points, one of several conventions.

Details

Kind
Mesh algorithm
Engine
Python 3.10 or later
Files
10 files, 239.9 KB
Licence
MIT
Declared effects
reads files, runs commands, writes files
Checked with
Godot 4.7.2, gl_compatibility, OpenGL 3 driver, Mesa llvmpipe under Xvfb
Checks
generator runs system python, generator runs verifier python, gltf strict structure, interpreters agree, example matches generator, godot headless gltf load, godot compatibility render
Techniques
Catmull-Rom spline, Barry-Goldman pyramidal evaluation, Centripetal knot parameterization (alpha = 0.5)
Tags
catmull-rom, spline, interpolation, centripetal, waypoints, curve
Identity
library.supply.creative_originals.90ef9a8f7a69dc9c81dacc0e.6e2ff3b572ef63b9
Version
6e2ff3b572ef63b92492a11706ca47fe40fac43e1f2679cd3208ba3bbe603c8e

The version is the SHA-256 of the item your harness downloads; every file in it names its own checksum.

Something wrong with this item, its rights or its safety? Report it on the support page, or from your harness after a download.