course_turnaround — DRIVE course op

• Datenarten: keine → table (ein Operator, der allein durch seine Argumente bestimmt ist — er nimmt kein Bild und keine Daten entgegen)

• Aufruf: import fullseye as fs; fs.ledger.course_turnaround(width=3.5, bay_width=3.5, depth=5.0, entry=5.0, corner_radius=1.0, arc_pts=16, side='left') (die Implementierung direkt: import drivecourse; drivecourse.course_turnaround(width=3.5, bay_width=3.5, depth=5.0, entry=5.0, corner_radius=1.0, arc_pts=16, side='left'); aus dem Register: opsdrive.get("course_turnaround"))

Verwendung

Wendestrecke (T-förmig): seitlich mittig an einer Straße der Breite w (x ∈ [0, 2E + bay_width]) eine Parkbucht (Breite bay_width entlang der Straße, Tiefe depth), beiderseits der Buchtöffnung je ein Ein-/Ausfahrtsabschnitt E.

Genau die Abbildung in Anhang 3 (3JH00000217784): An der Straße (Breite A) ist rechtwinklig eine Garage (Breite B × Tiefe C) angesetzt; die Straße beiderseits der Garageneinfahrt ist der Ein-/Ausfahrtsbereich D, die beiden einspringenden Ecken der Garageneinfahrt sind die Eckabschrägungen E. In der Abbildung liegt die Garage rechts einer nach oben führenden Straße, hier ist jedoch side="left" (+y) der Standard, "right" spiegelt. Das Fahrzeug fährt die Straße entlang, setzt rückwärts in die Garage und fährt in die Richtung, aus der es kam, wieder aus (exit = (0, 0, π); für die Ausfahrt zur anderen Seite wählt die Platzierung die Richtung). centerline ist Straßenachse → Garagenachse. Fläche = (2E + bay_width)·w + depth·bay_width + 2r²(1 − π/4).

Norm: A = 3.5, B = 3.5, C = 5, D ≥ 5, E = 1 → params["regulation"].

Raises ValueError: Breite, Garagenbreite, Tiefe oder E nicht positiv, r < 0, E < r oder depth < r (Eckabschrägung passt nicht auf die Kante), arc_pts ist keine ganze Zahl ≥ 1, side ist nicht left/right.

Referenzen (Beispieldaten, Literatur)

• Katalog der Beispieldaten (Download-URLs / Lizenzen) — 2-D nutzt skimage.data (BSD/Public Domain) plus synthetische Bilder, 3-D nennt Download-URLs echter Datenquellen (Stanford, PDS, …).

• Herkunft und Literatur der Operatoren — die Quellen der Forschung/Verfahren, auf denen diese Operatorfamilie beruht.

• Der kanonische Algorithmus (Autor, Jahr) und seine Anwendungen stehen im Familienleitfaden oben.

Ausführbare Beispiele (verifizierte Samples, die diesen Operator wirklich aufrufen)

• poc_driving_school — py -3.11 examples/poc_driving_school.py

Typkompatible Folge-Operatoren (nehmen table als Eingabe)

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

Gleiche Kategorie (course)

course_crank · course_s_curve · course_slope · course_intersection · course_parallel_parking · course_crossing · course_road · course_loop_bend


*Provenance: drivecourse.py — DRIVE Operator-Registry. Diese Notiz wird von tools/opdocs.py md erzeugt (nicht von Hand bearbeiten).*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.