Example: api.rst — The trianglelib API reference¶
Routines for working with triangles.
The two modules inside of this package are packed with useful features for the programmer who needs to support triangles:
shape
- This module provides a full-fledged Triangle object that can be instantiated and then asked to provide all sorts of information about its properties.
utils
- For the programmer in a hurry, this module offers quick functions that take as arguments the three side lengths of a triangle, and perform a quick computation without the programmer having to make the extra step of creating an object.
The “shape” module¶
-
class
trianglelib.shape.
Triangle
(a, b, c)[source]¶ A triangle is a three-sided polygon.
You instantiate a
Triangle
by providing exactly three lengthsa
,b
, andc
. They can either be intergers or floating-point numbers, and should be listed clockwise around the triangle. If the three lengths cannot make a valid triangle, thenValueError
will be raised instead.>>> from trianglelib.shape import Triangle >>> t = Triangle(3, 4, 5) >>> print t.is_equilateral() False >>> print t.area() 6.0
Triangles support the following attributes, operators, and methods.
-
triangle1 == triangle2
Returns true if the two triangles have sides of the same lengths, in the same order. Note that it is okay if the two triangles happen to start their list of sides at a different corner;
3,4,5
is the same triangle as4,5,3
but neither of these are the same triangle as their mirror image5,4,3
.
-
The “utils” module¶
Routines to test triangle properties without explicit instantiation.
-
trianglelib.utils.
compute_area
(a, b, c)[source]¶ Return the area of the triangle with side lengths a, b, and c.
If the three lengths provided cannot be the sides of a triangle, then the area 0 is returned.
-
trianglelib.utils.
compute_perimeter
(a, b, c)[source]¶ Return the perimeer of the triangle with side lengths a, b, and c.
If the three lengths provided cannot be the sides of a triangle, then the perimeter 0 is returned.
-
trianglelib.utils.
is_equilateral
(a, b, c)[source]¶ Return whether lengths a, b, and c are an equilateral triangle.