P(b)

P(c)

A = (-1.8167147411391966, 1.5599595987295771)
B = (16.31670385533222, 1.7031181665964574)
C = (9.380490289241129, 9.642603740889852)
polígono1, c, a, b = Polygon(A, B, C)
X_{15} = TriangleCenter(A, B, C, 15)
X_{16} = TriangleCenter(A, B, C, 16)
d = Circle(A, X_{15}, X_{16})
P = Point(d)
g = Line(B, P)
h = Line(C, P)
P_c = puntoRazon(P, C, -c, c + Distance[C, P])
P'_c = puntoRazon(P, C, -c, c - Distance[C, P])
e = Circle(P, b)
f = Circle(P, c)
P'_b = puntoRazon(P, B, -b, b - Distance[B, P])
P_b = puntoRazon(P, B, -b, b + Distance[B, P])
k = Circle(P_c, P_b, C)
p = Circle(P'_c, P'_b, B)

Tool: TrianguloETC
Dar el vértice A
Input: A_{etc}
Output: B_{etc}, C_{etc}, a, polígono1

c = Circle(A_{etc}, 13)
B_{etc} = Point(c)
d = Circle(A_{etc}, 9)
e = Circle(B_{etc}, 6)
C_{etc} = Intersect(d, e, 1)
polígono1, c_{etc}, a_{etc}, b_{etc} = Polygon(A_{etc}, B_{etc}, C_{etc})
a = Line(B_{etc}, C_{etc})

Tool: Coordenadas Trilineales (command CoordenadasTrilineales)
Dar los vértices de ABC y un  punto P
Input: A, B, C, P
Output: texto2, CoordTrilineales

q_1 = Segment(B, P)
e = Line(A, C)
E_1 = Intersect(e, q_1)
d = Line(C, B)
p_1 = Segment(A, P)
D_1 = Intersect(d, p_1)
ABC, c, a, b = Polygon(A, B, C)
e_1 = OrthogonalLine(P, a)
D = Intersect(e_1, d)
p = Segment(P, D)
α = If(Defined[D_1], -p, p)
f_1 = OrthogonalLine(P, b)
g = OrthogonalLine(P, c)
f = Line(A, B)
E = Intersect(f_1, e)
F = Intersect(g, f)
r_1 = Segment(P, C)
q = Segment(P, E)
r = Segment(P, F)
F_1 = Intersect(f, r_1)
β = If(Defined[E_1], -q, q)
γ = If(Defined[F_1], -r, r)
CoordTrilineales: {α, β, γ}
texto2: "" + CoordTrilineales + ""

Tool: puntoRazon
Punto X que divide al segmento de extremos P y Q, según una razón  dada, PX : XQ = m : n
Input: P, Q, m, n
Output: X

X = Dilate(Q, m / (m + n), P)