def other_vec(): z_dir = np.array([0., 0, 1]) angles = [5, 20, 45, 80] rotated_vecs = [] for angle in angles: R = eyeproc.get_R(0, angle) rotated_vecs.append(np.dot(R, z_dir)) rotated_vecs = np.r_[rotated_vecs] return rotated_vecs, angles
def rotate_by_angle(vec, angle): if vec.ndim == 1: vec = np.expand_dims(vec, 1) if not hasattr(angle, '__iter__'): angle = [angle] rotated_vec = [] for a in angle: rotated_vec.append(np.dot(eyeproc.get_R(0, a), vec).T) rotated_vec = np.concatenate(rotated_vec, 0) return rotated_vec
def test_return_correct_version(self): expected_horz_versions = range(-18,18) expected_vert_versions = range(-18,18) expected_versions = [(h, v) for h in expected_horz_versions for v in expected_vert_versions] z_dir = np.array([0,0,100.]) fixation_pt = [] for v in expected_versions: R = eyeproc.get_R(*v) fixation_pt.append(np.dot(R,z_dir)) fixation_pt = np.r_[fixation_pt] horz_versions, vert_versions = self.calc_version(fixation_pt) expected_horz_versions = np.array([ h for h, v in expected_versions]) expected_vert_versions = np.array([v for h, v in expected_versions]) assert (horz_versions - expected_horz_versions < 1e-5).all() assert (vert_versions - expected_vert_versions < 1e-5).all()