通过使用后处理脚本,您可以自动定制生成的G代码,以实现几乎任何期望的结果。
您可以在打印设置-输出选项-后处理脚本中指定脚本的位置。
后处理脚本可以使用任何编程语言编写,包括Perl、Python、Ruby、Bash等。唯一的要求是您的系统能够识别脚本为可执行文件,并且接受G代码文件的路径作为其唯一参数。
如果您希望运行多个脚本,只需在每行中分别包含每个脚本的调用。
每个脚本将接收QIDISlicer生成的临时G代码文件的绝对路径。该文件将临时存储在您系统的快速驱动器上。然后,脚本将执行,就地修改G代码,并将生成的G代码文件写入您选择的目标文件夹或发送到打印主机。
G代码查看器显示的是后处理之前的代码。
QIDISlicer通过环境变量向后处理脚本传递所有切片配置。每个变量都以"SLIC3R_"为前缀,并遵循驼峰命名法。例如,填充密度被传递为"SLIC3R_Fill_density"。
此外,还提供了两个特定的环境变量:
SLIC3R_PP_HOST:指定目标主机,其中“File”表示将G代码复制到本地驱动器或可移动介质,而其他值(例如“QIDILink”、“Repetier”、“SL1Host”、“OctoPrint”、“FlashAir”、“Duet”、“AstroBox”等)指定打印主机类型。
SLIC3R_PP_OUTPUT_NAME:包含G代码文件名,包括路径(对于SLIC3R_PP_HOST == "File")或上传到主机时分配给文件的名称。
您可以按如下方式将参数纳入脚本中:
如果可执行文件路径或参数包含空格,请确保您使用适合您平台的转义样式(Linux和OSX上的shell转义,Windows命令行转义)。
示例:
env_slicer_pp_output_name = str(getenv('SLIC3R_PP_OUTPUT_NAME'))
with open(sourcefile + '.output_name', mode='w', encoding='UTF-8') as fopen:
fopen.write(counter + '_' + env_slicer_pp_output_name)