MGH_POLYCLIP Name
MGH_POLYCLIP Purpose
Clip an arbitrary polygon on the X-Y plane to a line parallel
to the X or Y axis using the Sutherland-Hodgman algorithm.
Category
Graphics, Region of Interest, Geometry
Calling Sequence
result = MGH_POLYCLIP(clip, dir, neg, polin, COUNT=count)
Return Value
The function returns the clipped polygon as a [2,n] array. The
second dimension will equal the value of the COUNT argument, except
where COUNT is 0 in which case the return value is -1.
Positional Parameters
cval (input, numeric sclar)
The value of X or Y at which clipping is to occur
dir (input, integer scalar)
Specifies whether clipping value is an X (dir = 0) or Y (dir =
1) value.
neg (input, integer scalar)
Set this argument to 1 to clip to the negtive side, 0 to clip to
the positive side.
polin (input, floating array)
A [2,m] vector defining the polygon to be clipped.
Keyword Parameters
COUNT (output, integer)
The number of vertices in the clipped polygon.
Procedure
The polygon is clipped using the Sutherland-Hodgman algorithm.
This function is based on JD Smith's implementation of the
Sutherland-Hodgman algorithm in his POLYCLIP function. He can
take all of the credit and none of the blame.
###########################################################################
This software is provided subject to the following conditions:
1. NIWA makes no representations or warranties regarding the
accuracy of the software, the use to which the software may
be put or the results to be obtained from the use of the
software. Accordingly NIWA accepts no liability for any loss
or damage (whether direct of indirect) incurred by any person
through the use of or reliance on the software.
2. NIWA is to be acknowledged as the original author of the
software where the software is used or presented in any form.
###########################################################################
Modification History
Mark Hadfield, 2001-10:
Written, based on JD Smith's POLYClIP.