$\textsf{\LARGE F}$

$\textsf{\LARGE r}$

Punto a punto

Una parábola se puede definir como el lugar geométrico de los puntos del plano
que equidistan de una recta r (directriz) y un punto F exterior a ella (foco).
Localizar un punto (el vértice) es fácil, pero, ¿cómo localizar los demás?

Lugar geométrico

¿Dónde está la parábola?

Podemos crear un punto con el que tantear el terreno,
y marcar aquellas posiciones en donde se igualen las distancias.
Es un trabajo muy didáctico, pero llega a resultar tedioso.

Podemos construir un punto genérico que cree el lugar geométrico,
pero esta construcción solo servirá para este caso o similares. 

VÉRTICE

Curva implícita (CAS)

X := (x, y) \                                                                                 
XF(x,y) :=Distancia(X, \; F)\
Xr(x,y) :=Distancia(X,  \; r)

GeoGebra usa algoritmos 
numéricos para crear esta 
curva implícita, por lo que 
en algunos casos pueden 
aparecer pequeños 
errores u omisiones.

XF − Xr = 0

Curvas paralelas

Offset móvil con rastro

F = (7.06, 3.6)
H = (4.25, 1)
G = (-1.5, 2)
r = Line(G, H)
e = Parabola(F, r)
d = 4 (slider from 0 to 4, step 0.01)
d': 4 - d
op2 = false
op3 = false
op1 = true
B = (2.75, 5)
N = Point(r)
M = Point(r)
h = OrthogonalLine(F, r)
A = Intersect(h, r)
I = Midpoint(F, A)
DD = Point(e, 0.77)
E = Point(e, 0.81)
C = Point(e, 0.7)
C' = Mirror(C, h)
DD' = Mirror(DD, h)
E' = Mirror(E, h)
J: (13.42, 6.5)
f = OrthogonalLine(J, r)
K = Intersect(f, r)
j = Segment(J, K)
k = Segment(F, J)
D = Point(Segment[M, N])
g = Segment(F, D)
l = LineBisector(g)
m = OrthogonalLine(D, r)
L = Intersect(l, m)
lugar1 = Locus(L, D)
α = Angle(N, D, L)
O = Intersect(g, l)
β = Angle(F, O, L)
op6 = false
ec1:=XF - Xr = 0
op4 = false
op5 = false
offset1 = Sequence(Translate[r, Vector[(k * UnitOrthogonalVector[r])]], k, 0, 20, 0.2)
offset2 = Sequence(Translate[r, Vector[((-k) * UnitOrthogonalVector[r])]], k, 0, 20, 0.2)
hL = Sequence(Circle[F, k], k, 0, 20, 0.2)
zip1a = RemoveUndefined(Zip[Intersect[c1, c2, 1], c1, hL, c2, offset1])
zip1b = RemoveUndefined(Zip[Intersect[c1, c2, 2], c1, hL, c2, offset1])
zip2a = RemoveUndefined(Zip[Intersect[c1, c2, 1], c1, hL, c2, offset2])
zip2b = RemoveUndefined(Zip[Intersect[c1, c2, 2], c1, hL, c2, offset2])
v: (d' * UnitOrthogonalVector[r])
offset1' = Translate(r, v)
offset2' = Translate(r, Vector[(-v)])
c = Circle(F, d')