Functions useful for working with shapes in the (X, Y) plane.
polyLine( x, xys, ... )
x
defined by straight line segments between a
specified list of vertices.
The vertices are specified as a sequence of
Xi, Yi pairs,
for which the Xi values must be monotonic.
The line segment at each end of the specified point sequence
is considered to be extended to infinity.
If only two points are specified, this is the equation of a
straight line between those points.
As a special case, if only one point is specified, the line
is considered to be a horizontal line (equal to the sole specified
Yi coordinate for all x
).
By reversing the Xi and Yi values,
this function can equally be used to represent a function
X(y)
rather than Y(x)
.
If the number of coordinates is odd, or the Xi values are not monotonic, behaviour is undefined.
x
(floating point): X value at which function is to be evaluatedxys
(floating point, one or more): 2N arguments (x1
, y1
,
x2
, y2
, ...,
xN
, yN
)
giving vertices of an N-point line
with monotonically increasing or decreasing X valuesx
polyLine(5, 0,0, 2,2) = 5
isInside( x, y, xys, ... )
If the number of coordinates is odd, the behaviour is not defined.
x
(floating point): X coordinate of test pointy
(floating point): Y coordinate of test pointxys
(floating point, one or more): 2N arguments (x1
, y1
,
x2
, y2
, ...,
xN
, yN
)
giving vertices of an N-sided polygonisInside(0.5,0.5, 0,0, 0,1, 1,1, 1,0) = true
isInside(0,0, array(10,20, 20,20, 20,10)) = false