Example #1
0
    def update_autolevel_matrix(probe_points, probe_heights):
        # TODO: Fix probe offset
        # offset_x = self.printer.config.getfloat('Probe', 'offset_x')
        # offset_y = self.printer.config.getfloat('Probe', 'offset_y')
        # offset_z = 0
        # offsets = {"X": offset_x, "Y": offset_y, "Z": offset_z}

        # measure_points = {key: probe_points[key] - offsets[key] for key in probe_points.keys()}

        mat = BedCompensation.create_rotation_matrix(probe_points, probe_heights)
        Path.matrix_bed_comp = mat
        Path.matrix_bed_comp_inv = np.linalg.inv(Path.matrix_bed_comp)
Example #2
0
    def update_autolevel_matrix(probe_points, probe_heights):
        #TODO: Fix probe offset
        #offset_x = self.printer.config.getfloat('Probe', 'offset_x')
        #offset_y = self.printer.config.getfloat('Probe', 'offset_y')
        #offset_z = 0
        #offsets = {"X": offset_x, "Y": offset_y, "Z": offset_z}

        #measure_points = {key: probe_points[key] - offsets[key] for key in probe_points.keys()}

        mat = BedCompensation.create_rotation_matrix(probe_points,
                                                     probe_heights)
        Path.matrix_bed_comp = mat
        Path.matrix_bed_comp_inv = np.linalg.inv(Path.matrix_bed_comp)
Example #3
0
 def update_autolevel_matrix(self, probe_points, probe_heights):
     """
     updates the bed compensation matrix
     """
     
     logging.debug("updating bed compensation matrix")        
     logging.debug("Probe points = " + str(probe_points))
     logging.debug("Probe heights = " + str(probe_heights))
     
     self.printer.matrix_bed_comp = BedCompensation.create_rotation_matrix(probe_points, probe_heights)
     
     self.native_planner.setBedCompensationMatrix(tuple(self.printer.matrix_bed_comp.ravel()))
     
     return
Example #4
0
    def execute(self, g):
        # Show matrix
        if g.has_letter("S"):
            self.printer.send_message(
                g.prot, "Current bed compensation matrix: {}".format(
                    json.dumps(self.printer.matrix_bed_comp.tolist())))

        # Update matrix
        elif g.has_letter("U"):
            mat = BedCompensation.create_rotation_matrix(
                self.printer.probe_points, self.printer.probe_heights)
            self.printer.matrix_bed_comp = mat
        # Reset matrix
        else:
            self.printer.matrix_bed_comp = np.identity(3)
Example #5
0
 def update_autolevel_matrix(probe_points, probe_heights):
     mat = BedCompensation.create_rotation_matrix(probe_points, probe_heights)
     Path.matrix_bed_comp = mat
     Path.matrix_bed_comp_inv = np.linalg.inv(Path.matrix_bed_comp)
Example #6
0
 def update_autolevel_matrix(probe_points, probe_heights):
     mat = BedCompensation.create_rotation_matrix(probe_points, probe_heights)
     Path.matrix_bed_comp = mat
     Path.matrix_bed_comp_inv = np.linalg.inv(Path.matrix_bed_comp)