skspatial.objects.Triangle.classify

Triangle.classify(**kwargs: float) str[source]

Classify the triangle as equilateral, isosceles, or scalene.

Parameters:
kwargsdict, optional

Additional keywords passed to math.isclose().

Returns:
str

‘equilateral’, ‘isosceles’, or ‘scalene’.

Examples

>>> import math
>>> from skspatial.objects import Triangle
>>> Triangle([0, 0], [1, 0], [1, 1]).classify()
'isosceles'
>>> Triangle([0, 0], [1, 0], [0, 1]).classify()
'isosceles'
>>> Triangle([0, 0], [1, 0], [0, 2]).classify()
'scalene'
>>> Triangle([0, 0], [1, 0], [0.5, math.sin(math.pi / 3)]).classify()
'equilateral'

This triangle is approximately equilateral.

>>> triangle = Triangle([0, 0], [1, 0], [0.5, 0.866])
>>> triangle.classify()
'isosceles'
>>> triangle.classify(rel_tol=1e-3)
'equilateral'