Print area with G-Code variables
Hi all;
I need to obtain the max/min X and Y coordinates of the actual print area inside the G-code starting script.
I know that I can use the first_layer_print_min and first_layer_print_max placeholders, anyway I'm not able to understand how to extract min X/Y and max X/Y coordinates from this placeholders.
Moreover, do you suggest to use the pointed out placeholders or the print_bed_min and print_bed_max placeholders?
Thank you!
RE: Print area with G-Code variables
To explain better, in Simplify3D you can use [build_min_x], [build_max_x], [build_min_y], [build_max_y] placeholders, so I'm looking for the corresponding placeholders in PrusaSlicer.
Thank you!
RE: Print area with G-Code variables
I haven't played with these much myself, but the PrusaSlicer 2.3.0 announcementcontains some hints:
-
The G-code placeholder parser supports the following new keys: "print_bed_min", "print_bed_max", "print_bed_size", which are calculated as a bounding box of an existing "bed_shape" vector of points.
-
The G-code placeholder parser also newly supports the following new keys: "first_layer_print_convex_hull", "first_layer_print_min", "first_layer_print_max", "first_layer_print_size", defining convex hull of the first layer. Please note that the extrusions generated by the custom G-code are not accounted for.
Playing around with start gcode, the following statements seem to work as expected. With these lines in my start gcode:
; First layer print min: [first_layer_print_min_0],[first_layer_print_min_1]
; First layer print max: [first_layer_print_max_0],[first_layer_print_max_1]
; First layer print size: [first_layer_print_size_0],[first_layer_print_size_1]
I get this result when slicing a 30x40x50mm STL:
; First layer print min: 55.1281,30.2443
; First layer print max: 85.1281,70.2443
; First layer print size: 30,40
I'm just not certain about first_layer_print_min as the slicer says the part is positioned at 70.13,50.24. The max extent looks right based on that starting position and the print size is correct.
and miscellaneous other tech projects
He is intelligent, but not experienced. His pattern indicates two dimensional thinking. -- Spock in Star Trek: The Wrath of Khan
RE: Print area with G-Code variables
Hi @bobstro,
thank you for your precious help.
I'm able to confirm the following placeholders translation:
- Simplify 3D: [build_min_x], [build_max_x], [build_min_y], [build_max_y]
- PrusaSlicer: [first_layer_print_min_0], [first_layer_print_max_0], [first_layer_print_min_1], [first_layer_print_max_1]
Important: the resulting coordinates contemplates also the skirt/brim/raft area if activated, not only the pure STL!
RE: Print area with G-Code variables
Old thread, I know, but here's my version:
G29 X3 Y2 L[first_layer_print_min_0] F[first_layer_print_min_1] R[first_layer_print_max_0] B[first_layer_print_max_1]