1 def execute(eyetracker):
7 import tobii_research
as tr
9 calibration = tr.ScreenBasedCalibration(eyetracker)
12 calibration.enter_calibration_mode()
13 print(
"Entered calibration mode for eye tracker with serial number {0}.".format(eyetracker.serial_number))
17 points_to_calibrate = [(0.5, 0.5), (0.1, 0.1), (0.1, 0.9), (0.9, 0.1), (0.9, 0.9)]
19 for point
in points_to_calibrate:
20 print(
"Show a point on screen at {0}.".format(point))
25 print(
"Collecting data at {0}.".format(point))
26 if calibration.collect_data(point[0], point[1]) != tr.CALIBRATION_STATUS_SUCCESS:
29 calibration.collect_data(point[0], point[1])
31 print(
"Computing and applying calibration.")
32 calibration_result = calibration.compute_and_apply()
33 print(
"Compute and apply returned {0} and collected at {1} points.".
34 format(calibration_result.status, len(calibration_result.calibration_points)))
37 recalibrate_point = (0.1, 0.1)
38 print(
"Removing calibration point at {0}.".format(recalibrate_point))
39 calibration.discard_data(recalibrate_point[0], recalibrate_point[1])
42 print(
"Show a point on screen at {0}.".format(recalibrate_point))
43 calibration.collect_data(recalibrate_point[0], recalibrate_point[1])
46 print(
"Computing and applying calibration.")
47 calibration_result = calibration.compute_and_apply()
48 print(
"Compute and apply returned {0} and collected at {1} points.".
49 format(calibration_result.status, len(calibration_result.calibration_points)))
54 calibration.leave_calibration_mode()
56 print(
"Left calibration mode.")