kendama op• 데이터 종류: table → table
• 호출: import fullseye as fs; fs.ledger.kendama_catch_check(kp: 'dict', p_ball, v_ball, cup_center, cup_axis=(0.0, 0.0, 1.0), v_cup=(0.0, 0.0, 0.0), v_rel_max: 'float' = 1.0, window: 'float' = None) -> 'dict'(구현을 직접 호출하려면 import kendama; kendama.kendama_catch_check(kp: 'dict', p_ball, v_ball, cup_center, cup_axis=(0.0, 0.0, 1.0), v_cup=(0.0, 0.0, 0.0), v_rel_max: 'float' = 1.0, window: 'float' = None) -> 'dict', 원장에서 가져오려면 opsdrive.get("kendama_catch_check"))
> 이 연산자의 설명은 아직 번역이 없습니다. 원문을 그대로 싣습니다.
玉(半径 r_b)が皿(縁の半径 r_c < r_b、縁の中心 cup_center、軸 cup_axis、速度 v_cup)に乗る幾何の判定。
縁に乗った玉の中心は縁の面から h_c = √(r_b² − r_c²) 上、静的な安定条件は横ずれ ≤ r_c。:func:ballistics.cup_catch_check
(皿 > 玉が前提)を有効な皿(半径 r_c + r_b、中心を軸方向に h_c 上げる)で呼ぶ → 横ずれ ≤ r_c、縁の面からの高さ
h_c ≤ h ≤ h_c + 1.5 r_b、皿に対する相対速さ ≤ v_rel_max。さらに 下から昇ってくる玉(相対速度の軸成分 > 0)は受けない
(皿は上からしか受けられない。支点 = 皿の中心の簡略化では昇る玉が皿の位置を通り抜けるため必要)。
`window を渡すと高さの窓を「縁に最初に触れる高さ」+ window 以下に狭める(着地の判定: :func:kendama_simulate` は
kp["catch_window"])。横ずれ δ の玉は √(r_b² − (r_c − δ)²)(δ = 0 で h_c)で縁に触れる —— 中心からずれた玉は縁の片側に
先に触れ、皿の中へ転がり込む(横ずれ ≤ r_c なら受けたとする)。
縁の半径は kp["cup_radius"] (受ける皿、無ければ大皿)。返り値 `{"caught", "lateral", "height" (縁の面から), "speed" (相対), "descending"}`。
• 샘플 데이터 카탈로그(DL URL / 라이선스) —— 2-D 는 skimage.data(BSD/public)+ 합성, 3-D 는 실데이터 소스(Stanford/PDS 등)의 DL URL.
• 연산자의 내력·참고문헌 —— 이 연산자 족의 바탕이 된 연구/기법의 출처.
• 알고리즘의 정전(저자·연도)과 용도는 위의 패밀리 사용 가이드에 적혀 있습니다.
• (아직 없음)
table 를 입력으로 받는 것)course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same
kendama)kendama_params · elliptic_k_agm · pendulum_period_exact · pendulum_launch_speed · pendulum_rod_simulate · tether_tension_fixed · tether_slack_angle · swing_up_plan
*Provenance: kendama.py — DRIVE 연산자 레지스트리. 이 op 노트는 tools/opdocs.py md 가 자동 생성합니다(직접 편집하지 마세요).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.