LocationServiceRoutesV2 / Client / calculate_isolines

calculate_isolines#

LocationServiceRoutesV2.Client.calculate_isolines(**kwargs)#

Use the CalculateIsolines action to find service areas that can be reached in a given threshold of time, distance.

See also: AWS API Documentation

Request Syntax

response = client.calculate_isolines(
    Allow={
        'Hot': True|False,
        'Hov': True|False
    },
    ArrivalTime='string',
    Avoid={
        'Areas': [
            {
                'Except': [
                    {
                        'BoundingBox': [
                            123.0,
                        ],
                        'Corridor': {
                            'LineString': [
                                [
                                    123.0,
                                ],
                            ],
                            'Radius': 123
                        },
                        'Polygon': [
                            [
                                [
                                    123.0,
                                ],
                            ],
                        ],
                        'PolylineCorridor': {
                            'Polyline': 'string',
                            'Radius': 123
                        },
                        'PolylinePolygon': [
                            'string',
                        ]
                    },
                ],
                'Geometry': {
                    'BoundingBox': [
                        123.0,
                    ],
                    'Corridor': {
                        'LineString': [
                            [
                                123.0,
                            ],
                        ],
                        'Radius': 123
                    },
                    'Polygon': [
                        [
                            [
                                123.0,
                            ],
                        ],
                    ],
                    'PolylineCorridor': {
                        'Polyline': 'string',
                        'Radius': 123
                    },
                    'PolylinePolygon': [
                        'string',
                    ]
                }
            },
        ],
        'CarShuttleTrains': True|False,
        'ControlledAccessHighways': True|False,
        'DirtRoads': True|False,
        'Ferries': True|False,
        'SeasonalClosure': True|False,
        'TollRoads': True|False,
        'TollTransponders': True|False,
        'TruckRoadTypes': [
            'string',
        ],
        'Tunnels': True|False,
        'UTurns': True|False,
        'ZoneCategories': [
            {
                'Category': 'CongestionPricing'|'Environmental'|'Vignette'
            },
        ]
    },
    DepartNow=True|False,
    DepartureTime='string',
    Destination=[
        123.0,
    ],
    DestinationOptions={
        'AvoidActionsForDistance': 123,
        'Heading': 123.0,
        'Matching': {
            'NameHint': 'string',
            'OnRoadThreshold': 123,
            'Radius': 123,
            'Strategy': 'MatchAny'|'MatchMostSignificantRoad'
        },
        'SideOfStreet': {
            'Position': [
                123.0,
            ],
            'UseWith': 'AnyStreet'|'DividedStreetOnly'
        }
    },
    IsolineGeometryFormat='FlexiblePolyline'|'Simple',
    IsolineGranularity={
        'MaxPoints': 123,
        'MaxResolution': 123
    },
    Key='string',
    OptimizeIsolineFor='AccurateCalculation'|'BalancedCalculation'|'FastCalculation',
    OptimizeRoutingFor='FastestRoute'|'ShortestRoute',
    Origin=[
        123.0,
    ],
    OriginOptions={
        'AvoidActionsForDistance': 123,
        'Heading': 123.0,
        'Matching': {
            'NameHint': 'string',
            'OnRoadThreshold': 123,
            'Radius': 123,
            'Strategy': 'MatchAny'|'MatchMostSignificantRoad'
        },
        'SideOfStreet': {
            'Position': [
                123.0,
            ],
            'UseWith': 'AnyStreet'|'DividedStreetOnly'
        }
    },
    Thresholds={
        'Distance': [
            123,
        ],
        'Time': [
            123,
        ]
    },
    Traffic={
        'FlowEventThresholdOverride': 123,
        'Usage': 'IgnoreTrafficData'|'UseTrafficData'
    },
    TravelMode='Car'|'Pedestrian'|'Scooter'|'Truck',
    TravelModeOptions={
        'Car': {
            'EngineType': 'Electric'|'InternalCombustion'|'PluginHybrid',
            'LicensePlate': {
                'LastCharacter': 'string'
            },
            'MaxSpeed': 123.0,
            'Occupancy': 123
        },
        'Scooter': {
            'EngineType': 'Electric'|'InternalCombustion'|'PluginHybrid',
            'LicensePlate': {
                'LastCharacter': 'string'
            },
            'MaxSpeed': 123.0,
            'Occupancy': 123
        },
        'Truck': {
            'AxleCount': 123,
            'EngineType': 'Electric'|'InternalCombustion'|'PluginHybrid',
            'GrossWeight': 123,
            'HazardousCargos': [
                'Combustible'|'Corrosive'|'Explosive'|'Flammable'|'Gas'|'HarmfulToWater'|'Organic'|'Other'|'Poison'|'PoisonousInhalation'|'Radioactive',
            ],
            'Height': 123,
            'HeightAboveFirstAxle': 123,
            'KpraLength': 123,
            'Length': 123,
            'LicensePlate': {
                'LastCharacter': 'string'
            },
            'MaxSpeed': 123.0,
            'Occupancy': 123,
            'PayloadCapacity': 123,
            'TireCount': 123,
            'Trailer': {
                'AxleCount': 123,
                'TrailerCount': 123
            },
            'TruckType': 'LightTruck'|'StraightTruck'|'Tractor',
            'TunnelRestrictionCode': 'string',
            'WeightPerAxle': 123,
            'WeightPerAxleGroup': {
                'Single': 123,
                'Tandem': 123,
                'Triple': 123,
                'Quad': 123,
                'Quint': 123
            },
            'Width': 123
        }
    }
)
Parameters:
  • Allow (dict) –

    Features that are allowed while calculating. a route

    • Hot (boolean) –

      Allow Hot (High Occupancy Toll) lanes while calculating the route.

    • Hov (boolean) –

      Allow Hov (High Occupancy vehicle) lanes while calculating the route.

  • ArrivalTime (string) –

    Time of arrival at the destination.

    Time format: YYYY-MM-DDThh:mm:ss.sssZ | YYYY-MM-DDThh:mm:ss.sss+hh:mm

    Examples:

    2020-04-22T17:57:24Z

    2020-04-22T17:57:24+02:00

  • Avoid (dict) –

    Features that are avoided while calculating a route. Avoidance is on a best-case basis. If an avoidance can’t be satisfied for a particular case, it violates the avoidance and the returned response produces a notice for the violation.

    • Areas (list) –

      Areas to be avoided.

      • (dict) –

        The area to be avoided.

        • Except (list) –

          Exceptions to the provided avoidance geometry, to be included while calculating the route.

          • (dict) –

            The avoidance geometry, to be included while calculating the route.

            • BoundingBox (list) –

              Geometry defined as a bounding box. The first pair represents the X and Y coordinates (longitude and latitude,) of the southwest corner of the bounding box; the second pair represents the X and Y coordinates (longitude and latitude) of the northeast corner.

              • (float) –

            • Corridor (dict) –

              Geometry defined as a corridor - a LineString with a radius that defines the width of the corridor.

              • LineString (list) – [REQUIRED]

                An ordered list of positions used to plot a route on a map.

                Note

                LineString and Polyline are mutually exclusive properties.

                • (list) –

                  • (float) –

              • Radius (integer) – [REQUIRED]

                Radius that defines the width of the corridor.

            • Polygon (list) –

              A list of Polygon will be excluded for calculating isolines, the list can only contain 1 polygon.

              • (list) –

                • (list) –

                  • (float) –

            • PolylineCorridor (dict) –

              Geometry defined as an encoded corridor – a polyline with a radius that defines the width of the corridor. For more information on polyline encoding, see https://github.com/heremaps/flexiblepolyline/blob/master/README.md.

              • Polyline (string) – [REQUIRED]

                An ordered list of positions used to plot a route on a map in a lossy compression format.

                Note

                LineString and Polyline are mutually exclusive properties.

              • Radius (integer) – [REQUIRED]

                Considers all roads within the provided radius to match the provided destination to. The roads that are considered are determined by the provided Strategy.

                Unit: Meters

            • PolylinePolygon (list) –

              A list of PolylinePolygon’s that are excluded for calculating isolines, the list can only contain 1 polygon. For more information on polyline encoding, see https://github.com/heremaps/flexiblepolyline/blob/master/README.md.

              • (string) –

        • Geometry (dict) – [REQUIRED]

          Geometry of the area to be avoided.

          • BoundingBox (list) –

            Geometry defined as a bounding box. The first pair represents the X and Y coordinates (longitude and latitude,) of the southwest corner of the bounding box; the second pair represents the X and Y coordinates (longitude and latitude) of the northeast corner.

            • (float) –

          • Corridor (dict) –

            Geometry defined as a corridor - a LineString with a radius that defines the width of the corridor.

            • LineString (list) – [REQUIRED]

              An ordered list of positions used to plot a route on a map.

              Note

              LineString and Polyline are mutually exclusive properties.

              • (list) –

                • (float) –

            • Radius (integer) – [REQUIRED]

              Radius that defines the width of the corridor.

          • Polygon (list) –

            A list of Polygon will be excluded for calculating isolines, the list can only contain 1 polygon.

            • (list) –

              • (list) –

                • (float) –

          • PolylineCorridor (dict) –

            Geometry defined as an encoded corridor – a polyline with a radius that defines the width of the corridor. For more information on polyline encoding, see https://github.com/heremaps/flexiblepolyline/blob/master/README.md.

            • Polyline (string) – [REQUIRED]

              An ordered list of positions used to plot a route on a map in a lossy compression format.

              Note

              LineString and Polyline are mutually exclusive properties.

            • Radius (integer) – [REQUIRED]

              Considers all roads within the provided radius to match the provided destination to. The roads that are considered are determined by the provided Strategy.

              Unit: Meters

          • PolylinePolygon (list) –

            A list of PolylinePolygon’s that are excluded for calculating isolines, the list can only contain 1 polygon. For more information on polyline encoding, see https://github.com/heremaps/flexiblepolyline/blob/master/README.md.

            • (string) –

    • CarShuttleTrains (boolean) –

      Avoid car-shuttle-trains while calculating the route.

    • ControlledAccessHighways (boolean) –

      Avoid controlled access highways while calculating the route.

    • DirtRoads (boolean) –

      Avoid dirt roads while calculating the route.

    • Ferries (boolean) –

      Avoid ferries while calculating the route.

    • SeasonalClosure (boolean) –

      Avoid roads that have seasonal closure while calculating the route.

    • TollRoads (boolean) –

      Avoids roads where the specified toll transponders are the only mode of payment.

    • TollTransponders (boolean) –

      Avoids roads where the specified toll transponders are the only mode of payment.

    • TruckRoadTypes (list) –

      Truck road type identifiers. BK1 through BK4 apply only to Sweden. A2,A4,B2,B4,C,D,ET2,ET4 apply only to Mexico.

      Note

      There are currently no other supported values as of 26th April 2024.

      • (string) –

    • Tunnels (boolean) –

      Avoid tunnels while calculating the route.

    • UTurns (boolean) –

      Avoid U-turns for calculation on highways and motorways.

    • ZoneCategories (list) –

      Zone categories to be avoided.

      • (dict) –

        Zone category to be avoided.

        • Category (string) –

          Zone category to be avoided.

  • DepartNow (boolean) – Uses the current time as the time of departure.

  • DepartureTime (string) –

    Time of departure from thr origin.

    Time format: YYYY-MM-DDThh:mm:ss.sssZ | YYYY-MM-DDThh:mm:ss.sss+hh:mm

    Examples:

    2020-04-22T17:57:24Z

    2020-04-22T17:57:24+02:00

  • Destination (list) –

    The final position for the route. In the World Geodetic System (WGS 84) format: [longitude, latitude].

    • (float) –

  • DestinationOptions (dict) –

    Destination related options.

    • AvoidActionsForDistance (integer) –

      Avoids actions for the provided distance. This is typically to consider for users in moving vehicles who may not have sufficient time to make an action at an origin or a destination.

    • Heading (float) –

      GPS Heading at the position.

    • Matching (dict) –

      Options to configure matching the provided position to the road network.

      • NameHint (string) –

        Attempts to match the provided position to a road similar to the provided name.

      • OnRoadThreshold (integer) –

        If the distance to a highway/bridge/tunnel/sliproad is within threshold, the waypoint will be snapped to the highway/bridge/tunnel/sliproad.

        Unit: meters

      • Radius (integer) –

        Considers all roads within the provided radius to match the provided destination to. The roads that are considered are determined by the provided Strategy.

        Unit: Meters

      • Strategy (string) –

        Strategy that defines matching of the position onto the road network. MatchAny considers all roads possible, whereas MatchMostSignificantRoad matches to the most significant road.

    • SideOfStreet (dict) –

      Options to configure matching the provided position to a side of the street.

      • Position (list) – [REQUIRED]

        Position defined as [longitude, latitude].

        • (float) –

      • UseWith (string) –

        Strategy that defines when the side of street position should be used. AnyStreet will always use the provided position.

        Default Value: DividedStreetOnly

  • IsolineGeometryFormat (string) –

    The format of the returned IsolineGeometry.

    Default Value: FlexiblePolyline

  • IsolineGranularity (dict) –

    Defines the granularity of the returned Isoline

    • MaxPoints (integer) –

      Maximum number of points of returned Isoline.

    • MaxResolution (integer) –

      Maximum resolution of the returned isoline.

      Unit: centimeters

  • Key (string) – Optional: The API key to be used for authorization. Either an API key or valid SigV4 signature must be provided when making a request.

  • OptimizeIsolineFor (string) –

    Specifies the optimization criteria for when calculating an isoline. AccurateCalculation generates an isoline of higher granularity that is more precise. FastCalculation generates an isoline faster by reducing the granularity, and in turn the quality of the isoline. BalancedCalculation generates an isoline by balancing between quality and performance.

    Default Value: BalancedCalculation

  • OptimizeRoutingFor (string) –

    Specifies the optimization criteria for calculating a route.

    Default Value: FastestRoute

  • Origin (list) –

    The start position for the route.

    • (float) –

  • OriginOptions (dict) –

    Origin related options.

    • AvoidActionsForDistance (integer) –

      Avoids actions for the provided distance. This is typically to consider for users in moving vehicles who may not have sufficient time to make an action at an origin or a destination.

    • Heading (float) –

      GPS Heading at the position.

    • Matching (dict) –

      Options to configure matching the provided position to the road network.

      • NameHint (string) –

        Attempts to match the provided position to a road similar to the provided name.

      • OnRoadThreshold (integer) –

        If the distance to a highway/bridge/tunnel/sliproad is within threshold, the waypoint will be snapped to the highway/bridge/tunnel/sliproad.

        Unit: meters

      • Radius (integer) –

        Considers all roads within the provided radius to match the provided destination to. The roads that are considered are determined by the provided Strategy.

        Unit: Meters

      • Strategy (string) –

        Strategy that defines matching of the position onto the road network. MatchAny considers all roads possible, whereas MatchMostSignificantRoad matches to the most significant road.

    • SideOfStreet (dict) –

      Options to configure matching the provided position to a side of the street.

      • Position (list) – [REQUIRED]

        Position defined as [longitude, latitude].

        • (float) –

      • UseWith (string) –

        Strategy that defines when the side of street position should be used. AnyStreet will always use the provided position.

        Default Value: DividedStreetOnly

  • Thresholds (dict) –

    [REQUIRED]

    Threshold to be used for the isoline calculation. Up to 3 thresholds per provided type can be requested.

    • Distance (list) –

      Distance to be used for the isoline calculation.

      • (integer) –

    • Time (list) –

      Time to be used for the isoline calculation.

      • (integer) –

  • Traffic (dict) –

    Traffic related options.

    • FlowEventThresholdOverride (integer) –

      Duration for which flow traffic is considered valid. For this period, the flow traffic is used over historical traffic data. Flow traffic refers to congestion, which changes very quickly. Duration in seconds for which flow traffic event would be considered valid. While flow traffic event is valid it will be used over the historical traffic data.

      Unit: seconds

    • Usage (string) –

      Determines if traffic should be used or ignored while calculating the route.

      Default Value: UseTrafficData

  • TravelMode (string) –

    Specifies the mode of transport when calculating a route. Used in estimating the speed of travel and road compatibility.

    Note

    The mode Scooter also applies to motorcycles, set to Scooter when wanted to calculate options for motorcycles.

    Default Value: Car

  • TravelModeOptions (dict) –

    Travel mode related options for the provided travel mode.

    • Car (dict) –

      Travel mode options when the provided travel mode is “Car”

      • EngineType (string) –

        Engine type of the vehicle.

      • LicensePlate (dict) –

        The vehicle License Plate.

        • LastCharacter (string) –

          The last character of the License Plate.

      • MaxSpeed (float) –

        Maximum speed.

        Unit: KilometersPerHour

      • Occupancy (integer) –

        The number of occupants in the vehicle.

        Default Value: 1

    • Scooter (dict) –

      Travel mode options when the provided travel mode is “Scooter”

      • EngineType (string) –

        Engine type of the vehicle.

      • LicensePlate (dict) –

        The vehicle License Plate.

        • LastCharacter (string) –

          The last character of the License Plate.

      • MaxSpeed (float) –

        Maximum speed specified.

        Unit: KilometersPerHour

      • Occupancy (integer) –

        The number of occupants in the vehicle.

        Default Value: 1

    • Truck (dict) –

      Travel mode options when the provided travel mode is “Truck”

      • AxleCount (integer) –

        Total number of axles of the vehicle.

      • EngineType (string) –

        Engine type of the vehicle.

      • GrossWeight (integer) –

        Gross weight of the vehicle including trailers, and goods at capacity.

        Unit: Kilograms

      • HazardousCargos (list) –

        List of Hazardous cargo contained in the vehicle.

        • (string) –

      • Height (integer) –

        Height of the vehicle.

        Unit: centimeters

      • HeightAboveFirstAxle (integer) –

        Height of the vehicle above its first axle.

        Unit: centimeters

      • KpraLength (integer) –

        Kingpin to rear axle length of the vehicle.

        Unit: centimeters

      • Length (integer) –

        Length of the vehicle.

        Unit: centimeters

      • LicensePlate (dict) –

        The vehicle License Plate.

        • LastCharacter (string) –

          The last character of the License Plate.

      • MaxSpeed (float) –

        Maximum speed specified.

        Unit: KilometersPerHour

      • Occupancy (integer) –

        The number of occupants in the vehicle.

        Default Value: 1

      • PayloadCapacity (integer) –

        Payload capacity of the vehicle and trailers attached.

        Unit: kilograms

      • TireCount (integer) –

        Number of tires on the vehicle.

      • Trailer (dict) –

        Trailer options corresponding to the vehicle.

        • AxleCount (integer) –

          Total number of axles of the vehicle.

        • TrailerCount (integer) –

          Number of trailers attached to the vehicle.

          Default Value: 0

      • TruckType (string) –

        Type of the truck.

      • TunnelRestrictionCode (string) –

        The tunnel restriction code.

        Tunnel categories in this list indicate the restrictions which apply to certain tunnels in Great Britain. They relate to the types of dangerous goods that can be transported through them.

        • Tunnel Category B

          • Risk Level: Limited risk

          • Restrictions: Few restrictions

        • Tunnel Category C

          • Risk Level: Medium risk

          • Restrictions: Some restrictions

        • Tunnel Category D

          • Risk Level: High risk

          • Restrictions: Many restrictions occur

        • Tunnel Category E

          • Risk Level: Very high risk

          • Restrictions: Restricted tunnel

      • WeightPerAxle (integer) –

        Heaviest weight per axle irrespective of the axle type or the axle group. Meant for usage in countries where the differences in axle types or axle groups are not distinguished.

        Unit: Kilograms

      • WeightPerAxleGroup (dict) –

        Specifies the total weight for the specified axle group. Meant for usage in countries that have different regulations based on the axle group type.

        Unit: Kilograms

        • Single (integer) –

          Weight for single axle group.

          Unit: Kilograms

        • Tandem (integer) –

          Weight for tandem axle group.

          Unit: Kilograms

        • Triple (integer) –

          Weight for triple axle group.

          Unit: Kilograms

        • Quad (integer) –

          Weight for quad axle group.

          Unit: Kilograms

        • Quint (integer) –

          Weight for quad quint group.

          Unit: Kilograms

      • Width (integer) –

        Width of the vehicle.

        Unit: centimeters

