function op• Data kinds: signal × signal → signal
• Call: import fullseye as fs; fs.ledger.compose_funct_1d(y1, y2) (to call the implementation directly, import funct1d; funct1d.compose_funct_1d(y1, y2); from the registry, ops1d.get("compose_funct_1d"))
Composition y1(y2): the values of *y2* used as positions into *y1* (HALCON compose_funct_1d).
Each y2[i] is rounded to the nearest integer and clamped into [0, len(y1) - 1], then out[i] = y1[that index]. Nearest-neighbour lookup, no interpolation.
Domain policy (documented difference from HALCON, which errors when the range of *y2* leaves the domain of *y1*): out-of-domain positions are clamped to the first / last sample of *y1*, never extrapolated. If you need the strict check, compare y_range_funct_1d(y2) against x_range_funct_1d(y1) before composing.
:param y1: outer function, at least 1 sample. :param y2: inner function supplying positions (may be empty). :returns: float64 array with the length of *y2*. :raises ValueError: non-1-D / NaN / Inf input, or empty *y1*.
• Sample-data catalog (download URLs / licences) — 2-D uses skimage.data (BSD/public domain) plus synthetic images; 3-D lists download URLs for real data sources (Stanford, PDS, …).
• Operator provenance and references — the sources of the research/methods this op family came from.
• The canonical algorithm (author, year) and its uses are named in the family usage guide above.
• (none yet)
signal as input)create_funct_1d_array · create_funct_1d_pairs · smooth_funct_1d_gauss · smooth_funct_1d_mean · derivate_funct_1d · integrate_funct_1d · zero_crossings_funct_1d · local_min_max_funct_1d
function)create_funct_1d_array · create_funct_1d_pairs · smooth_funct_1d_gauss · smooth_funct_1d_mean · derivate_funct_1d · integrate_funct_1d · zero_crossings_funct_1d · local_min_max_funct_1d
*Provenance: funct1d.py — ONED operator registry. This per-op note is generated by tools/opdocs.py md (do not hand-edit).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.