Example Usage

Classes/Properties/Methods

LinearEntity
Properties Methods
 
[static] are_concurrent(l1, l2, ..., ln)
[static] are_parallel(l1, l2)
[static] are_perpendicular(l1, l2)
parallel_line(self, p)
perpendicular_line(self, p)
perpendicular_segment(self, p)
projection(self, p)

Line (inherits from LinearEntity)
Properties Methods
coefficients (a tuple of the coefficients a,b,c in ax + by + c = 0)
points (the points that originally defined this line)
slope
arbitrary_point(self)
equation(self, xaxis_name='x', yaxis_name='y')
random_point(self)

Ray (inherits from LinearEntity)
Properties Methods
source
random_point(self)

Segment (inherits from LinearEntity)
Properties Methods
length
midpoint
random_point(self)
perpendicular_bisector(self, p=None)

Ellipse
Properties Methods
horizontal_radius
vertical_radius
center
area
circumference
tangent_line(self, p)
is_tangent(self, o)
arbitrary_point(self)
random_point(self)
equation(self, xaxis_name='x', yaxis_name='y')

Circle (inherits from Ellipse)
Properties Methods
radius

Polygon
Properties Methods
area
centroid
perimeter
sides
vertices

RegularPolygon (inherits from Polygon)
Properties Methods
apothem
center
circumcircle
exterior_angle
incircle
interior_angle
radius

Triangle (inherits from Polygon)
Properties Methods
altitudes (returns a dictionary of [point, segment] pairs)
orthocenter
circumcenter
circumradius
circumcircle
bisectors (returns a dictionary of [point, segment] pairs)
incenter
inradius
incircle
medians (returns a dictionary of [point, segment] pairs)
medial
[static] are_similar(t1, t2)
is_equilateral(self)
is_right(self)

Module Level Functions
intersection(e1, e2)
convex_hull(p1, p2, ..., pn)