


simtb_inpoly() - Tests whether a point is inside a polygon
Determine whether a series of points lie within the bounds of a polygon
in the 2D plane. General non-convex, multiply-connected polygonal
regions can be handled.
SHORT SYNTAX:
in = inpoly(p,node);
p : The points to be tested as an Nx2 array [x1 y1; x2 y2; etc].
node: The vertices of the polygon as an Mx2 array [X1 Y1; X2 Y2; etc].
The standard syntax assumes that the vertices are specified in
consecutive order.
in : An Nx1 logical array with IN(i) = TRUE if P(i,:) lies within the
region.
LONG SYNTAX:
[in,on] = inpoly(p,node,edge);
edge: An Mx2 array of polygon edges, specified as connections between
the vertices in NODE: [n1 n2; n3 n4; etc]. The vertices in NODE
do not need to be specified in connsecutive order when using the
extended syntax.
on : An Nx1 logical array with ON(i) = TRUE if P(i,:) lies on a
polygon edge. (A tolerance is used to deal with numerical
precision, so that points within a distance of
eps^0.8*norm(node(:),inf) from a polygon edge are considered "on"
the edge.
EXAMPLE:
polydemo; % Will run a few examples
See also INPOLYGON