Cónica: dado la distancia focal, un foco y dos tangentes

$c$

$F$

$t_1$

$t_2$

$S_1$

$S_2$

$F(2c)$

$F_1$

$F_2$

$P_{11}$

$P_{21}$

$O_1$

$P'_{11}$

$P'_{21}$

$P_{12}$

$P_{22}$

$O_2$

$P'_{12}$

$P'_{22}$

A = (-5.586700323904169, 5.7526847836361314)
B = (9.68, 5.38)
a = Ray(A, B)
C = Point(a)
c = Segment(A, C)
F = (1.4755769215255523, 2.441433913984104)
D = (0.6218950566933882, 6.270067732019261)
E = (10.684993402745262, -1.5682839359851488)
t_1 = Line(D, E)
G = (-3.3619536458567105, -3.0945636337153806)
H = (9.871513800963974, 0.6817575135571152)
t_2 = Line(G, H)
S_1 = Mirror(F, t_1)
S_2 = Mirror(F, t_2)
b = LineBisector(S_1, S_2)
d = Circle(F, 2 * c)
F_1, F_2 = Intersect(d, b)
e = Line(F_1, S_1)
P_{11} = Intersect(t_1, e)
f = Line(F_1, S_2)
P_{21} = Intersect(f, t_2)
O_1 = Midpoint(F_1, F)
P'_{11} = Mirror(P_{11}, O_1)
P'_{21} = Mirror(P_{21}, O_1)
g, I = ConicaCuatroPuntosTangente(t_1, P_{11}, P'_{21}, P'_{11}, P_{21})
h = Line(S_1, F_2)
P_{12} = Intersect(h, t_1)
i = Line(S_2, F_2)
P_{22} = Intersect(i, t_2)
O_2 = Midpoint(F_2, F)
P'_{12} = Mirror(P_{12}, O_2)
P'_{22} = Mirror(P_{22}, O_2)
k, J = ConicaCuatroPuntosTangente(t_1, P_{12}, P_{22}, P'_{12}, P'_{22})

Tool: Parabola DireccionEje Punto TangenteEnPunto (command ParabolaDireccionEjePuntoTangenteEnPunto)
Dar un vector (dircción del eje), un punto, una tangente y el punto de tangencia
Input: u, P_1, t_P, P
Output: p

Dirección del eje

P = Point(t_P)
b = Line(P, u)
c = Line(P_1, u)
d = Circle(P_1, P)
E, F = Intersect(d, c)
e = AngularBisector(E, P_1, P)
G = Intersect(e, b)
H = Intersect(t_P, c)
f = Segment(H, G)
g = Line(P, f)
I = Intersect(e, g)
h = AngularBisector(P, P_1, F)
J = Intersect(b, h)
i = Segment(H, J)
j = Line(P, i)
K = Intersect(h, j)
k = AngularBisector(I, P_1, P)
L = Intersect(b, k)
l = Segment(H, L)
m = Line(P, l)
O = Intersect(k, m)
p = Conic(P_1, I, O, P, K)

Tool: Conica Cuatro Puntos Tangente (command ConicaCuatroPuntosTangente)
Dar una tangente, el punto de tangencia y tres puntos más
Input: t_P, P, P_1, P_3, P_2
Output: h, X

δ

Recta de Pascal

P = Point(t_P)
a = Line(P_2, P_3)
L = Intersect(a, t_P)
b = Line(L, P_1)
c = Line(P, P_2)
d = Line(P_3, P_1)
M = Intersect(c, d)
e = Line(M, L)
f = Line(P, P_3)
N = Intersect(e, f)
g = Line(P_2, N)
X = Intersect(b, g)
h = Conic(X, P_2, P, P_3, P_1)

Tool: Conica Directriz Tres Puntos (command ConicaDirectrizTresPuntos)
Dar una recta y tres puntos
Input: d, P_1, P_2, P_3
Output: p, t

b = Line(P_1, P_2)
c = Line(P_1, P_3)
M_3 = Intersect(c, d)
M_2 = Intersect(b, d)
C = Midpoint(P_1, P_2)
D = Midpoint(P_3, P_1)
d_1 = Circle(C, P_1)
e = Circle(D, P_3)
f = Polar(M_2, d_1)
g = Polar(M_3, e)
N_2 = Intersect(f, b)
N_3 = Intersect(c, g)
G = Midpoint(N_2, M_2)
H = Midpoint(M_3, N_3)
h = Circle(H, M_3)
k = Circle(G, M_2)
F_2, F_1 = Intersect(h, k)
i = OrthogonalLine(F_1, d)
j = OrthogonalLine(F_2, d)
P_{32} = Mirror(P_3, j)
P_{22} = Mirror(P_2, j)
t = Conic(P_1, P_3, P_{22}, P_2, P_{32})
P_{31} = Mirror(P_3, i)
P_{21} = Mirror(P_2, i)
p = Conic(P_2, P_{21}, P_{31}, P_3, P_1)