Documentation
¶
Index ¶
- func OptBogusMoves(machine *vm.Machine)
- func OptDrillSpeed(machine *vm.Machine, feedrate float64, rapid bool)
- func OptFloatingZ(machine *vm.Machine, minDistOverZ float64)
- func OptLiftSpeed(machine *vm.Machine)
- func OptPathGrouping(machine *vm.Machine, tolerance float64) (err error)
- func OptPrepareTool(machine *vm.Machine)
- func OptVector(machine *vm.Machine, tolerance float64)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func OptBogusMoves ¶
Kills redundant partial moves. Calculates the unit-vector, and kills all incremental moves between A and B. Deprecated by OptVector.
func OptDrillSpeed ¶
OptDrillSpeed detects a previous drill, and uses rapid move or higher feedrate to the previous known depth. Scans through all Z-descent moves, logs its height, and ensures that any future move at that location will use vm.MoveModeRapid to go to the deepest previous known Z-height.
func OptFloatingZ ¶
OptFloatingZ eliminates any bogus moves above minDistOverZ, and makes the remaining move rapid.
The machine positions are searched in pairs. If any of the two positions are below minDistOverZ, the pair is left untouched. Otherwise, the first position in the pair is removed, the movemode is set to rapid, and the remaining position is paired up with the next position. This process repeats until there are no positions left.
func OptLiftSpeed ¶
Uses rapid move for all Z-up only moves. Scans all positions for moves that only change the z-axis in a positive direction, and sets the moveMode to vm.MoveModeRapid.
func OptPathGrouping ¶
Reduces moves between paths. It does this by scanning through position stack, grouping moves that move from >= Z0 to < Z0. These moves are then sorted after closest to previous position, starting at X0 Y0, and moves to groups recalculated as they are inserted in a new stack. This optimization pass bails if the Z axis is moved simultaneously with any other axis, or the input ends with the drill below Z0, in order to play it safe. This pass is new, and therefore slightly experimental.
func OptPrepareTool ¶
Types ¶
This section is empty.