Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public function load(ObjectManager $manager)
- {
- /** @var RoutingAPI $routingAPI */
- $routingAPI = $this->container->get('kugaudo.graphhopper.routingapi');
- $request = new RoutingRequest();
- $request
- ->addDestination('56.868141', '24.278851')
- ->addDestination('56.991073', '24.122267')
- ->setStartTime(\DateTime::createFromFormat('Y-m-d H:i:s', '2017-05-01 12:00:00'));
- $response = $routingAPI->fetchTrackingPoints($request);
- // do stuff with tracking points...
- foreach ($response->getTrackingPoints() as $tp) {
- echo $tp->getLatitude() . ', ' . $tp->getLongitude() . ': ' . $tp->getTime()->format('Y-m-d H:i:s') . "\n";
- }
- $gpx = $response->getTrackingPoints();
- $lastChecked = 1;
- $matrixPoints = 288;
- // for ($j = 0; $j < $matrixPoints; $j++) {
- // $time = \DateTime::createFromFormat('Y-m-d H:i:s', '2017-05-01 12:00:00');
- // while ($gpx[$lastChecked]->getTime() < $time) {
- // $lastChecked++;
- // }
- // $tp0 = $gpx[$lastChecked - 1];
- // $tp1 = $gpx[$lastChecked];
- //
- // $lat0 = $tp0->getLatitude();
- // $lng0 = $tp0->getLongitude();
- // $lat1 = $tp1->getLatitude();
- // $lng1 = $tp1->getLongitude();
- // $t0 = $tp0->getTime();
- // $t1 = $tp1->getTime();
- //
- // $length = $t1->diff($t0, true)->s;
- // $mod = $time->diff($t0, true)->s;
- //
- // $part = $mod / $length;
- //
- // $lat = $lat0 + $part * ($lat1 - $lat0);
- // $lng = $lng0 + $part * ($lng1 - $lng0);
- //
- // echo $lat.' '.$lng;
- // }
- //
- // for ($j = 0; $j < $matrixPoints; $j++) {
- // $time = \DateTime::createFromFormat('Y-m-d H:i:s', '2017-05-01 12:10:00');
- // while ($gpx[$lastChecked]->getTime() < $time) {
- // $lastChecked++;
- // }
- // $tp0 = $gpx[$lastChecked - 1];
- // $tp1 = $gpx[$lastChecked];
- //
- // $lat0 = $tp0->getLatitude();
- // $lng0 = $tp0->getLongitude();
- // $lat1 = $tp1->getLatitude();
- // $lng1 = $tp1->getLongitude();
- // $t0 = $tp0->getTime();
- // $t1 = $tp1->getTime();
- //
- // $length = $t1->diff($t0, true)->s;
- // $mod = $time->diff($t0, true)->s;
- //
- // $part = $mod / $length;
- //
- // $lat = $lat0 + $part * ($lat1 - $lat0);
- // $lng = $lng0 + $part * ($lng1 - $lng0);
- //
- // echo $lat.' '.$lng;
- // }
- for ($j = 0; $j < $matrixPoints; $j++) {
- $time = \DateTime::createFromFormat('Y-m-d H:i:s', '2017-05-01 12:20:00');
- while ($gpx[$lastChecked]->getTime() < $time) {
- $lastChecked++;
- }
- $tp0 = $gpx[$lastChecked - 1];
- $tp1 = $gpx[$lastChecked];
- $lat0 = $tp0->getLatitude();
- $lng0 = $tp0->getLongitude();
- $lat1 = $tp1->getLatitude();
- $lng1 = $tp1->getLongitude();
- $t0 = $tp0->getTime();
- $t1 = $tp1->getTime();
- $length = $t1->diff($t0, true)->s;
- $mod = $time->diff($t0, true)->s;
- $part = $mod / $length;
- $lat = $lat0 + $part * ($lat1 - $lat0);
- $lng = $lng0 + $part * ($lng1 - $lng0);
- //echo $lat.' '.$lng;
- }
- echo $lat.' '.$lng;
- $manager->flush();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement