In sintesi, se tu sei già in possesso dei dati in ingresso che rispettano tutti i vincoli: \[
(x_A,y_A), \quad \quad (x_B,y_B), \quad \quad (x_C,y_C), \quad \quad (x_D,y_D), \quad \quad r
\] ti basta schiaffare il seguente muro di assegnazioni in un qualsiasi foglio di calcolo: \[
\begin{aligned}
&u_A=(x_A-x_D)/r\\
&v_A=(y_A-y_D)/r\\
\\
&u_B=(x_B-x_D)/r\\
&v_B=(y_B-y_D)/r\\
\\
&u_C=(x_C-x_D)/r\\
&v_C=(y_C-y_D)/r\\
\\
&a=((1+u_B)v_C-(1+u_C)v_B)v_A+(1+u_A)v_Bv_C-(1+u_A)(1+u_B)(1-u_C)\\
&b=(1-u_Bu_C-v_Bv_C)v_A+(1-u_Au_C)v_B-(1-u_Au_B)v_C\\
&c=((1-u_B)v_C-(1-u_C)v_B)v_A+(1-u_A)v_Bv_C-(1-u_A)(1-u_B)(1+u_C)\\
\\
&e_1=(-b+\sqrt{b^2-ac}\,)/a\\
&f_1=(u_A+e_1v_A-1)/((1+u_A)e_1-v_A)\\
&g_1=(u_B+e_1v_B-1)/((1+u_B)e_1-v_B)\\
\\
&x_{E1}=x_D+r(1-e_1^2)/(1+e_1^2)\\
&y_{E1}=y_D+r(2e_1)/(1+e_1^2)\\
\\
&x_{F1}=x_D+r(1-f_1^2)/(1+f_1^2)\\
&y_{F1}=y_D+r(2f_1)/(1+f_1^2)\\
\\
&x_{G1}=x_D+r(1-g_1^2)/(1+g_1^2)\\
&y_{G1}=y_D+r(2g_1)/(1+g_1^2)\\
\\
&e_2=(-b-\sqrt{b^2-ac}\,)/a\\
&f_2=(u_A+e_2v_A-1)/((1+u_A)e_2-v_A)\\
&g_2=(u_B+e_2v_B-1)/((1+u_B)e_2-v_B)\\
\\
&x_{E2}=x_D+r(1-e_2^2)/(1+e_2^2)\\
&y_{E2}=y_D+r(2e_2)/(1+e_2^2)\\
\\
&x_{F2}=x_D+r(1-f_2^2)/(1+f_2^2)\\
&y_{F2}=y_D+r(2f_2)/(1+f_2^2)\\
\\
&x_{G2}=x_D+r(1-g_2^2)/(1+g_2^2)\\
&y_{G2}=y_D+r(2g_2)/(1+g_2^2)\\
\end{aligned}
\] per ottenere le coordinate esatte sia di \(\color{red}{E_1F_1G_1}\) che di \(\color{blue}{E_2F_2G_2}\). Circa l'immagine allegata, l'ho ottenuta proprio nel modo qui illustrato in Wolfram Mathematica, ma Microsoft Excel andava ugualmente bene.
- Seppur sia l'unica maniera che ti permette di dominare i calcoli e non il contrario. ↑