Return type:

dict

Returns:

Response Syntax

{
    'ArrivalTime': 'string',
    'DepartureTime': 'string',
    'IsolineGeometryFormat': 'FlexiblePolyline'|'Simple',
    'Isolines': [
        {
            'Connections': [
                {
                    'FromPolygonIndex': 123,
                    'Geometry': {
                        'LineString': [
                            [
                                123.0,
                            ],
                        ],
                        'Polyline': 'string'
                    },
                    'ToPolygonIndex': 123
                },
            ],
            'DistanceThreshold': 123,
            'Geometries': [
                {
                    'Polygon': [
                        [
                            [
                                123.0,
                            ],
                        ],
                    ],
                    'PolylinePolygon': [
                        'string',
                    ]
                },
            ],
            'TimeThreshold': 123
        },
    ],
    'PricingBucket': 'string',
    'SnappedDestination': [
        123.0,
    ],
    'SnappedOrigin': [
        123.0,
    ]
}

Response Structure

  • (dict) –

    • ArrivalTime (string) –

      Time of arrival at the destination. This parameter is returned only if the Destination parameters was provided in the request.

      Time format: YYYY-MM-DDThh:mm:ss.sssZ | YYYY-MM-DDThh:mm:ss.sss+hh:mm

      Examples:

      2020-04-22T17:57:24Z

      2020-04-22T17:57:24+02:00

    • DepartureTime (string) –

      Time of departure from thr origin.

      Time format: YYYY-MM-DDThh:mm:ss.sssZ | YYYY-MM-DDThh:mm:ss.sss+hh:mm

      Examples:

      2020-04-22T17:57:24Z

      2020-04-22T17:57:24+02:00

    • IsolineGeometryFormat (string) –

      The format of the returned IsolineGeometry.

      Default Value: FlexiblePolyline

    • Isolines (list) –

      Calculated isolines and associated properties.

      • (dict) –

        Calculated isolines and associated properties.

        • Connections (list) –

          Isolines may contain multiple components, if these components are connected by ferry links. These components are returned as separate polygons while the ferry links are returned as connections.

          • (dict) –

            Isolines may contain multiple components, if these components are connected by ferry links. These components are returned as separate polygons while the ferry links are returned as connections.

            • FromPolygonIndex (integer) –

              Index of the polygon corresponding to the “from” component of the connection. The polygon is available from Isoline[].Geometries.

            • Geometry (dict) –

              The isoline geometry.

              • LineString (list) –

                An ordered list of positions used to plot a route on a map.

                Note

                LineString and Polyline are mutually exclusive properties.

                • (list) –

                  • (float) –

              • Polyline (string) –

                An ordered list of positions used to plot a route on a map in a lossy compression format.

                Note

                LineString and Polyline are mutually exclusive properties.

            • ToPolygonIndex (integer) –

              Index of the polygon corresponding to the “to” component of the connection. The polygon is available from Isoline[].Geometries.

        • DistanceThreshold (integer) –

          Distance threshold corresponding to the calculated Isoline.

        • Geometries (list) –

          Geometries for the Calculated isolines.

          • (dict) –

            Geometry of the connection between different Isoline components.

            • Polygon (list) –

              A list of Isoline Polygons, for each isoline polygon, it contains polygons of the first linear ring (the outer ring) and from 2nd item to the last item (the inner rings).

              • (list) –

                • (list) –

                  • (float) –

            • PolylinePolygon (list) –

              A list of Isoline PolylinePolygon, for each isoline PolylinePolygon, it contains PolylinePolygon of the first linear ring (the outer ring) and from 2nd item to the last item (the inner rings). For more information on polyline encoding, see https://github.com/heremaps/flexiblepolyline/blob/master/README.md.

              • (string) –

        • TimeThreshold (integer) –

          Time threshold corresponding to the calculated isoline.

    • PricingBucket (string) –

      The pricing bucket for which the query is charged at.

    • SnappedDestination (list) –

      Snapped destination that was used for the Isoline calculation.

      • (float) –

    • SnappedOrigin (list) –

      Snapped origin that was used for the Isoline calculation.

      • (float) –

Exceptions

  • LocationServiceRoutesV2.Client.exceptions.InternalServerException

  • LocationServiceRoutesV2.Client.exceptions.AccessDeniedException

  • LocationServiceRoutesV2.Client.exceptions.ValidationException

  • LocationServiceRoutesV2.Client.exceptions.ThrottlingException