NV5 GEOSPATIAL SOFTWARE
>  Docs Center  >  Libraries  >  Motley  >  MGH_POLYCLIP2

MGH_POLYCLIP2

MGH_POLYCLIP2

## Purpose

Clip an arbitrary polygon on the X-Y plane to a line of arbitrary
orientation using the Sutherland-Hodgman algorithm.

## Category

Graphics, Region of Interest, Geometry

## Calling Sequence

result = MGH_POLYCLIP2(clip, poly, COUNT=count)

## Positional Parameters

poly (input, floating array)
A [2,m] vector defining the polygon to be clipped.
clip (input, 3-element numeric vector)
This parameter describes the line to be clipped to. The polygon is
clipped to the half-plane (clip[0] x + clip[1] y + clip[2]) < 0.

## Keyword Parameters

COUNT (output, integer)
The number of vertices in the clipped polygon.

## 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.

## Procedure

The polygon is clipped using the Sutherland-Hodgman algorithm.
This function is similar to MGH_POLYCLIP, which was written first
& clips to vertical or horizontal lines only. It turns out that
MGH_POLYCLIP2 is competitive with MGH_POLYCLIP in terms of speed
so the former may supersede the latter.
Both polygon-clipping functions are based on JD Smith's
implementation of the Sutherland-Hodgman algorithm in his POLYCLIP
function. He can take most 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.
###########################################################################