NAME

Geo::ShapeFile::Point - Geo::ShapeFile utility class.

SYNOPSIS

use Geo::ShapeFile::Point;
use Geo::ShapeFile;

my $point = new Geo::ShapeFile::Point(X => 12345, Y => 54321);

ABSTRACT

This is a utility class, used by Geo::ShapeFile.

DESCRIPTION

This is a utility class, used by Geo::ShapeFile to represent point data, you should see the Geo::ShapeFile documentation for more information.

EXPORT

Nothing.

IMPORT NOTE

This module uses overloaded operators to allow you to use == or eq to compare two point objects. By default points are considered to be equal only if their X, Y, Z, and M attributes are equal. If you want to exclude the Z or M attributes when comparing, you should use comp_includes_z or comp_includes_m when importing the object. Note that you must do this before you load the Geo::ShapeFile module, or it will pass it's own arguments to import, and you will get the default behavior:

DO:

use Geo::ShapeFile::Point comp_includes_m => 0, comp_includes_z => 0;
use Geo::ShapeFile;

DONT:

use Geo::ShapeFile;
use Geo::ShapeFile::Point comp_includes_m => 0, comp_includes_z => 0;
(Geo::ShapeFile already imported Point for you)

METHODS

new(X => $x, Y => $y)

Creates a new Geo::ShapeFile::Point object, takes a has consisting of X, Y, Z, and/or M values to be assigned to the point.

X() Y() Z() M()

Set/retrieve the X, Y, Z, or M values for this object.

x_min() x_max() y_min() y_max()
z_min() z_max() m_min() m_max()

These methods are provided for compatibility with Geo::ShapeFile::Shape, but for points simply return the X, Y, Z, or M coordinates as appropriate.

distance_from($point)

Returns the distance between this point and the specified point. Only considers the two-dimensional distance, altitude is not included in the calculation.

angle_to($point);

Returns the angle (in degress) from this point to some other point.

SEE ALSO

Geo::ShapeFile

AUTHOR

Jason Kohles, <email@jasonkohles.com<gt>

COPYRIGHT AND LICENSE

Copyright 2002,2003 by Jason Kohles

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.