roadjp optable → scalarimport fullseye as fs; fs.ledger.add_signal_jp(world: 'dict', x: 'float', y: 'float', yaw: 'float', *, state: 'str' = 'red', arm: 'float' = 2.0, lamp_bottom: 'float' = 5.0, pole_radius: 'float' = 0.08, arm_side: 'str' = 'left', lens: 'float' = 0.3, hood: 'bool' = True) -> 'int' (実装を直接呼ぶなら import roadjp; roadjp.add_signal_jp(world: 'dict', x: 'float', y: 'float', yaw: 'float', *, state: 'str' = 'red', arm: 'float' = 2.0, lamp_bottom: 'float' = 5.0, pole_radius: 'float' = 0.08, arm_side: 'str' = 'left', lens: 'float' = 0.3, hood: 'bool' = True) -> 'int'、台帳から引くなら opsdrive.get("add_signal_jp"))日本式の信号機を立てる: 柱 + 水平アーム + 灯器(横型 3 灯、yaw の向きへ進んで来る車に表示面が向く)。
配置(信号機設置の指針の解説: 一般の車両用灯器は交差点の向こう側 = 出口側): 柱を (x, y) に立て
(高さ lamp_bottom + 0.7)、アームを進入車の運転者から見て 右(車線の上。yaw 0 で −y)へ水平に arm だけ出し
(標準 2.0 m、最大 3.5 m 超は ValueError)、灯器の中心をアームの先に吊る(灯器の底 = lamp_bottom、
既定 5.0 m、4.5 m 未満は ValueError — 交通信号機工事仕様書、一次資料で要確認)。arm_side="right" なら柱が
運転者の右側にあり、アームは左へ出る。表示面の法線 = (−cos yaw, −sin yaw)、レンズは運転者から見て左から青・黄・赤。
objects: 柱 + アーム(ラベル 3、name “signal_pole”)と灯器(ラベル 3、name “traffic_light”、
extra = {"state", "lamp_faces"(世界の面索引), "arm", "lamp_bottom", "kind": "jp"})。返り値 = 灯器の索引
(:func:driveworld.set_signal_state はこれに対して使う)。
空の入力(world が空の dict)は ValueError。
py -3.11 examples/gallery_drive_japan_roads.pyscalar を入力に取れる)spin_from_marker_sequence · carla_transform_matrix · carla_pose_to_world · carla_camera_pose · carla_xy_yaw · carla_scene_load · town_chain · osm_parse
roadjp)sign_params · sign_image · plate_mesh_from_image · sign_mesh · add_sign · signal_jp_mesh
Provenance: roadjp.py — DRIVE operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.