gcode op• Data kinds: text → table
• Call: import fullseye as fs; fs.ledger.gcode_read(path: 'str', layer_from: 'str' = 'auto') -> 'dict[str, np.ndarray]' (implementation को सीधे call करना हो तो import printpath; printpath.gcode_read(path: 'str', layer_from: 'str' = 'auto') -> 'dict[str, np.ndarray]', registry से लेना हो तो opsprintpath.get("gcode_read"))
G-code (RepRap / Marlin परिवार) को line segment की table table में पढ़ता है: column x0 y0 z0 x1 y1 z1 (mm), e (उस segment में extrude की गई filament लंबाई mm, केवल move हो तो 0), f (feed mm/min), layer (layer क्रमांक)।
interpret किए जाते हैं G0 / G1 (linear moves), G90 / G91 (absolute / relative coordinates), M82 / M83 (absolute / relative E), G92 (coordinate reset), G28 (homing: दिए गए axes को -- कोई न दिया हो तो X/Y/Z सभी को -- 0 पर रखता है। Marlin के default min endstop और home offset 0 मान लिए जाते हैं, इसलिए max side पर home करने वाली machines तुरंत बाद G92 से coordinates दें), G20 / G21 (inch / mm), और ; comments। G91 का relative move जिन axes का start point तय नहीं है वहाँ position को अनिश्चित ही छोड़ता है (relative मात्रा को absolute coordinate नहीं पढ़ा जाता)। arcs G2 / G3 handle नहीं किए जाते (चुपचाप सीधी line नहीं बनाई जाती, ValueError -- slicer में सीधी lines में expand करके output करें)। layers layer_from="tag" पर ;LAYER:n comments से, "z" पर extrusion के साथ होने वाली Z की बढ़त से काटी जाती हैं। "auto" में tags हों तो tags, न हों तो Z। कोई भी coordinate दिए बिना extrude करने वाली line पर ValueError (dialect की कमियों को चुपचाप 0 से नहीं भरा जाता)।
>>> t = gcode_read("part.gcode")
>>> t["e"].sum() # extrude किए गए filament की कुल लंबाई [mm]
• 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 में दिए गए हैं।
• poc_print_layer_inspection — py -3.11 examples/poc_print_layer_inspection.py
table को input के रूप में लेते हैं)gcode_write · gcode_extrusion_volume · gcode_time_estimate · gcode_layer_image · contours_to_gcode
gcode)gcode_write · gcode_extrusion_volume · gcode_time_estimate · gcode_layer_image
*Provenance: printpath.py — PRINTPATH operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.