

 
Manual Reference Pages  MATH::POLYGON::SURFACE (3)
.ds Aq ’
NAME
Math::Polygon::Surface  Polygon with exclusions
CONTENTS
SYNOPSIS
my $outer = Math::Polygon>new( [1,2], [2,4], [5,7], [1,2] );
my $surface = Math::Polygon::Surface>new($outer);
DESCRIPTION
A surface is one polygon which represents the outer bounds of an
array, plus optionally a list of polygons which represent exclusions
from that outer polygon.
METHODS
Constructors
$obj><B>newB>([%options], [$polygons], %options)


Math::Polygon::Surface><B>newB>([%options], [$polygons], %options)

You may add %options after and/or before the $polygons. You may also use
the outer and inner options. $polygons are references to ARRAYs of points,
each an ARRAY of X and Y, but better instantiated Math::Polygon objects.
OptionDefault
inner []
outer undef

inner => ARRAYOFPOLYGONS

The inner polygons, zero or more Math::Polygon objects.

outer => POLYGON

The outer polygon, a Math::Polygon.




Attributes
$obj><B>innerB>()

Returns a list (often empty) of inner polygons.

$obj><B>outerB>()

Returns the outer polygon.


Simple calculations
<B>areaB>()

Returns the area enclosed by the outer polygon, minus the areas of the
inner polygons.
See method Math::Polygon::area().

$obj><B>bboxB>()

Returns a list with four elements: (xmin, ymin, xmax, ymax), which describe
the bounding box of the surface, which is the bbox of the outer polygon.
See method Math::Polygon::bbox().

$obj><B>perimeterB>()

The length of the border: sums outer and inner perimeters.
See method Math::Polygon::perimeter().


Clipping
$obj><B>fillClip1B>($box)

Clipping a polygon into rectangles can be done in various ways.
With this algorithm, the parts of the polygon which are outside
the $box are mapped on the borders.
All polygons are treated separately.

$obj><B>lineClipB>($box)

Returned is a list of ARRAYSOFPOINTS containing line pieces
from the input surface. Lines from outer and inner polygons are
undistinguishable.
See method Math::Polygon::lineClip().

$obj><B>stringB>()

Translate the surface structure into some string. Use Geo::WKT if you
need a standardized format.
Returned is a single string possibly containing multiple lines. The first
line is the outer, the other lines represent the inner polygons.


DIAGNOSTICS
Error: surface requires outer polygon



SEE ALSO
This module is part of MathPolygon distribution version 1.03,
built on January 21, 2014. Website: http://perl.overmeer.net/geo/
LICENSE
Copyrights 2004,20062014 by [Mark Overmeer]. For other contributors see ChangeLog.
This program is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.
See http://www.perl.com/perl/misc/Artistic.html
perl v5.20.3  MATH::POLYGON::SURFACE (3)  20140121 
Visit the GSP FreeBSD Man Page Interface. Output converted with manServer 1.07. 