shape opimage2d → image2dimport fullseye as fs; fs.ledger.ellipse(img, center, radii, angle_deg=0.0, color='neutral', width=2, fill=False, alpha=1.0, scheme='okabe_ito') (実装を直接呼ぶなら import annotate; annotate.ellipse(img, center, radii, angle_deg=0.0, color='neutral', width=2, fill=False, alpha=1.0, scheme='okabe_ito')、台帳から引くなら opsannotate.get("ellipse"))楕円(angle_deg で回転、fill=True で塗り)。
ValueError 半径が非正、非有限、alpha が [0,1] の外。
描画: 画素を angle_deg だけ回した局所座標 (u, v) に写し、
q = (u/ra)^2 + (v/rb)^2 で判定する。fill=True は q <= 1、
fill=False は |sqrt(q) - 1| <= max(1, width) / (2 min(ra, rb)) の帯
(アンチエイリアス無し)。帯の幅を短軸で正規化しているので、扁平な楕円では
長軸の端ほど線が太く見える(近似)。
center: (x, y)、x = 列・y = 行。画像外でもよい。radii: (ra, rb) [px]。ra が angle_deg 方向、rb がその直交方向。
両方とも正。angle_deg: 回転角 [度]。x 軸から時計回り(画面座標、y が下向き)。width: 線幅 [px] (fill=False のとき)。img / color / alpha / scheme の扱いは rounded_rect と同じ
(float64 複製、[0, 1]、役割名か RGB)。ra == rb なら円。計測結果(楕円フィットの row, col, phi, ra, rb)を
重ねるときは center=(col, row)、angle_deg=degrees(phi) に読み替える。
py -3.11 examples/annotate_gallery.pypy -3.11 examples/poc_dimensional_inspection.pypy -3.11 examples/poc_machine_condition_fusion.pyimage2d を入力に取れる)text_box · arrow · leader_line · label_points · crosshair · legend_box · color_bar · scale_bar
shape)rounded_rect · filled_polygon · arc
Provenance: annotate.py — ANNOTATE operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.