Comments (4)
What do you mean with “extend”? Does the following sketch show the wanted values of ((latMin, latMax), (lngMin, lngMax))
?
from phpgeo.
Yes, you correctly understood what I meant.
Here is another schema if needed:
from phpgeo.
It should be easy to do using phpgeo's destination point calculation:
<?php
use Location\Bearing\BearingEllipsoidal;
use Location\Coordinate;
require_once __DIR__ . '/vendor/autoload.php';
$berlin = new Coordinate(52.5, 13.5);
$distance = 10000; // 10 km
$bearingEllipsoidal = new BearingEllipsoidal();
$northernMost = $bearingEllipsoidal->calculateDestination($berlin, 0, $distance);
$easternMost = $bearingEllipsoidal->calculateDestination($berlin, 90, $distance);
$southernMost = $bearingEllipsoidal->calculateDestination($berlin, 180, $distance);
$westernMost = $bearingEllipsoidal->calculateDestination($berlin, 270, $distance);
printf(
'latMax=%f, latMin=%f, lngMax=%f, lngMin=%f%s',
$northernMost->getLat(),
$southernMost->getLat(),
$easternMost->getLng(),
$westernMost->getLng(),
PHP_EOL
);
// verify the results:
$distCalc = new \Location\Distance\Vincenty();
printf(
'dN=%f, dS=%f, dE=%f, dW=%f%s',
$berlin->getDistance($northernMost, $distCalc),
$berlin->getDistance($southernMost, $distCalc),
$berlin->getDistance($easternMost, $distCalc),
$berlin->getDistance($westernMost, $distCalc),
PHP_EOL
);
The code above will produce the output below:
latMax=52.589865, latMin=52.410133, lngMax=13.647253, lngMin=13.352747
dN=10000.000000, dS=10000.000000, dE=10000.000000, dW=10000.000000
from phpgeo.
Thanks @mjaschen, It works like a charm !
from phpgeo.
Related Issues (20)
- Geofence from point HOT 1
- Polygon area calculation HOT 1
- It doesn't support multipolygon ? HOT 2
- Warning emitted for valid coordinates in CoordinateFactory HOT 2
- Feature: Simplify Polygon HOT 2
- "Longitude value must be numeric" bad exception HOT 4
- Library Use HOT 1
- Calculate cardinal direction distances between two coordinates HOT 2
- Division by zero in BearingEllipsoidal.php on line 206 HOT 5
- Find all objects within specific Distance HOT 2
- Add support for PHP 8.1
- Remove support for PHP 7.2
- Add deprecations for version 5.0
- PHP Fatal error: Uncaught Error: Class "Location\Coordinate" not found in ....
- Build errors in PHP 8.x
- Explanation of warning for non-geo wiz
- Point directions
- Point-to-line distance is incorrect sometimes HOT 6
- Merging multiple adjacent rectangles into one polygon
- Line::intersectsLine() is buggy HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from phpgeo.