road_profile — DRIVE long op

• Data kinds: table → table

• Call: import fullseye as fs; fs.ledger.road_profile(profile_xz, l0: 'float' = 0.0) -> 'Dict[str, np.ndarray]' (to call the implementation directly, import drivelong; drivelong.road_profile(profile_xz, l0: 'float' = 0.0) -> 'Dict[str, np.ndarray]'; from the registry, opsdrive.get("road_profile"))

Usage

Turns a polyline of horizontal distance and height (x, z) (same form as profile of drivecourse.course_slope) into a longitudinal profile over arc length l along the road surface.

Returns = {"l" (n,), "x" (n,), "z" (n,), "sin" (n−1,), "cos" (n−1,)}. l is the arc length of the break points starting from l0. The grade angle θ_i of segment i has sin = Δz/Δl, cos = Δx/Δl (flat outside both ends: θ = 0, z is the end value).

Raises ValueError: fewer than 2 points, non-finite, x not strictly increasing, grade of 45° or more.

References (sample data, literature)

• 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.

Runnable examples (verified samples that actually call this op)

• poc_driving_longitudinal — py -3.11 examples/poc_driving_longitudinal.py

Ops the type connects to (they accept table as input)

course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same

Same category (long)

long_params · road_eval · long_simulate · long_energy_residual · stopping_distance_grade · stop_line_plan · plan_command · hill_hold_brake_min


*Provenance: drivelong.py — DRIVE 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.