diff options
author | Kevin O'Connor <kevin@koconnor.net> | 2020-08-16 22:43:03 -0400 |
---|---|---|
committer | Kevin O'Connor <kevin@koconnor.net> | 2020-08-20 21:03:22 -0400 |
commit | 2caaaea9a4bdd55846cdcf24b0efba60bcdfbd51 (patch) | |
tree | ca1d47ac706e350bc2dfdfa0c5553dbd674f6acb /klippy/extras/probe.py | |
parent | b9ac6d63069974a90a3740eaf2a3e5ae81e35470 (diff) | |
download | kutter-2caaaea9a4bdd55846cdcf24b0efba60bcdfbd51.tar.gz kutter-2caaaea9a4bdd55846cdcf24b0efba60bcdfbd51.tar.xz kutter-2caaaea9a4bdd55846cdcf24b0efba60bcdfbd51.zip |
toolhead: Add a manual_move() helper function
Add a helper function for submitting relative movements. This
function will also automatically ensure gcode.reset_last_position() is
called.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'klippy/extras/probe.py')
-rw-r--r-- | klippy/extras/probe.py | 22 |
1 files changed, 6 insertions, 16 deletions
diff --git a/klippy/extras/probe.py b/klippy/extras/probe.py index 539a6572..d97a5e7f 100644 --- a/klippy/extras/probe.py +++ b/klippy/extras/probe.py @@ -125,13 +125,7 @@ class PrinterProbe: % (pos[0], pos[1], pos[2])) return pos[:3] def _move(self, coord, speed): - toolhead = self.printer.lookup_object('toolhead') - curpos = toolhead.get_position() - for i in range(len(coord)): - if coord[i] is not None: - curpos[i] = coord[i] - toolhead.move(curpos, speed) - self.gcode.reset_last_position() + self.printer.lookup_object('toolhead').manual_move(coord, speed) def _calc_mean(self, positions): count = float(len(positions)) return [sum([pos[i] for pos in positions]) / count @@ -354,24 +348,20 @@ class ProbePointsHelper: if not self.results: # Use full speed to first probe position speed = self.speed - curpos = toolhead.get_position() - curpos[2] = self.horizontal_move_z - toolhead.move(curpos, speed) + toolhead.manual_move([None, None, self.horizontal_move_z], speed) # Check if done probing if len(self.results) >= len(self.probe_points): - self.gcode.reset_last_position() toolhead.get_last_move_time() res = self.finalize_callback(self.probe_offsets, self.results) if res != "retry": return True self.results = [] # Move to next XY probe point - curpos[:2] = self.probe_points[len(self.results)] + nextpos = list(self.probe_points[len(self.results)]) if self.use_offsets: - curpos[0] -= self.probe_offsets[0] - curpos[1] -= self.probe_offsets[1] - toolhead.move(curpos, self.speed) - self.gcode.reset_last_position() + nextpos[0] -= self.probe_offsets[0] + nextpos[1] -= self.probe_offsets[1] + toolhead.manual_move(nextpos, self.speed) return False def start_probe(self, gcmd): manual_probe.verify_no_manual_probe(self.printer) |