SSS Similarity Theorem

Author

Eric W. Weisstein
August 16, 2026

This notebook downloaded from https://mathworld.wolfram.com/notebooks/PlaneGeometry/SSSSimilarityTheorem.nb.

For more information, see Eric's MathWorld entry https://mathworld.wolfram.com/SSSSimilarityTheorem.html.

©2026 Wolfram Research, Inc. except for portions noted otherwise

Figure

The second triangle is a rotated, translated, and scaled copy of the first, with all corresponding side lengths in the common ratio k.

Module[{blue, k, labelPositions, labels1, labels2, neutral, sideLabels, triangle1, triangle2},
	triangle1 = {{-3., -1.}, {-0.3, -1.}, {-2.1, 1.2}};
	k = 0.65;
	triangle2 = (k RotationTransform[0.45][# - triangle1[[1]]] + {0.7, -0.8} &) /@ triangle1;
	neutral = LightDarkSwitched[Black, White];
	blue = Blue;
	labelPositions[triangle_] := (# + 0.2 Normalize[# - Mean[triangle]] &) /@ triangle;
	sideLabels[triangle_, labels_, color_] := Module[{center, edges, positions},
		center = Mean[triangle];
		edges = {{triangle[[2]], triangle[[3]]}, {triangle[[3]], triangle[[1]]},
			{triangle[[1]], triangle[[2]]}};
		positions = (Mean[#] + 0.2 Normalize[Mean[#] - center] &) /@ edges;
		MapThread[Text[Style[#1, 16, color, FontFamily -> "Times", FontSlant -> "Italic"], #2] &,
			{labels, positions}]
	];
	labels1 = {"A", "B", "C"};
	labels2 = {"A'", "B'", "C'"};
	Graphics[{
		Directive[neutral, AbsoluteThickness[2]], Line[Append[triangle1, First[triangle1]]],
		Directive[blue, AbsoluteThickness[2.5]], Line[Append[triangle2, First[triangle2]]],
		MapThread[Text[Style[#1, 16, neutral, FontFamily -> "Times", FontSlant -> "Italic"], #2] &,
			{labels1, labelPositions[triangle1]}],
		MapThread[Text[Style[#1, 16, blue, FontFamily -> "Times", FontSlant -> "Italic"], #2] &,
			{labels2, labelPositions[triangle2]}],
		sideLabels[triangle1, {"a", "b", "c"}, neutral],
		sideLabels[triangle2, {"ka", "kb", "kc"}, blue]
	}]
]