Clear[a, b, c, i, j, g]
SeedRandom[1542]
Set up your equations and solve them:
equations = {
2 (Array[i, 2] - Array[a, 2]) + (Array[i, 2] - Array[b, 2]) == 0,
(Array[j, 2] - Array[b, 2]) - 2 (Array[j, 2] - Array[c, 2]) == 0,
2 (Array[g, 2] - Array[a, 2]) + (Array[g, 2] - Array[b, 2]) - 2 (Array[g, 2] - Array[c, 2]) == 0
} // Simplify;
solutions = ToRules@Reduce[equations, Evaluate@Flatten@{Array[#, 2] & /@ {a, b, c, i, j, g}}];
Choose some random values for $A,B,C$ and calculate the corresponding $I,J,G$ using the rules obtained above:
Evaluate[Array[#, 2] & /@ {a, b, c}] = RandomReal[1, {3, 2}];
Array[#, 2] & /@ {i, j, g} /. solutions;
Create a graphical representation:
Show[
(* plot points *)
ListPlot[
MapThread[
{Labeled[Array[#1, 2], Style[#2, 16]]} &,
{
{a, b, c, i, j, g},
{"a", "b", "c", "i", "j", "g"}
}
] /. solutions,
PlotStyle -> PointSize[0.02]
],
(* add triangle and lines *)
Graphics[{
EdgeForm[{Thick, Black}], FaceForm[None],
Triangle[Array[#, 2] & /@ {a, b, c}],
{
(*IA, IB*)
Red, Line[Array[#, 2] & /@ {i, a}],
Blue, Line[Array[#, 2] & /@ {i, b}],
Purple,(*JB, JC*)
Line[Array[#, 2] & /@ {j, b}], Line[Array[#, 2] & /@ {j, c}],
Darker@Green,(*GA, GB, GC*)
Line[Array[#, 2] & /@ {g, a}],
Line[Array[#, 2] & /@ {g, b}],
Line[Array[#, 2] & /@ {g, c}]
} /. solutions
}],
PlotRange -> All
]
