def init_arguments_visible(arguments_visible): """Initialize which argument pairs are visible in TOOLTIP_ARGS.""" PostUtilsArguments.init_arguments_visible(arguments_visible) # # Modify the visibility of any arguments from the defaults here. # arguments_visible["axis-modal"] = True
def init_values(values): """Initialize values that are used throughout the postprocessor.""" # global UNITS PostUtilsArguments.init_shared_values(values) # # Set any values here that need to override the default values set # in the init_shared_values routine. # values["ENABLE_COOLANT"] = True # # Used in the argparser code as the "name" of the postprocessor program. # This would normally show up in the usage message in the TOOLTIP_ARGS, # but we are suppressing the usage message, so it doesn't show up after all. # values["MACHINE_NAME"] = "mach3_4" # Enable special processing for operations with "Adaptive" in the name values["OUTPUT_ADAPTIVE"] = True # Output the machine name for mach3_mach4 instead of the machine units alone. values["OUTPUT_MACHINE_NAME"] = True # the order of parameters # mach3_mach4 doesn't want K properties on XY plane; Arcs need work. values["PARAMETER_ORDER"] = [ "X", "Y", "Z", "A", "B", "C", "I", "J", "F", "S", "T", "Q", "R", "L", "H", "D", "P", ] # # Any commands in this value will be output as the last commands # in the G-code file. # values["POSTAMBLE"] = """M05 G17 G54 G90 G80 G40 M2""" values["POSTPROCESSOR_FILE_NAME"] = __name__ # # Any commands in this value will be output after the header and # safety block at the beginning of the G-code file. # values["PREAMBLE"] = """G17 G54 G40 G49 G80 G90""" # Output the machine name for mach3_mach4 instead of the machine units alone. values["SHOW_MACHINE_UNITS"] = False values["UNITS"] = UNITS
def init_arguments_visible(arguments_visible): """Initialize which argument pairs are visible in TOOLTIP_ARGS.""" PostUtilsArguments.init_arguments_visible(arguments_visible) # # Modify the visibility of any arguments from the defaults here. # # # Make all arguments invisible by default. # for k in iter(arguments_visible): arguments_visible[k] = False
def init_arguments_visible(arguments_visible): """Initialize which argument pairs are visible in TOOLTIP_ARGS.""" PostUtilsArguments.init_arguments_visible(arguments_visible) # # Modify the visibility of any arguments from the defaults here. # arguments_visible["bcnc"] = True arguments_visible["axis-modal"] = False arguments_visible["return-to"] = True arguments_visible["tlo"] = False arguments_visible["tool_change"] = True arguments_visible["translate_drill"] = True arguments_visible["wait-for-spindle"] = True
def init_arguments(values, argument_defaults, arguments_visible): """Initialize the shared argument definitions.""" parser = PostUtilsArguments.init_shared_arguments(values, argument_defaults, arguments_visible) # # Add any argument definitions that are not shared with all other postprocessors here. # return parser
def init_argument_defaults(argument_defaults): """Initialize which arguments (in a pair) are shown as the default argument.""" PostUtilsArguments.init_argument_defaults(argument_defaults) # # Modify which argument to show as the default in flag-type arguments here. # If the value is True, the first argument will be shown as the default. # If the value is False, the second argument will be shown as the default. # # For example, if you want to show Metric mode as the default, use: # argument_defaults["metric_inch"] = True # # If you want to show that "Don't pop up editor for writing output" is # the default, use: # argument_defaults["show-editor"] = False. # # Note: You also need to modify the corresponding entries in the "values" hash # to actually make the default value(s) change to match. # argument_defaults["tlo"] = False argument_defaults["tool_change"] = False
def export(objectslist, filename, argstring): """Postprocess the objects in objectslist to filename.""" # global parser global UNITS global values # print(parser.format_help()) (flag, args) = PostUtilsArguments.process_shared_arguments( values, parser, argstring) if not flag: return None # # Process any additional arguments here # # # Update the global variables that might have been modified # while processing the arguments. # UNITS = values["UNITS"] return PostUtilsExport.export_common(values, objectslist, filename)
def init_argument_defaults(argument_defaults): """Initialize which arguments (in a pair) are shown as the default argument.""" PostUtilsArguments.init_argument_defaults(argument_defaults)
def init_values(values): """Initialize values that are used throughout the postprocessor.""" # global UNITS PostUtilsArguments.init_shared_values(values) # # Set any values here that need to override the default values set # in the init_shared_values routine. # # Use 4 digits for axis precision by default. # values["AXIS_PRECISION"] = 4 values["DEFAULT_AXIS_PRECISION"] = 4 values["DEFAULT_INCH_AXIS_PRECISION"] = 4 # # Use ";" as the comment symbol # values["COMMENT_SYMBOL"] = ";" # # Use 1 digit for feed precision by default. # values["FEED_PRECISION"] = 1 values["DEFAULT_FEED_PRECISION"] = 1 values["DEFAULT_INCH_FEED_PRECISION"] = 1 # # This value usually shows up in the post_op comment as "Finish operation:". # Change it to "End" to produce "End operation:". # values["FINISH_LABEL"] = "End" # # If this value is True, then a list of tool numbers # with their labels are output just before the preamble. # values["LIST_TOOLS_IN_PREAMBLE"] = True # # Used in the argparser code as the "name" of the postprocessor program. # This would normally show up in the usage message in the TOOLTIP_ARGS, # but we are suppressing the usage message, so it doesn't show up after all. # values["MACHINE_NAME"] = "Centroid" # # This list controls the order of parameters in a line during output. # centroid doesn't want K properties on XY plane; Arcs need work. # values["PARAMETER_ORDER"] = [ "X", "Y", "Z", "A", "B", "I", "J", "F", "S", "T", "Q", "R", "L", "H", ] # # Any commands in this value will be output as the last commands # in the G-code file. # values["POSTAMBLE"] = """M99""" values["POSTPROCESSOR_FILE_NAME"] = __name__ # # Any commands in this value will be output after the header and # safety block at the beginning of the G-code file. # values["PREAMBLE"] = """G53 G00 G17""" # # Output any messages. # values["REMOVE_MESSAGES"] = False # # Any commands in this value are output after the header but before the preamble, # then again after the TOOLRETURN but before the POSTAMBLE. # values["SAFETYBLOCK"] = """G90 G80 G40 G49""" # # Do not show the current machine units just before the PRE_OPERATION. # values["SHOW_MACHINE_UNITS"] = False # # Do not show the current operation label just before the PRE_OPERATION. # values["SHOW_OPERATION_LABELS"] = False # # Do not output an M5 command to stop the spindle for tool changes. # values["STOP_SPINDLE_FOR_TOOL_CHANGE"] = False # # spindle off, height offset canceled, spindle retracted # (M25 is a centroid command to retract spindle) # values["TOOLRETURN"] = """M5 M25 G49 H0""" values["UNITS"] = UNITS # # Default to not outputting a G43 following tool changes # values["USE_TLO"] = False
def init_values(values): """Initialize values that are used throughout the postprocessor.""" # global UNITS PostUtilsArguments.init_shared_values(values) # # Set any values here that need to override the default values set # in the init_shared_values routine. # # # If this is set to True, then commands that are placed in # comments that look like (MC_RUN_COMMAND: blah) will be output. # values["ENABLE_MACHINE_SPECIFIC_COMMANDS"] = True # # Used in the argparser code as the "name" of the postprocessor program. # This would normally show up in the usage message in the TOOLTIP_ARGS, # but we are suppressing the usage message, so it doesn't show up after all. # values["MACHINE_NAME"] = "Grbl" # # Default to outputting Path labels at the beginning of each Path. # values["OUTPUT_PATH_LABELS"] = True # # Default to not outputting M6 tool changes (comment it) as grbl currently does not handle it # values["OUTPUT_TOOL_CHANGE"] = False # # The order of the parameters. # Arcs may only work on the XY plane (this needs to be verified). # values["PARAMETER_ORDER"] = [ "X", "Y", "Z", "A", "B", "C", "U", "V", "W", "I", "J", "K", "F", "S", "T", "Q", "R", "L", "P", ] # # Any commands in this value will be output as the last commands # in the G-code file. # values["POSTAMBLE"] = """M5 G17 G90 M2""" values["POSTPROCESSOR_FILE_NAME"] = __name__ # # Any commands in this value will be output after the header and # safety block at the beginning of the G-code file. # values["PREAMBLE"] = """G17 G90""" # # Do not show the current machine units just before the PRE_OPERATION. # values["SHOW_MACHINE_UNITS"] = False values["UNITS"] = UNITS # # Default to not outputting a G43 following tool changes # values["USE_TLO"] = False
def init_values(values): """Initialize values that are used throughout the postprocessor.""" # global UNITS PostUtilsArguments.init_shared_values(values) # # Set any values here that need to override the default values set # in the init_shared_values routine. # # Turn off as much functionality as possible by default. # Then the tests can turn back on the appropriate options as needed. # # Used in the argparser code as the "name" of the postprocessor program. # This would normally show up in the usage message in the TOOLTIP_ARGS, # but we are suppressing the usage message, so it doesn't show up after all. # values["MACHINE_NAME"] = "test" # # Don't output comments by default # values["OUTPUT_COMMENTS"] = False # # Don't output the header by default # values["OUTPUT_HEADER"] = False # # Convert M56 tool change commands to comments, # which are then suppressed by default. # values["OUTPUT_TOOL_CHANGE"] = False # # Enable as many parameters as possible to be output by default # values["PARAMETER_ORDER"] = [ "X", "Y", "Z", "A", "B", "C", "U", "V", "W", "I", "J", "K", "F", "S", "T", "Q", "R", "L", "H", "D", "P", ] values["POSTPROCESSOR_FILE_NAME"] = __name__ # # Do not show the editor by default since we are testing. # values["SHOW_EDITOR"] = False # # Don't show the current machine units by default # values["SHOW_MACHINE_UNITS"] = False # # Don't show the current operation label by default. # values["SHOW_OPERATION_LABELS"] = False # # Don't output an M5 command to stop the spindle after an M6 tool change by default. # values["STOP_SPINDLE_FOR_TOOL_CHANGE"] = False # # Don't output a G43 tool length command following tool changes by default. # values["USE_TLO"] = False values["UNITS"] = UNITS
def init_arguments_visible(arguments_visible): """Initialize which argument pairs are visible in TOOLTIP_ARGS.""" PostUtilsArguments.init_arguments_visible(arguments_visible)