gscrib.enums
G-code specific modes and parameter types.
This module contains enumeration classes that define different machine
states, options, and configurations for G-code generation. Each enum
value is linked to a specific G-Code instruction and a description, which
are stored in the codes.codes_table. The GCodeBuilder class
uses this table to create the appropriate G-code statements.
- class gscrib.enums.Axis(*values)
Bases:
BaseEnumCoordinate system axes.
- X = 'x'
- Y = 'y'
- Z = 'z'
- class gscrib.enums.BaseEnum(new_class_name, /, names, *, module=None, qualname=None, type=None, start=1, boundary=None)
-
Base for all the G-Code enumerations.
- class gscrib.enums.BedTemperature(*values)
Bases:
BaseEnumTemperature modes for the bed.
- classmethod from_units(units)
- Parameters:
units (TemperatureUnits)
- CELSIUS = 'celsius'
- KELVIN = 'kelvin'
- class gscrib.enums.ChamberTemperature(*values)
Bases:
BaseEnumTemperature modes for the chamber.
- classmethod from_units(units)
- Parameters:
units (TemperatureUnits)
- CELSIUS = 'celsius'
- KELVIN = 'kelvin'
- class gscrib.enums.CoolantMode(*values)
Bases:
BaseEnumCoolant modes for the machine.
- FLOOD = 'flood'
- MIST = 'mist'
- OFF = 'off'
- class gscrib.enums.DirectWrite(*values)
Bases:
BaseEnumCommunication mode for direct machine control.
- OFF = 'off'
- SERIAL = 'serial'
- SOCKET = 'socket'
- class gscrib.enums.Direction(*values)
Bases:
BaseEnumDirections for interpolated moves.
- enforce(angle)
Enforce the direction of an angular move.
For
CLOCKWISEdirection, ensures the angle is negative. ForCOUNTER(counter-clockwise) direction, ensures the angle is positive. If the angle already has the correct sign, it is returned unchanged. Otherwise, adds or subtracts 2 * PI to flip the direction while maintaining the same final position.
- full_turn()
Returns a signed full rotation (±2π) based on direction.
- Returns:
2π for counter-clockwise, -2π for clockwise
- Return type:
- CLOCKWISE = 'clockwise'
- COUNTER = 'counter'
- class gscrib.enums.DistanceMode(*values)
Bases:
BaseEnumPositioning mode for machine movement.
- ABSOLUTE = 'absolute'
- RELATIVE = 'relative'
- class gscrib.enums.ExtrusionMode(*values)
Bases:
BaseEnumPositioning mode for the extruder.
- ABSOLUTE = 'absolute'
- RELATIVE = 'relative'
- class gscrib.enums.FanMode(*values)
Bases:
BaseEnumFan modes for the machine.
- COOLING = 'cooling'
- OFF = 'off'
- class gscrib.enums.FeedMode(*values)
Bases:
BaseEnumFeed rate mode for machine movement.
- INVERSE_TIME = '1/time'
- UNITS_PER_MINUTE = 'units/min'
- UNITS_PER_REVOLUTION = 'units/rev'
- class gscrib.enums.HaltMode(*values)
Bases:
BaseEnumProgram termination and pause modes.
- END_WITHOUT_RESET = 'end-without-reset'
- END_WITH_RESET = 'end-with-reset'
- OFF = 'off'
- OPTIONAL_PAUSE = 'optional-pause'
- PALLET_EXCHANGE = 'pallet-exchange'
- PAUSE = 'pause'
- WAIT_FOR_BED = 'wait-for-bed'
- WAIT_FOR_CHAMBER = 'wait-for-chamber'
- WAIT_FOR_HOTEND = 'wait-for-hotend'
- WAIT_FOR_MOTION = 'wait-for-motion'
- class gscrib.enums.HotendTemperature(*values)
Bases:
BaseEnumTemperature modes for the hotend.
- classmethod from_units(units)
- Parameters:
units (TemperatureUnits)
- CELSIUS = 'celsius'
- KELVIN = 'kelvin'
- class gscrib.enums.LengthUnits(*values)
Bases:
BaseEnumUnits of length measurement.
- scale(value_in_px)
Scale a value in pixels to this unit
- to_pixels(value_in_units)
Scale a value in this unit to pixels
- INCHES = 'inches'
- MILLIMETERS = 'millimeters'
- class gscrib.enums.Plane(*values)
Bases:
BaseEnumWorking planes for machine operations.
- normal()
Return the normal vector of the plane.
- XY = 'xy'
- YZ = 'yz'
- ZX = 'zx'
- class gscrib.enums.PositioningMode(*values)
Bases:
BaseEnumProgram positioning modes.
- HOME = 'home'
- LINEAR = 'linear'
- OFFSET = 'offset'
- RAPID = 'rapid'
- class gscrib.enums.PowerMode(*values)
Bases:
BaseEnumBeam tool powe mode
- CONSTANT = 'constant'
- DYNAMIC = 'dynamic'
- OFF = 'off'
- class gscrib.enums.ProbingMode(*values)
Bases:
BaseEnumProgram probing modes.
- AWAY = 'away'
- AWAY_NO_ERROR = 'away-no-error'
- TOWARDS = 'towards'
- TOWARDS_NO_ERROR = 'towards-no-error'
- class gscrib.enums.QueryMode(*values)
Bases:
BaseEnumQuery device state modes.
- POSITION = 'position'
- TEMPERATURE = 'temperature'
- class gscrib.enums.SpinMode(*values)
Bases:
BaseEnumSpindle rotation direction and state.
- CLOCKWISE = 'clockwise'
- COUNTER = 'counter'
- OFF = 'off'
- class gscrib.enums.TemperatureUnits(*values)
Bases:
BaseEnumUnits of temperature.
- CELSIUS = 'celsius'
- KELVIN = 'kelvin'