geometry_tools.utils.cp1

 1import numpy as np
 2
 3def fs_ctr_to_aff_ctr(fs_center, fs_radius):
 4    fs_center_norm = np.abs(fs_center)
 5    fs_normalized_ctr = fs_center / fs_center_norm
 6
 7    zmin = np.tan(np.arctan(fs_center_norm) - fs_radius)
 8    zmax = np.tan(np.arctan(fs_center_norm) + fs_radius)
 9
10    return fs_normalized_ctr * (zmin + zmax) / 2
11
12def aff_ctr_to_fs_ctr(aff_center, aff_radius):
13    aff_center_norm = np.abs(aff_center)
14    return np.tan((np.arctan(aff_center_norm + aff_radius) +
15                   np.arctan(aff_center_norm - aff_radius)) / 2)
def fs_ctr_to_aff_ctr(fs_center, fs_radius):
 4def fs_ctr_to_aff_ctr(fs_center, fs_radius):
 5    fs_center_norm = np.abs(fs_center)
 6    fs_normalized_ctr = fs_center / fs_center_norm
 7
 8    zmin = np.tan(np.arctan(fs_center_norm) - fs_radius)
 9    zmax = np.tan(np.arctan(fs_center_norm) + fs_radius)
10
11    return fs_normalized_ctr * (zmin + zmax) / 2
def aff_ctr_to_fs_ctr(aff_center, aff_radius):
13def aff_ctr_to_fs_ctr(aff_center, aff_radius):
14    aff_center_norm = np.abs(aff_center)
15    return np.tan((np.arctan(aff_center_norm + aff_radius) +
16                   np.arctan(aff_center_norm - aff_radius)) / 2)