Manual

190 Geometry
Example:
harmonic_division(point(0, 0), point(3, 0),
point(4, 0), p) returns point(12/5, 0) and stores it
in the variable p
is_harmonic
Tests whether or not 4 points are in a harmonic division or
range. Returns 1 if they are or 0 otherwise.
is_harmonic(point1, point2, point3, point4)
is_harmonic(point1, point2, point3, point4)
Example:
is_harmonic(point(0, 0), point(3, 0),
point(4, 0), point(12/5, 0)) returns 1
is_harmonic_circle_bundle
Returns 1 if the circles build a beam, 2 if they have the same
center, 3 if they are the same circle and 0 otherwise.
is_harmonic_circle_bundle({circle1, circle2,
…, circlen})
is_harmonic_line_bundle
Returns 1 if the lines are concurrent, 2 if they are all parallel,
3 if they are the same line and 0 otherwise.
is_harmonic_line_bundle({line1, line2, …,
linen}))
is_rhombus
Tests whether or not a set of four points are vertices of a
rhombus. Returns 0 if they are not, 1 if they are, and 2 if they
are vertices of a square.
is_rhombus(point1, point2, point3, point4)
Example:
is_rhombus(point(0,0), point(-2,2),
point(0,4), point(2,2)) returns 2