NAME
Geo::Location::Point - Location information
VERSION
Version 0.10
SYNOPSIS
Geo::Location::Point stores a place.
use Geo::Location::Point;
my $location = Geo::Location::Point->new(latitude => 0.01, longitude => -71);
SUBROUTINES/METHODS
new
$location = Geo::Location::Point->new({ latitude => 0.01, longitude => -71 });
Takes one optional argument 'key' which is an API key for https://timezonedb.com for looking up timezone data.
lat
print 'Latitude: ', $location->lat(), "\n";
print 'Longitude: ', $location->long(), "\n";
latitude
Synonym for lat().
long
print 'Latitude: ', $location->lat(), "\n";
print 'Longitude: ', $location->long(), "\n";
longitude
Synonym for long().
distance
Determine the distance between two locations, returns a Class::Measure::Length object.
equal
Are two points the same?
my $loc1 = Geo::Location::Point->new(lat => 2, long => 2);
my $loc2 = Geo::Location::Point->new(lat => 2, long => 2);
print ($loc1 == $loc2), "\n"; # Prints 1
not_equal
Are two points different?
my $loc1 = Geo::Location::Point->new(lat => 2, long => 2);
my $loc2 = Geo::Location::Point->new(lat => 2, long => 2);
print ($loc1 != $loc2), "\n"; # Prints 0
tz
Returns the timezone of the location.
timezone
Synonym for tz().
as_string
Prints the object in human-readable format.
attr
Get/set location attributes, e.g. city
$location->city('London');
$location->country('UK');
print $location->as_string(), "\n";
print "$location\n"; # Calls as_string
Because of the way that the cache works, the location() value is cleared by this, so you may wish to manually all location() afterwards to set the value.
AUTHOR
Nigel Horne <njh@bandsman.co.uk>
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
BUGS
SEE ALSO
GIS::Distance, Geo::Point, TimeZone::TimeZoneDB.
LICENSE AND COPYRIGHT
Copyright 2019-2023 Nigel Horne.
The program code is released under the following licence: GPL2 for personal use on a single computer. All other users (including Commercial, Charity, Educational, Government) must apply in writing for a licence for use from Nigel Horne at `<njh at nigelhorne.com>`.