2017 © Pedro Peláez
 

library laravel-geometry

Wrapper over the geoPHP Class to make it integrate with Laravel better.

image

spinen/laravel-geometry

Wrapper over the geoPHP Class to make it integrate with Laravel better.

  • Friday, March 23, 2018
  • by thaisonle
  • Repository
  • 5 Watchers
  • 19 Stars
  • 13,365 Installations
  • PHP
  • 1 Dependents
  • 0 Suggesters
  • 2 Forks
  • 0 Open issues
  • 16 Versions
  • 9 % Grown

The README.md

SPINEN's Laravel Geometry

Latest Stable Version Total Downloads Latest Unstable Version License, (*1)

Wrapper over the geoPHP Class to make it integrate with Laravel better., (*2)

Build Status

Branch Status Coverage Code Quality
Develop Build Status Code Coverage Scrutinizer Code Quality
Master Build Status Code Coverage Scrutinizer Code Quality

Prerequisite

NOTES

1) If you need to use < php7.2, please stay with version 1.x

2) Aside from Laravel >= 5.5, the package below is required


Install

Install Geometry:, (*3)

    $ composer require spinen/laravel-geometry

The package uses the auto registration feature., (*4)


Using the package

The Geometry Class exposes parseType methods where "Type" is StudlyCase of the geometry type that geoPHP supports. Here is a full list..., (*5)

  • parseEwkb($geometry)
  • parseEwkt($geometry)
  • parseGeoHash($geometry)
  • parseGeoJson($geometry)
  • parseGeoRss($geometry)
  • parseGoogleGeocode($geometry)
  • parseGpx($geometry)
  • parseJson($geometry)
  • parseKml($geometry)
  • parseWkb($geometry)
  • parseWkt($geometry)

The geometries are wrapped in a Spinen\Geometry\Geometries namespace with a little sugar to be able to do, (*6)

  • toEwkb()
  • toEwkt()
  • toGeoHash()
  • toGeoJson()
  • toGeoRss()
  • toGoogleGeocode()
  • toGpx()
  • toJson()
  • toKml()
  • toWkb()
  • toWkt()

In addition to the above export methods, we have added a toArray that gives an array from the toJson method. For convenience, we have exposed all of the properties of the geometry through a getter, so you have direct access to the property without having ask for the keys in the array., (*7)


Area of the polygon

We are estimating the area in meters squared & acres. We expect the estimation to be within 1%, so it is not very accurate. We essentially refactored a js method that Mapbox has in their geojson-area package . You get the area by calling the getAcres or getSquareMeters. There is a shortcut to them as properties, so you can read the "acres" or "square_meters" property., (*8)


Example

// Area of Polygon
$points = [[1,1], [2,2], [3,2], [3,4]];

$geoJson = '{"type":"Polygon", "coordinates":[' . json_encode($points) . ']}';

$geo = new geoPHP();
$mapper = new Spinen\Geometry\Support\TypeMapper();
$geometry = new Spinen\Geometry\Geometry($geo, $mapper);

$collection = $geometry->parseGeoJson($geoJson); // see above for more parse options

$squareMeters = $collection->getSquareMeters();
$acres = $collection->getAcres();

The Versions

23/03 2018

dev-develop

dev-develop

Wrapper over the geoPHP Class to make it integrate with Laravel better.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Jimmy Puckett
by Thai-Son Le

laravel library geometry spinen geophp

23/03 2018

dev-master

9999999-dev

Wrapper over the geoPHP Class to make it integrate with Laravel better.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Jimmy Puckett
by Thai-Son Le

laravel library geometry spinen geophp

23/03 2018

1.0.0

1.0.0.0

Wrapper over the geoPHP Class to make it integrate with Laravel better.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Jimmy Puckett
by Thai-Son Le

laravel library geometry spinen geophp

17/03 2018

dev-feature/support5.6

dev-feature/support5.6

Wrapper over the geoPHP Class to make it integrate with Laravel better.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Jimmy Puckett
by Thai-Son Le

laravel library geometry spinen geophp

22/02 2018

0.7.0

0.7.0.0

Wrapper over the geoPHP Class to make it integrate with Laravel better.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Jimmy Puckett
by Thai-Son Le

laravel library geometry spinen geophp

01/08 2017

0.6.0

0.6.0.0

Wrapper over the geoPHP Class to make it integrate with Laravel better.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Jimmy Puckett
by Thai-Son Le

laravel library geometry spinen geophp

08/02 2017

0.5.0

0.5.0.0

Wrapper over the geoPHP Class to make it integrate with Laravel better.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Jimmy Puckett
by Thai-Son Le

laravel library geometry spinen geophp

24/08 2016

0.4.0

0.4.0.0

Wrapper over the geoPHP Class to make it integrate with Laravel better.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Jimmy Puckett
by Thai-Son Le

laravel library geometry spinen geophp

27/06 2016

0.3.1

0.3.1.0

Wrapper over the geoPHP Class to make it integrate with Laravel better.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Jimmy Puckett
by Thai-Son Le

laravel library geometry spinen geophp

27/06 2016

0.3.0

0.3.0.0

Wrapper over the geoPHP Class to make it integrate with Laravel better.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Jimmy Puckett
by Thai-Son Le

laravel library geometry spinen geophp

03/02 2016

0.2.0

0.2.0.0

Wrapper over the geoPHP Class to make it integrate with Laravel better.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Jimmy Puckett
by Thai-Son Le

laravel library geometry spinen geophp

18/11 2015

0.1.4

0.1.4.0

Wrapper over the geoPHP Class to make it integrate with Laravel better.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Jimmy Puckett
by Thai-Son Le

laravel library geometry spinen geophp

12/11 2015

0.1.3

0.1.3.0

Wrapper over the geoPHP Class to make it integrate with Laravel better.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Jimmy Puckett
by Thai-Son Le

laravel library geometry spinen geophp

10/11 2015

0.1.2

0.1.2.0

Wrapper over the geoPHP Class to make it integrate with Laravel better.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Jimmy Puckett
by Thai-Son Le

laravel library geometry spinen geophp

10/11 2015

0.1.1

0.1.1.0

Wrapper over the geoPHP Class to make it integrate with Laravel better.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Jimmy Puckett
by Thai-Son Le

laravel library geometry spinen geophp

10/11 2015

0.1.0

0.1.0.0

Wrapper over the geoPHP Class to make it integrate with Laravel better.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Jimmy Puckett
by Thai-Son Le

laravel library geometry spinen geophp