kendama_params — DRIVE kendama op

• Data kinds: कोई नहीं → table (केवल arguments से तय होने वाला op — यह कोई image या data input नहीं लेता)

• Call: import fullseye as fs; fs.ledger.kendama_params(preset: 'str' = 'jka_16_2', *, trick: 'str' = 'ozara', ball_radius: 'float' = None, mass: 'float' = 0.075, string: 'float' = 0.39, cup_radius_big: 'float' = None, cup_depth: 'float' = None, ken_length: 'float' = None, width: 'float' = None, rho: 'float' = 1.2, cd=0.4, cup_offset=None, tie_offset=None, cup_axis=None, g: 'float' = 9.81) -> 'dict' (implementation को सीधे call करना हो तो import kendama; kendama.kendama_params(preset: 'str' = 'jka_16_2', *, trick: 'str' = 'ozara', ball_radius: 'float' = None, mass: 'float' = 0.075, string: 'float' = 0.39, cup_radius_big: 'float' = None, cup_depth: 'float' = None, ken_length: 'float' = None, width: 'float' = None, rho: 'float' = 1.2, cd=0.4, cup_offset=None, tie_offset=None, cup_axis=None, g: 'float' = 9.81) -> 'dict', registry से लेना हो तो opsdrive.get("kendama_params"))

• GPU: नहीं (केवल CPU reference implementation)

उपयोग

kendama की table। default = preset="jka_16_2" (गेंद 60 mm, चौड़ाई 70 mm, कुल लंबाई 180 mm Japan Kendama Association के प्रकाशित मान हैं; ken की ऊँचाई 160 mm और cups 42 / 38 / 35 mm उपयोगकर्ता द्वारा दिए गए JKA 16-2 model के विवरण से हैं (primary source अपुष्ट))। "recommended_large_cup" = बड़ा cup 49 mm, छेद 24 mm।

कुंजी: बॉल_रेडियस 0.030, स्ट्रिंग 0.39 (धागा = अनुशंसित 38-40 सेमी), पेंडुलम_लेंथ = धागा + गेंद त्रिज्या (गाँठ → गेंद केंद्र, गेंद के धागे के छेद को बड़े छेद के विपरीत दिशा में रखें), cup_radius_big / cup_radius_base / cup_radius_small(किनारे की त्रिज्या), cup_depth (बड़ी प्लेट की गहराई। डिफ़ॉल्ट = रिम पर गेंद के निचले किनारे का डूबना r_b - √(r_b² - r_c²) + 1.5 मिमी = गहराई जिस पर गेंद नीचे को नहीं छूती है), ken_length (केन की ऊंचाई = टिप → मध्यम प्लेट का रिम, 160 मिमी), चौड़ाई (रिम का रिम) बड़ी प्लेट ~ छोटी प्लेट का रिम, 70 मिमी), होल_रेडियस / होल_डेप्थ(गेंद में बड़ा छेद। गहराई = केन + बॉल - कुल लंबाई = 40 मिमी), कुल_लंबाई (इकट्ठी की गई कुल लंबाई = केन + बॉल - होल की गहराई), क्रॉस_रेडियस / केन_रेडियस / स्पाइक_लेंथ / क्रॉस_फ्रॉम_टिप (माना गया), मास'' (गेंद, 75 ग्राम माना गया), केन_मास'' (70 ग्राम माना गया)। ट्रिक ट्रिक(:डेटा:केंडामा_ट्रिक्स: "ओजारा" बड़ी प्लेट / "कोजारा" छोटी प्लेट / "चुजारा" मध्यम प्लेट / "मोमबत्ती" = "रूसोकू") आसन निर्धारित करती है:

