Esempio n. 1
0
 def min_distance(self, value):
     _u.validate_attr_numeric(self, "min_distance", value)
     _u.validate_attr_not_negative(self, "min_distance", value)
     self._min_distance = value
     self._log_property_changed("min_distance")
     if value < 20 and self._should_log(ttrk.log_warn):
         self._log_write(
             "WARNING: min_distance was set to a small value ({:}), this may result in incorrect directions",
             True)
Esempio n. 2
0
    def rotation(self, value):
        if self._preloaded:
            raise ttrk.InvalidStateError(
                "{:}.rotation cannot be set after the object was preloaded".
                format(_u.get_type_name(self)))

        _u.validate_attr_numeric(self, "rotation", value)
        value = value % 360
        self._rotation = value

        self._log_property_changed("rotation")
Esempio n. 3
0
    def onset_time(self, value):

        if value is not None:
            _u.validate_attr_is_collection(self, "onset_time", value, min_length=1)
            for i in range(len(value)):
                _u.validate_attr_numeric(self, "onset_time[%d]" % i, value[i])
                _u.validate_attr_not_negative(self, "onset_time[%d]" % i, value[i])

        self._onset_time = value
        self._onset_time_multiple = True
        self._log_property_changed("onset_time")
    def last_validated_rgb(self, value):
        if u.is_rgb(value):
            self._last_validated_rgb = u.color_rgb_to_num(value)
        else:
            if value is not None:
                _u.validate_attr_numeric(self, "last_validated_rgb", value)
                _u.validate_attr_not_negative(self, "last_validated_rgb",
                                              value)
            self._last_validated_rgb = value

        self._log_setter("last_validated_rgb")
    def min_angle(self, value):

        if value is None:
            self._min_angle = None
            self._min_angle_rad = None
            return

        _u.validate_attr_numeric(self, "min_angle", value)

        self._min_angle = value % 360
        self._min_angle_rad = self._min_angle / 360 * np.pi * 2

        self._log_property_changed("min_angle")
    def max_angle(self, value):

        if value is None:
            self._max_angle = None
            self._max_angle_rad = None
            return

        _u.validate_attr_numeric(self, "max_angle", value)

        self._max_angle = value % 360
        self._max_angle_rad = self._max_angle / 360 * np.pi * 2

        self._log_setter("max_angle")
Esempio n. 7
0
 def degrees_at_t0(self, value):
     value = _u.validate_attr_numeric(self,
                                      "degrees_at_t0",
                                      value,
                                      none_value=_u.NoneValues.ChangeTo0)
     self._degrees_at_t0 = value % 360
     self._log_property_changed("degrees_at_t0")
Esempio n. 8
0
    def duration(self, value):

        is_multiple = False

        if isinstance(value, numbers.Number):
            _u.validate_attr_positive(self, "duration", value)

        elif value is not None:
            is_multiple = True
            _u.validate_attr_is_collection(self, "duration", value, min_length=1)
            for i in range(len(value)):
                _u.validate_attr_numeric(self, "duration[%d]" % i, value[i])
                _u.validate_attr_positive(self, "duration[%d]" % i, value[i])

        self._duration = value
        self._duration_multiple = is_multiple
        self._log_property_changed("duration")
Esempio n. 9
0
    def position(self, value):
        if self._preloaded:
            raise ttrk.InvalidStateError(
                "{:}.position cannot be set after the object was preloaded".
                format(_u.get_type_name(self)))

        if value is None:
            self._position = None

        else:
            _u.validate_attr_is_collection(self, "size", value, 2, 2)
            _u.validate_attr_numeric(self, "size[0]", value[0])
            _u.validate_attr_numeric(self, "size[1]", value[1])

            self._position = (int(value[0]), int(value[1]))

        self._log_property_changed("position")
Esempio n. 10
0
 def zero_angle(self, value):
     _u.validate_attr_numeric(self, "zero_angle", value)
     self._zero_angle = value
     self._log_setter("zero_angle")
Esempio n. 11
0
 def max_movement_time(self, value):
     value = _u.validate_attr_numeric(self, "max_movement_time", value,
                                      _u.NoneValues.ChangeTo0)
     _u.validate_attr_positive(self, "max_movement_time", value)
     self._max_movement_time = value
     self._log_property_changed("max_movement_time")
