shape opimage2d → image2dimport fullseye as fs; fs.ledger.arc(img, center, radius, start_deg, end_deg, color='neutral', width=2, alpha=1.0, scheme='okabe_ito') (実装を直接呼ぶなら import annotate; annotate.arc(img, center, radius, start_deg, end_deg, color='neutral', width=2, alpha=1.0, scheme='okabe_ito')、台帳から引くなら opsannotate.get("arc"))円弧。角度は画面の x 軸から時計回り(row が下向きだから)で度。
ValueError radius が非正、角度が非有限、start == end、alpha が [0,1] の外。
描画: 中心からの距離 d が |d - radius| <= max(0.6, width/2) で、かつ
画素の方位角が start_deg から時計回りに (end_deg - start_deg) mod 360 の
範囲にある画素を塗る(アンチエイリアス無し)。方位角は atan2(y - cy, x - cx)
で、0 度 = 右(+x)、90 度 = 下(+y)、時計回りが正。
center: (x, y)、x = 列・y = 行。画像外でもよい(はみ出しは切れるだけ)。radius: 正 [px]。start_deg, end_deg: 度。start から時計回りに end まで描く。
差が 360 の倍数(end - start が 0 でなく 360 など)は全周。
start == end は「長さ 0」なので ValueError。width: 線幅 [px]。max(0.6, width/2) を半幅にするので 1 px 未満でも
途切れない。img / color / alpha / scheme の扱いは rounded_rect と同じ
(float64 複製、[0, 1]、役割名か RGB)。角度を書き込む学術図の作法は annotate_angle が引き出し文字まで面倒を見る。
py -3.11 examples/annotate_gallery.pypy -3.11 examples/poc_weld_radiograph_porosity.pyimage2d を入力に取れる)text_box · arrow · leader_line · label_points · crosshair · legend_box · color_bar · scale_bar
shape)rounded_rect · filled_polygon · ellipse
Provenance: annotate.py — ANNOTATE operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.