R_ken (केन → विश्व के स्थानीय निर्देशांक: स्थानीय टिप +x・बड़ी प्लेट +z・उत्पत्ति = प्लेट बॉडी का केंद्र है), ग्रिप(पकड़ने का स्थान, स्थानीय), प्राप्त करने वाली प्लेट कैच_कप("बड़ा" / "छोटा" / "आधार")। वहां से, cup_offset (प्राप्त करने वाली प्लेट के रिम का केंद्र), cup_axis आपके हाथ तक (= पकड़ने की जगह) (प्लेट प्राप्त करने की धुरी, दुनिया), tie_offset (प्लेट बॉडी में स्ट्रिंग छेद: स्थानीय (0, −cross_radius, 0)), top_offset (केंडामा का उच्चतम बिंदु), cup_radius (प्राप्त प्लेट के किनारे की त्रिज्या) की गणना करें। तलवार और शरीर एक कठोर शरीर हैं (प्रत्येक तकनीक के लिए मुद्रा निश्चित है, और हाथ अनुवाद में चलता है)। यदि आप cup_offset / tie_offset / cup_axis पास करते हैं, तो इसे उन मानों के साथ अधिलेखित कर दिया जाएगा (यदि आप 0 पास करते हैं, तो बिंदु होगा = आधार = प्लेट = हाथ: प्रमेय का द्वार)। कैच_विंडो = 0.003 मीटर: केंडामा_सिम्युलेट गेंद को उस समय पकड़ा हुआ मानता है जब गेंद का केंद्र उस ऊंचाई h_c से 3 मिमी के भीतर गिरता है जिस पर वह किनारे पर टिकी होती है। (गेंद किनारे को छूती है = गिरती है। बस किनारे से 1.5 r_b ऊपर विंडो में प्रवेश करने से यह पकड़ में नहीं आएगी: यदि शीर्ष खिड़की के अंदर है, तो यह शीर्ष पर "पकड़ा" जाएगा - मैंने इसे मापा और इसे अस्वीकार कर दिया)। rho/cd = वायु घनत्व/खींचें गुणांक (वैक्यूम जब rho = 0: प्रमेय गेट इसके साथ चलता है)।

विफल-बंद: अज्ञात प्रीसेट, आयाम ≤ 0, प्लेट का किनारा ≥ गेंद (किनारे पर प्राप्त नहीं किया जा सकता = केंडामा नहीं), चौड़ाई < प्लेट का व्यास, धागा ≤ गेंद की त्रिज्या, यदि छेद की गहराई बाहर (0, गेंद का व्यास) है और छेद की त्रिज्या ≥ गेंद की त्रिज्या है, तो वैल्यूएरर। टिप और छेद की मोटाई की तुलना न करें. लौटाए गए मानों में व्युत्पन्न मात्राएँ "cup_rest_height" = √(r_b² − r_c²) (प्राप्त प्लेट के किनारे पर गेंद के केंद्र की ऊंचाई), "bp"(ballistics.ball_params, ठोस गेंद) शामिल हैं।

संदर्भ (sample data, साहित्य)

• Sample data catalog (DL URL / license) — 2-D के लिए skimage.data (BSD/public) + synthetic, 3-D के लिए real data sources (Stanford/PDS आदि) के DL URL।

• Operators का स्रोत और संदर्भ — इस op family के मूल research/methods के स्रोत।

• Algorithm का मानक स्रोत (लेखक, वर्ष) और उपयोग ऊपर की family usage guide में दिए गए हैं।

चलाए जा सकने वाले उदाहरण (verified samples जो सच में यह op call करते हैं)

• gallery_drive_kendama_racket — py -3.11 examples/gallery_drive_kendama_racket.py

• gallery_drive_world_objects — py -3.11 examples/gallery_drive_world_objects.py

• poc_kendama — py -3.11 examples/poc_kendama.py

वे अगले ops जिनसे type जुड़ता है (table को input के रूप में लेते हैं)

course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same

इसी category के (kendama)

elliptic_k_agm · pendulum_period_exact · pendulum_launch_speed · pendulum_rod_simulate · tether_tension_fixed · tether_slack_angle · swing_up_plan · swing_up_apex


*Provenance: kendama.py — DRIVE operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.