mirror_road_coverage — DRIVE pass op

• Data kinds: none → table (an op determined by its arguments alone — it takes no image or data input)

• Call: import fullseye as fs; fs.ledger.mirror_road_coverage(eye_xy, mirror_center_xy, mirror_normal_xy, mirror_width: 'float', *, mirror_radius=inf, road_point, road_direction) -> 'Dict[str, object]' (to call the implementation directly, import drivepass; drivepass.mirror_road_coverage(eye_xy, mirror_center_xy, mirror_normal_xy, mirror_width: 'float', *, mirror_radius=inf, road_point, road_direction) -> 'Dict[str, object]'; from the registry, opsdrive.get("mirror_road_coverage"))

Usage

Extent of road visible in a curve mirror (convex arc or flat) (2-D top view, closed form). Scenarios S064, S130.

The road = the straight line Q(λ) = road_point + λ·road_direction (normalised to a unit vector; placing λ = 0 at the collision point of the intersection makes it easy to read). At both ends of the mirror (for an arc, the end normals N = cos φ n ± sin φ t, φ = asin(w/2R)) the rays from the eye are reflected, and their intersections λ₁, λ₂ with the road are found. On a convex mirror the direction of the reflected ray is monotonic in the position on the mirror, so the visible range = [min λ, max λ]. If a ray does not reach the road (parallel, or pointing away), that side is ±∞ (the sign of the dot product of the ray direction and the road direction). blind_near = length from λ = 0 to the near end of the visible range (when only the part beyond 0 is visible, the blind zone just before the intersection that is not shown). Same end rays as drivedecide.convex_mirror_fov (if the eye is on the axis, the difference between the 2 directions = the full field-of-view angle).

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_pass — py -3.11 examples/poc_driving_pass.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 (pass)

overtake_requirement · overtake_return_gap · no_overtaking_zones · overtake_permitted · overtaken_conduct_check · lane_change_follower_decel · lane_change_permitted · roundabout_entry_check


*Provenance: drivepass.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.