Esempio n. 12
0
 def end_coord(self, value):
     _u.validate_attr_numeric(self, "end_coord", value,
                              _u.NoneValues.Invalid)
     self._end_coord = value
     self._log_property_changed("end_coord")
 def origin_coord(self, value):
     _u.validate_attr_numeric(self, "origin_coord", value,
                              _u.NoneValues.Invalid)
     self._origin_coord = value
     self._log_setter("origin_coord")
Esempio n. 14
0
 def max_curves_per_trial(self, value):
     _u.validate_attr_numeric(self, "max_curves_per_trial", value, none_value=_u.NoneValues.Valid)
     _u.validate_attr_not_negative(self, "max_curves_per_trial", value)
     self._max_curves_per_trial = value
Esempio n. 15
0
 def stay_duration(self, value):
     _u.validate_attr_numeric(self, "stay_duration", value, none_value=True)
     _u.validate_attr_not_negative(self, "stay_duration", value)
     self._stay_duration = value
     self._log_property_changed(self, "stay_duration")
Esempio n. 16
0
 def rotation(self, value):
     _u.validate_attr_numeric(self, "rotation", value)
     value = value % 360
     self._rotation = value
     self._rotation_radians = value / 180 * np.pi
 def max_valid_back_movement(self, value):
     _u.validate_attr_numeric(self, "max_valid_back_movement", value)
     _u.validate_attr_not_negative(self, "max_valid_back_movement", value)
     self._max_valid_back_movement = value
     self._log_setter("max_valid_back_movement")
 def calc_angle_interval(self, value):
     value = _u.validate_attr_numeric(self, "calc_angle_interval", value,
                                      _u.NoneValues.ChangeTo0)
     _u.validate_attr_not_negative(self, "calc_angle_interval", value)
     self._calc_angle_interval = value
     self._log_setter("calc_angle_interval")
Esempio n. 19
0
 def min_distance(self, value):
     _u.validate_attr_numeric(self, "min_distance", value)
     _u.validate_attr_not_negative(self, "min_distance", value)
     self._min_distance = value
     self._log_setter("min_distance")
 def end_coord(self, value):
     _u.validate_attr_numeric(self, "end_coord", value,
                              _u.NoneValues.Invalid)
     self._end_coord = value
     self._log_setter("end_coord")
Esempio n. 21
0
 def zero_angle(self, value):
     _u.validate_attr_numeric(self, "zero_angle", value)
     self._zero_angle = value
     self._log_property_changed("zero_angle")
 def max_trial_duration(self, value):
     value = _u.validate_attr_numeric(self, "max_trial_duration", value,
                                      _u.NoneValues.ChangeTo0)
     _u.validate_attr_positive(self, "max_trial_duration", value)
     self._max_trial_duration = value
     self._log_setter("max_trial_duration")
 def grace_period(self, value):
     value = _u.validate_attr_numeric(self, "grace_period", value,
                                      _u.NoneValues.ChangeTo0)
     _u.validate_attr_not_negative(self, "grace_period", value)
     self._grace_period = value
     self._log_setter("grace_period")
Esempio n. 24
0
 def min_angle_change_per_curve(self, value):
     _u.validate_attr_numeric(self, "min_angle_change_per_curve", value)
     _u.validate_attr_not_negative(self, "min_angle_change_per_curve",
                                   value)
     self._min_angle_change_per_curve = value
     self._log_setter("min_angle_change_per_curve")
Esempio n. 25
0
 def zoom_duration(self, value):
     _u.validate_attr_numeric(self, "zoom_duration", value)
     _u.validate_attr_positive(self, "zoom_duration", value)
     self._zoom_duration = value
     self._log_property_changed(self, "zoom_duration")
 def max_valid_back_movement(self, value):
     _u.validate_attr_numeric(self, "max_valid_back_movement", value)
     _u.validate_attr_not_negative(self, "max_valid_back_movement", value)
     self._max_valid_back_movement = value
     self._log_property_changed("max_valid_back_movement")