# How to construct the Nagel point of a triangle with GeometricScene?

Let us consider the Nagel point of a triangle. According to this article,"There exists an easy construction of the Nagel point. Starting from each vertex of a triangle, it suffices to carry twice the length of the opposite edge. We obtain three lines which concur at the Nagel point". Can it be realized in Mathematica? I make only

GeometricScene[{a, b, c}, {Triangle[{a, b, c}]}]


It is unclear to me how "to carry twice the length of the opposite edge".

Try

RandomInstance[GeometricScene[{a, b, c, s, i,n},
{s == TriangleCenter[{a, b, c}, "Centroid"],i == TriangleCenter[{a, b, c}, "Incenter"], n == 3 s - 2 i,
Point[s], Point[i], Point[n], Triangle[{a, b, c}]}], 1]


Addition made by user 64494 for the user's convenience. See German Wiki where Norm[n-s]:2 Norm[s-i]==2:1 is stated.

• A good code is a commented code. Could you comment your code, giving us more details? In particular. what is your n? Commented Feb 18, 2022 at 13:02
• The Wiki article writes only "The Nagel point, the centroid, and the incenter are collinear on a line called the Nagel line". Commented Feb 18, 2022 at 13:09
• n is the nagelpoint. German wiki and you as OP too, states  Norm[n-s]:2 Norm[s-i]==2:1 Commented Feb 18, 2022 at 13:15
• Thank you. Unfortunately, the relation n == 2 s - i implies the relation n - s == s - i so the lengths of n - s and s - i are equal, whereas de.wikipedia.org/wiki/Nagel-Punkt says this ratio equals $2$. Commented Feb 18, 2022 at 13:41
• I modified n== 3 s-2 i in my answer Commented Feb 18, 2022 at 13:54

Here we don't provide an updated answer since @user64494 always make unreasonable demands.

int = 6;
RandomInstance[
GeometricScene[{a, b, c, i, tc, Tc, ta, Ta, tb, Tb,
n}, {i == RegionCentroid@Insphere[{a, b, c}],
GeometricAssertion[Triangle[{a, b, c}], "Counterclockwise"],
RegionMember[Line[{a, b}], tc],
RegionMember[Insphere[{a, b, c}], tc], tc - a == b - Tc,
RegionMember[Line[{b, c}], ta],
RegionMember[Insphere[{a, b, c}], ta], ta - b == c - Ta,
RegionMember[Line[{c, a}], tb],
RegionMember[Insphere[{a, b, c}], tb], tb - c == a - Tb,
RegionMember[Line[{a, Ta}], n], RegionMember[Line[{b, Tb}], n],
RegionMember[Line[{c, Tc}], n]}], RandomSeeding -> int]


int=39;
RandomInstance[
GeometricScene[{{a, b, c, Ia, Ta, Ib, Tb, Ic, Tc, n}, {ra, rb, rc}},
{GeometricAssertion[Triangle[{a, b, c}], "Counterclockwise"],
PlanarAngle[b -> {Ia, c}] == (π - PlanarAngle[b -> {c, a}])/2,
PlanarAngle[c -> {b, Ia}] == (π - PlanarAngle[c -> {a, b}])/2,
GeometricAssertion[{Circle[Ia, ra], Line[{b, c}]}, {"Tangent", Ta}],
PlanarAngle[c -> {Ib, a}] == (π - PlanarAngle[c -> {a, b}])/2,
PlanarAngle[a -> {c, Ib}] == (π - PlanarAngle[a -> {b, c}])/2,
GeometricAssertion[{Circle[Ib, rb], Line[{c, a}]}, {"Tangent", Tb}],
PlanarAngle[a -> {Ic, b}] == (π - PlanarAngle[a -> {b, c}])/2,
PlanarAngle[b -> {a, Ic}] == (π - PlanarAngle[b -> {c, a}])/2,
GeometricAssertion[{Circle[Ic, rc], Line[{a, b}]}, {"Tangent", Tc}],
Line[{a, n, Ta}], Line[{b, n, Tb}], Line[{c, n, Tc}]
}], RandomSeeding -> int]


int = 13;
RandomInstance[GeometricScene[{a, b, c, i, Ta, Tb, Tc, Ia, Ib, Ic, n},
{GeometricAssertion[Triangle[{a, b, c}], "Counterclockwise"],
i == TriangleCenter[{a, b, c}, "Incenter"],
PlanarAngle[a -> {i, Ib}] == \[Pi]/2,
PlanarAngle[b -> {i, Ic}] == \[Pi]/2,
PlanarAngle[c -> {i, Ia}] == \[Pi]/2,
Line[{Ib, a, Ic}], Line[{Ic, b, Ia}], Line[{Ia, c, Ib}],
PlanarAngle[Ta -> {b, Ia}] = \[Pi]/2,
PlanarAngle[Tb -> {c, Ib}] = \[Pi]/2,
PlanarAngle[Tc -> {a, Ic}] = \[Pi]/2,
RegionMember[Line[{a, b}], Tc],
RegionMember[Line[{b, c}], Ta],
RegionMember[Line[{c, a}], Tb],
Line[{a, n, Ta}], Line[{b, n, Tb}], Line[{c, n, Tc}]}],
RandomSeeding -> int]


• +1. A good work. Can you shortly comment your code in order to accept your answer? A good code is a commented code. Commented Feb 18, 2022 at 14:27
• BTW, Russian Wiki says there are four Nagel points. Commented Feb 18, 2022 at 14:35
• If unnecessary i == RegionCentroid@Insphere[{a, b, c}] is omitted, then RandomInstance[ GeometricScene[{a, b, c, ab, ba, bc, cb, ca, ac, n}, {Triangle[{a, b, c}], RegionMember[Line[{a, b}], ab], RegionMember[Insphere[{a, b, c}], ab], ba - b == a - ab, RegionMember[Line[{b, c}], bc], RegionMember[Insphere[{a, b, c}], bc], bc - b == c - cb, RegionMember[Line[{c, a}], ca], RegionMember[Insphere[{a, b, c}], ca], ca - c == a - ac, RegionMember[Line[{a, cb}], n], RegionMember[Line[{b, ac}], n], RegionMember[Line[{c, ba}], n]}]] produces an unclear result Commented Feb 18, 2022 at 14:46
• @user64494 For example RandomInstance[...,RandomSeeding -> 11] Commented Feb 18, 2022 at 15:03
• cvgmt(@ does not work): Thank you, RandomSeeding -> 11 does work. I repeat can you extend the comment to your code to be understandable to an average user? In particular, what do RegionMember and RandomSeed->11 do? Commented Feb 18, 2022 at 15:18
RandomInstance[GeometricScene[{A,B,C,P},
{P==With[{a=Norm[B-C],b=Norm[C-A],c=Norm[A-B]},({-a+b+c,a-b+c,a+b-c}/(a+b+c)). {A,B,C}],
Triangle[{A,B,C}]}]
]


• +1. A good code is a commented code. Do you apply barycentric coordinates? Commented Feb 19, 2022 at 12:22