lateral op• Data kinds: table → table
• Call: import fullseye as fs; fs.ledger.turn_maneuver_check(trajectory: 'dict', *, kind: 'str', x_entry: 'float', edge_y: 'float', center_y: 'float' = 0.0, corner_center=None, corner_radius: 'float' = 0.0, intersection_center=None, approach: 'float' = 30.0, keep_tol: 'float' = 0.5, side_tol: 'float' = 1.5, inside_tol: 'float' = 3.0, jokou: 'float' = 2.7777777777777777, clearance: 'float' = 0.0) -> 'Dict[str, object]' (to call the implementation directly, import drivelateral; drivelateral.turn_maneuver_check(trajectory: 'dict', *, kind: 'str', x_entry: 'float', edge_y: 'float', center_y: 'float' = 0.0, corner_center=None, corner_radius: 'float' = 0.0, intersection_center=None, approach: 'float' = 30.0, keep_tol: 'float' = 0.5, side_tol: 'float' = 1.5, inside_tol: 'float' = 3.0, jokou: 'float' = 2.7777777777777777, clearance: 'float' = 0.0) -> 'Dict[str, object]'; from the registry, opsdrive.get("turn_maneuver_check"))
Checks how a left or right turn is made (Road Traffic Act Art. 34(1)-(2) / Rules of the Road (Kyosoku) 5-7-2). All numeric margins are assumptions (SOURCES).
> The detailed description below is the original text — the summary and the headings are translated.
道は +x へ進む(左 = +y)。車道の左端 y = edge_y、中央線 y = center_y、交差点の手前の縁 x = x_entry。trajectory: t, front (N, 2)(前車軸の中心)、rear (N, 2)(後車軸の中心)、speed (N,)、width(車幅)、track(輪距)、front_overhang・rear_overhang(車軸から車体の端まで)。
判定:
• 寄る(あらかじめ): x_entry − approach ≤ 前端 < x_entry の間、左折は車体の左側と左端の距離が [0, keep_tol] (0 未満 = 路肩・路側帯へはみ出す)、右折は車体の右側と中央線の距離が [0, keep_tol] (0 未満 = 中央線をまたぐ)。
• 徐行: 前端が x_entry を越えてから曲がり終える(向きが ±80° を超える)までの速さ ≤ jokou。
• 左折の「側端に沿って」: 曲がる間(向き 10°〜80°)の後輪の内側と隅切りの円(中心 corner_center・半径 corner_radius)の距離が [clearance, side_tol]。clearance を下回る = 内輪差で隅の人・自転車の場所に入る。
• 右折の「交差点の中心のすぐ内側」: 前車軸の中心の軌跡が交差点の中心 intersection_center を 右(旋回の内側)に見ずに 通り(中心が軌跡の外側 = 左)、最も近いときの距離 ≤ inside_tol。
返り値: ok, violations(理由の文字列のリスト)、metrics(dict)。
Raises ValueError: kind が "left" / "right" 以外、必要な値の欠け、形の誤り。
• 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.
• poc_driving_lateral — py -3.11 examples/poc_driving_lateral.py
table as input)course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same
lateral)friction_circle_usage · curve_speed_limit · design_min_radius · understeer_gradient · steady_cornering · bicycle_model_step · ackermann_steer_angles · offtracking_circle
*Provenance: drivelateral.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.