How to use the routingpy.matrix.Matrix function in routingpy

To help you get started, we’ve selected a few routingpy examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github gis-ops / routing-py / tests / test_mapbox_osrm.py View on Github external
responses.GET,
            'https://api.mapbox.com/directions-matrix/v1/mapbox/{}/{}'.format(query['profile'], coords),
            status=200,
            json=ENDPOINTS_RESPONSES['mapbox_osrm']['matrix'],
            content_type='application/json'
        )

        matrix = self.client.matrix(**query)

        self.assertEqual(1, len(responses.calls))
        self.assertURLEqual(
            'https://api.mapbox.com/directions-matrix/v1/mapbox/driving/8.688641,49.420577;8.680916,49.415776;8.780916,49.445776?'
            'access_token=sample_key&annotations=distance%2Cduration&fallback_speed=50',
            responses.calls[0].request.url
        )
        self.assertIsInstance(matrix, Matrix)
        self.assertIsInstance(matrix.distances, list)
        self.assertIsInstance(matrix.durations, list)
        self.assertIsInstance(matrix.raw, dict)
github gis-ops / routing-py / routingpy / routers / graphhopper.py View on Github external
def _parse_matrix_json(response):
        if response is None:  # pragma: no cover
            return Matrix()
        durations = response.get('times')
        distances = response.get('distances')

        return Matrix(durations=durations, distances=distances, raw=response)
github gis-ops / routing-py / routingpy / routers / valhalla.py View on Github external
def _parse_matrix_json(response, units):
        if response is None:  # pragma: no cover
            return Matrix()

        factor = 0.621371 if units == 'mi' else 1
        durations = [
            [destination['time'] for destination in origin] for origin in response['sources_to_targets']
        ]
        distances = [
            [int(destination['distance'] * 1000 * factor)
             for destination in origin]
            for origin in response['sources_to_targets']
        ]

        return Matrix(durations=durations, distances=distances, raw=response)
github gis-ops / routing-py / routingpy / routers / heremaps.py View on Github external
def _parse_matrix_json(response):
        if response is None:  # pragma: no cover
            return Matrix()

        durations = []
        distances = []
        index_durations = []
        index_distances = []

        next_ = None
        mtx_objects = response['response']['matrixEntry']
        l = len(mtx_objects)
        for index, obj in enumerate(mtx_objects):
            if index < (l - 1):
                next_ = mtx_objects[index + 1]

            if 'travelTime' in obj['summary']:
                index_durations.append(obj['summary']['travelTime'])
            else:
github gis-ops / routing-py / routingpy / routers / google.py View on Github external
def _parse_matrix_json(response):
        if response is None:  # pragma: no cover
            return Matrix()

        durations = [
            [destination['duration']['value']
             for destination in origin['elements']]
            for origin in response['rows']
        ]
        distances = [
            [destination['distance']['value']
             for destination in origin['elements']]
            for origin in response['rows']
        ]

        return Matrix(durations, distances, response)
github gis-ops / routing-py / routingpy / routers / valhalla.py View on Github external
def _parse_matrix_json(response, units):
        if response is None:  # pragma: no cover
            return Matrix()

        factor = 0.621371 if units == 'mi' else 1
        durations = [
            [destination['time'] for destination in origin] for origin in response['sources_to_targets']
        ]
        distances = [
            [int(destination['distance'] * 1000 * factor)
             for destination in origin]
            for origin in response['sources_to_targets']
        ]

        return Matrix(durations=durations, distances=distances, raw=response)
github gis-ops / routing-py / routingpy / routers / graphhopper.py View on Github external
def _parse_matrix_json(response):
        if response is None:  # pragma: no cover
            return Matrix()
        durations = response.get('times')
        distances = response.get('distances')

        return Matrix(durations=durations, distances=distances, raw=response)
github gis-ops / routing-py / routingpy / routers / mapbox_osrm.py View on Github external
def _parse_matrix_json(response):
        if response is None:  # pragma: no cover
            return Matrix()

        return Matrix(
            durations=response.get('durations'), distances=response.get('distances'), raw=response
        )
github gis-ops / routing-py / routingpy / routers / heremaps.py View on Github external
else:
                index_durations.append(obj['summary']['costfactor'])

            if 'distance' in obj['summary']:
                index_distances.append(obj['summary']['distance'])

            if next_['startIndex'] > obj['startIndex']:
                durations.append(index_durations)
                distances.append(index_distances)
                index_durations = []
                index_distances = []

        durations.append(index_durations)
        distances.append(index_distances)

        return Matrix(durations=durations, distances=distances, raw=response)