gcode_read — PRINTPATH 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]

उपयोग की विस्तृत guide

• printpath family guide

संदर्भ (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 करते हैं)

• poc_print_layer_inspection — py -3.11 examples/poc_print_layer_inspection.py

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

gcode_write · gcode_extrusion_volume · gcode_time_estimate · gcode_layer_image · contours_to_gcode

इसी category के (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.