HERE iOS SDK Developer's Guide

NMA Routing

Group Summary

group NMA Routing

 

[For complete information, see the section Group Details]

Nested Classes

Public Typedef Summary

Table 2. Public Typedefs
Public Typedefs

(void) (^NMARouteDeserializationCompletionBlock) (NMARoute *_Nullable route, NSError *_Nullable error)

Completion block used to handle the results of route deserialization requests.

(void) (^NMARouteSerializationCompletionBlock) (NSData *_Nullable data, NSError *_Nullable error)

Completion block used to handle the results of route serialization requests.

(void) (^NMAUrbanMobilityCalculateResultBlock) (NMAUrbanMobilityRouteResult *_Nullable routeResult, NMAUrbanMobilityError error)

A completion block used to handle the result of an Urban Mobility route request.

Public Enumeration Summary

Table 3. Public Enumerations
Public Enumerations

NMADrivingDirection

Defines possible driving directions.

NMAHazardousGoodsType

Hazardous goods types for use with truck routing.

NMAManeuverAction

Defines types of actions for a NMAManeuver.

NMAManeuverIcon

Defines types of icons for a NMAManeuver.

NMAManeuverTrafficDirection

Defines types of traffic directions, the side of the road on which one must drive.

NMAManeuverTurn

Defines types of turns for a NMAManeuver.

NMARoadSide

Enum representing side of the road according to direction of travel. Used for indicating position's relation to a road.

NMARouteDurationDetail

Identifiers for detailed explanation of travel duration (NMARoute::duration) estimates relating to a route.

NMARouteElementType

Defines types of route element.

NMARouteSerializationError

Route Serialization Errors

NMARoutingError

Defines types of error codes that can be returned from route calculation operations.

NMARoutingOption

Represents values describing routing options that can be used to enforce special conditions on a calculated route.

NMARoutingType

Represents values describing different routing types.

NMARoutingViolatedOption

Implicit routing options that may be violated by routing calculation operations.

NMASubsequentRouteType

Represents values for set direction used to looking for earlier/later routes The possible values are F (Forward) and B (Backward).

NMATrafficPenaltyMode

Defines the possible traffic penalty modes used for route calculation and traffic event handling.

NMATransitLineStyle

Styles used to render transit lines on a map.

NMATransitRoutingOption

Represents values describing public transport routing options that can be used to enforce special conditions on a calculated route.

NMATransportMode

Represents values describing different transport modes, the mode of transportation a person will be using to travel a route (e.g. a car).

NMATruckRestrictionsMode

Defines way of handling road segments on which violated static truck restriction applies.

NMATruckType

The truck type of the routed truck.

NMATunnelCategory

The tunnel categories to avoid in truck routing.

NMAUrbanMobilityViolatedOption

These are options which might not be taken into account when calculating the NMAUrbanMobilityRouteResult. In other words, route calculations may give results that violate the following options. Usually it depends on particular regions/countries. By default all options are considered to be supported.

NMAWaypointType

Waypoint types

Public Property Summary

Table 4. Public Properties
Public Properties

[readable, assign] NSArray< NMAUrbanMobilityAlert * > *  alerts

Array of associated NMAUrbanMobilityAlert

[readable, assign] NMAUrbanMobilityArrival arrival

Array of NMAUrbanMobilityArrival containing relevant departure object

[readable, assign] NMAUrbanMobilityDeparture departure

Array of NMAUrbanMobilityDeparture containing relevant departure object

[readable, assign] NSUInteger  distance

Distance in meters to cover by this section

[readable, assign] NSTimeInterval  duration

Expected duration in seconds to cover that distance

[readable, assign] NSArray< NMAUrbanMobilityFare * > *  fares

The array of NMAUrbanMobilityFare required for this particular segment

[readable, assign] NSArray< NMAGeoCoordinates * > *  geometry

Array ofNMAGeoCoordinates representing the geometry of this section

[readable, assign] NSArray< NMAUrbanMobilityIntermediateStop * > *  intermediateStops

The list of NMAUrbanMobilityIntermediateStop that are part of this transit stop

[readable, assign] NSArray< NMAUrbanMobilityManeuver * > *  maneuvers

Array of NMAUrbanMobilityManeuver for this section

[readable, assign] NSArray< NMAUrbanMobilityLink * > *  operatorDisclaimers

Array of NMAUrbanMobilityLink related to this section

[readable, assign] NSArray< NMARoute * > *  routes

An NSArray of NMARoute objects representing alternate route solutions, or nil if route calculation failed

[readable, assign] NSString *  sectionId

A unique id for this section

[readable, assign] BOOL  timeUncertain

Indicate if departure/arrival times are uncertain

[readable, assign] NMAUrbanMobilityTransportType   transportType

Type of transport which serves the departure (Bus, Tram, Train, etc)

[readable, assign] NSArray< NSNumber * > *  violatedOptions

NSArray of NSNumber objects, one per route calculated, representing which options (if any) were violated for the corresponding route

Public Variable Summary

Table 5. Public Variables
Public Variables

FOUNDATION_EXPORT const NSInteger  NMARouteSublegWhole

A constant used to indicate the whole route should be used in route leg selection.

FOUNDATION_EXPORT const float  NMARoutingModeStartDirectionAny

Function Summary

Table 6. Functions
Function Summary

-(nonnull) init

Group Details

 

Public Typedef Details

(void) (^NMARouteDeserializationCompletionBlock) (NMARoute *_Nullable route, NSError *_Nullable error)

Include: NMAKit.framework/headers/NMARoute.h

Completion block used to handle the results of route deserialization requests.

Parameters:

  • route

    NMARoute object from the serialized data, nil on failure.

  • error

    nil if deserialization completed successfully, otherwise an NMARouteSerializationError indicating the failure reason.

(void) (^NMARouteSerializationCompletionBlock) (NSData *_Nullable data, NSError *_Nullable error)

Include: NMAKit.framework/headers/NMARoute.h

Completion block used to handle the results of route serialization requests.

Parameters:

  • data

    NSData object containing the serialized route, nil on failure.

  • error

    nil if serialization completed successfully, otherwise an NMARouteSerializationError indicating the failure reason.

(void) (^NMAUrbanMobilityCalculateResultBlock) (NMAUrbanMobilityRouteResult *_Nullable routeResult, NMAUrbanMobilityError error)

Include: NMAKit.framework/headers/NMAUrbanMobilityRouter.h

A completion block used to handle the result of an Urban Mobility route request.

Parameters:

  • routeResult

    The result of the Urban Mobility routing calculation (can be nil if NMARoutingError error param is not NMARoutingErrorNone)

  • error

    A routing calculation error. See NMARoutingError for possible error codes. If NMARoutingErrorRouteUseDisabledRoads is returned thenviolatedOptions is not empty (the returned NMARoute is valid and can be used for navigation although it uses roads which were disabled in the original NMARoutingMode::routingOptions options).

Public Enumeration Details

NMADrivingDirection

Include: NMAKit.framework/headers/NMADynamicPenalty.h

Defines possible driving directions.

Enumeration Members:

  • NMADrivingDirectionBoth

    An indication for both driving direction, forward and backward.

  • NMADrivingDirectionForward

    An indication for forward driving direction.

  • NMADrivingDirectionBackward

    An indication for backward driving direction.

NMAHazardousGoodsType

Include: NMAKit.framework/headers/NMARoutingMode+Truck.h

Hazardous goods types for use with truck routing.

Enumeration Members:

  • NMAHazardousGoodsTypeExplosive

    Explosive goods.

  • NMAHazardousGoodsTypeGas

    Gas.

  • NMAHazardousGoodsTypeFlammable

    Flammable material.

  • NMAHazardousGoodsTypeCombustible

    Combustible material.

  • NMAHazardousGoodsTypeOrganic

    Organic material.

  • NMAHazardousGoodsTypePoison

    Poison.

  • NMAHazardousGoodsTypeRadioActive

    Radio-active material.

  • NMAHazardousGoodsTypeCorrosive

    Corrosive material.

  • NMAHazardousGoodsTypePoisonousInhalation

    Goods which are poisonous upon inhalation.

  • NMAHazardousGoodsTypeHarmfulToWater

    Goods which are harmful to water.

  • NMAHazardousGoodsTypeOther

    Other types of hazardous goods.

NMAManeuverAction

Include: NMAKit.framework/headers/NMAManeuver.h

Defines types of actions for a NMAManeuver.

Enumeration Members:

  • NMAManeuverActionUndefined

    An undefined action.

  • NMAManeuverActionNone

    An indication there is no action associated with the maneuver.

  • NMAManeuverActionEnd

    An action that indicates the end of a route.

  • NMAManeuverActionStopover

    An action that indicates a stopover.

  • NMAManeuverActionJunction

    An action that indicates a junction.

  • NMAManeuverActionRoundabout

    An action that indicates a roundabout.

  • NMAManeuverActionUTurn

    An action that indicates a u-turn.

  • NMAManeuverActionEnterHighwayFromRight

    An action that indicates entering a highway from the right.

  • NMAManeuverActionEnterHighwayFromLeft

    An action that indicates entering a highway from the left.

  • NMAManeuverActionEnterHighway

    An action that indicates entering a highway.

  • NMAManeuverActionLeaveHighway

    An action that indicates leaving a highway.

  • NMAManeuverActionChangeHighway

    An action that indicates changing from one highway to another.

  • NMAManeuverActionContinueHighway

    An action that indicates continuing along a highway.

  • NMAManeuverActionFerry

    An action that indicates boarding a ferry.

  • NMAManeuverActionPassJunction

    An action that indicates passing a junction.

  • NMAManeuverActionHeadTo

    An action that indicates heading after leaving public transit station.

  • NMAManeuverActionPassStation

    An action that indicates passing a station.

  • NMAManeuverActionChangeLine

    An action that indicates transit line change.

  • NMAManeuverActionInvalid

    An invalid action.

NMAManeuverIcon

Include: NMAKit.framework/headers/NMAManeuver.h

Defines types of icons for a NMAManeuver.

Note:

NMAManeuverIcon enum is simplified version of all valid NMAManeuverAction and NMAManeuverTurn combinations. It can be used to provide navigation directions, but for more detailed representation, use NMAManeuverAction in conjunction with NMAManeuverTurn.

Enumeration Members:

  • NMAManeuverIconUndefined

    An undefined icon.

  • NMAManeuverIconGoStraight

    An icon that indicates a straight heading.

  • NMAManeuverIconUTurnRight

    An icon that indicates a right u-turn.

  • NMAManeuverIconUTurnLeft

    An icon that indicates a left u-turn.

  • NMAManeuverIconKeepRight

    An icon that indicates keeping to the right.

  • NMAManeuverIconLightRight

    An icon that indicates a light right turn.

  • NMAManeuverIconQuiteRight

    An icon that indicates a normal right turn.

  • NMAManeuverIconHeavyRight

    An icon that indicates a heavy right turn.

  • NMAManeuverIconKeepMiddle

    An icon that indicates keeping to the left.

  • NMAManeuverIconKeepLeft

    An icon that indicates keeping to the middle line.

  • NMAManeuverIconLightLeft

    An icon that indicates a light left turn.

  • NMAManeuverIconQuiteLeft

    An icon that indicates a normal left turn.

  • NMAManeuverIconHeavyLeft

    An icon that indicates a heavy left turn.

  • NMAManeuverIconEnterHighwayRightLane

    An icon that indicates entering a highway into the right lane.

  • NMAManeuverIconEnterHighwayLeftLane

    An icon that indicates entering a highway into the left lane.

  • NMAManeuverIconLeaveHighwayRightLane

    An icon that indicates leaving a highway from the right lane.

  • NMAManeuverIconLeaveHighwayLeftLane

    An icon that indicates from the left lane.

  • NMAManeuverIconHighwayKeepRight

    An icon that indicates keeping to the right.

  • NMAManeuverIconHighwayKeepLeft

    An icon that indicates keeping to the left.

  • NMAManeuverIconRoundabout1

    An icon that indicates using the first exit encountered while navigating a roundabout in a counter-clockwise direction.

  • NMAManeuverIconRoundabout2

    An icon that indicates using the second exit encountered while navigating a roundabout in a counter-clockwise direction.

  • NMAManeuverIconRoundabout3

    An icon that indicates using the third exit encountered while navigating a roundabout in a counter-clockwise direction.

  • NMAManeuverIconRoundabout4

    An icon that indicates using the fourth exit encountered while navigating a roundabout in a counter-clockwise direction.

  • NMAManeuverIconRoundabout5

    An icon that indicates using the fifth exit encountered while navigating a roundabout in a counter-clockwise direction.

  • NMAManeuverIconRoundabout6

    An icon that indicates using the sixth exit encountered while navigating a roundabout in a counter-clockwise direction.

  • NMAManeuverIconRoundabout7

    An icon that indicates using the seventh exit encountered while navigating a roundabout in a counter-clockwise direction.

  • NMAManeuverIconRoundabout8

    An icon that indicates using the eighth exit encountered while navigating a roundabout in a counter-clockwise direction.

  • NMAManeuverIconRoundabout9

    An icon that indicates using the ninth exit encountered while navigating a roundabout in a counter-clockwise direction.

  • NMAManeuverIconRoundabout10

    An icon that indicates using the tenth exit encountered while navigating a roundabout in a counter-clockwise direction.

  • NMAManeuverIconRoundabout11

    An icon that indicates using the eleventh exit encountered while navigating a roundabout in a counter-clockwise direction.

  • NMAManeuverIconRoundabout12

    An icon that indicates using the twelfth exit encountered while navigating a roundabout in a counter-clockwise direction.

  • NMAManeuverIconRoundabout1LH

    An icon that indicates using the first exit encountered while navigating a roundabout in a counter-clockwise direction.

  • NMAManeuverIconRoundabout2LH

    An icon that indicates using the second exit encountered while navigating a roundabout in a clockwise direction.

  • NMAManeuverIconRoundabout3LH

    An icon that indicates using the third exit encountered while navigating a roundabout in a clockwise direction.

  • NMAManeuverIconRoundabout4LH

    An icon that indicates using the fourth exit encountered while navigating a roundabout in a clockwise direction.

  • NMAManeuverIconRoundabout5LH

    An icon that indicates using the fifth exit encountered while navigating a roundabout in a clockwise direction.

  • NMAManeuverIconRoundabout6LH

    An icon that indicates using the sixth exit encountered while navigating a roundabout in a clockwise direction.

  • NMAManeuverIconRoundabout7LH

    An icon that indicates using the seventh exit encountered while navigating a roundabout in a clockwise direction.

  • NMAManeuverIconRoundabout8LH

    An icon that indicates using the eighth exit encountered while navigating a roundabout in a clockwise direction.

  • NMAManeuverIconRoundabout9LH

    An icon that indicates using the ninth exit encountered while navigating a roundabout in a clockwise direction.

  • NMAManeuverIconRoundabout10LH

    An icon that indicates using the tenth exit encountered while navigating a roundabout in a clockwise direction.

  • NMAManeuverIconRoundabout11LH

    An icon that indicates using the eleventh exit encountered while navigating a roundabout in a clockwise direction.

  • NMAManeuverIconRoundabout12LH

    An icon that indicates using the twelfth exit encountered while navigating a roundabout in a clockwise direction.

  • NMAManeuverIconStart

    An icon that indicates the start point (displayed when route navigation has not yet begun).

  • NMAManeuverIconEnd

    An icon that indicates the destination point.

  • NMAManeuverIconFerry

    An icon that indicates boarding a ferry.

  • NMAManeuverIconPassStation

    An icon that indicates passing a station.

  • NMAManeuverIconHeadTo

    An icon that indicates heading after leaving public transit station.

  • NMAManeuverIconChangeLine

    An icon that indicates transit line change.

NMAManeuverTrafficDirection

Include: NMAKit.framework/headers/NMAManeuver.h

Defines types of traffic directions, the side of the road on which one must drive.

Enumeration Members:

  • NMAManeuverTrafficDirectionLeft

    Traffic flows on the left side of the road, as in the UK.

  • NMAManeuverTrafficDirectionRight

    Traffic flows on the right side of the road, as in the USA.

NMAManeuverTurn

Include: NMAKit.framework/headers/NMAManeuver.h

Defines types of turns for a NMAManeuver.

Enumeration Members:

  • NMAManeuverTurnUndefined

    An undefined turn.

  • NMAManeuverTurnNone

    Indicates that no turn is necessary.

  • NMAManeuverTurnKeepMiddle

    A turn that indicates keeping to the middle when a road forks.

  • NMAManeuverTurnKeepRight

    A turn that indicates keeping to the right when a road forks.

  • NMAManeuverTurnLightRight

    A turn that indicates making a light right turn.

  • NMAManeuverTurnQuiteRight

    A turn that indicates making a normal right turn.

  • NMAManeuverTurnHeavyRight

    A turn that indicates making a heavy right turn.

  • NMAManeuverTurnKeepLeft

    A turn that indicates keeping to the left when a road forks.

  • NMAManeuverTurnLightLeft

    A turn that indicates making a light left turn.

  • NMAManeuverTurnQuiteLeft

    A turn that indicates making a normal left turn.

  • NMAManeuverTurnHeavyLeft

    A turn that indicates making a heavy left turn.

  • NMAManeuverTurnReturn

    A turn that indicates a u-turn, turning around.

  • NMAManeuverTurnRoundabout1

    A turn that indicates taking the first exit of a roundabout.

  • NMAManeuverTurnRoundabout2

    A turn that indicates taking the second exit of a roundabout.

  • NMAManeuverTurnRoundabout3

    A turn that indicates taking the third exit of a roundabout.

  • NMAManeuverTurnRoundabout4

    A turn that indicates taking the fourth exit of a roundabout.

  • NMAManeuverTurnRoundabout5

    A turn that indicates taking the fifth exit of a roundabout.

  • NMAManeuverTurnRoundabout6

    A turn that indicates taking the sixth exit of a roundabout.

  • NMAManeuverTurnRoundabout7

    A turn that indicates taking the seventh exit of a roundabout.

  • NMAManeuverTurnRoundabout8

    A turn that indicates taking the eighth exit of a roundabout.

  • NMAManeuverTurnRoundabout9

    A turn that indicates taking the ninth exit of a roundabout.

  • NMAManeuverTurnRoundabout10

    A turn that indicates taking the tenth exit of a roundabout.

  • NMAManeuverTurnRoundabout11

    A turn that indicates taking the eleventh exit of a roundabout.

  • NMAManeuverTurnRoundabout12

    A turn that indicates taking the twelfth exit of a roundabout.

NMARoadSide

Include: NMAKit.framework/headers/NMAWaypointRoadInfo.h

Enum representing side of the road according to direction of travel. Used for indicating position's relation to a road.

Enumeration Members:

  • NMARoadSideUndefined

    Indicates that a position relative to the road is undefined.

  • NMARoadSideUnknownLeft

    Indicates position that is geometrically on the left side, but at a distance that is too short or too long to say for sure.

  • NMARoadSideUnknownRight

    Indicates position that is geometrically on the right side, but at a distance that is too short or too long to say for sure.

  • NMARoadSideLeft

    Indicates location on the left side of the road, according to direction of travel.

  • NMARoadSideRight

    Indicates location on the right side of the road, according to direction of travel.

NMARouteDurationDetail

Include: NMAKit.framework/headers/NMARouteTta.h

Identifiers for detailed explanation of travel duration ( NMARoute::duration) estimates relating to a route.

Note:

This is a bitwise enum. If none of the bit is set, NMARouteDurationDetailAccurate is assumed

Enumeration Members:

  • NMARouteDurationDetailAccurate

    The estimate is accurate.

  • NMARouteDurationDetailBlockedRoad

    The route uses a road that is blocked.

  • NMARouteDurationDetailCarPool

    The route uses a road with carpool restriction.

  • NMARouteDurationDetailRestrictedTurn

    The route uses a restricted turn.

NMARouteElementType

Include: NMAKit.framework/headers/NMARouteElement.h

Defines types of route element.

Enumeration Members:

  • NMARouteElementTransit

    Transit Route Element

  • NMARouteElementRoad

    Road Element

  • NMARouteElementInvalid

    invalid

NMARouteSerializationError

Include: NMAKit.framework/headers/NMARoute.h

Route Serialization Errors

IMPORTANT: NMARoute serialization is a Beta feature. The related classes are subject to change without notice.

Enumeration Members:

  • NMARouteSerializationErrorInvalidParameter

    Parameter provided is nil, uninitialized or empty.

  • NMARouteSerializationErrorMapVersionMismatch

    Map version from serialized route does not match current map version.

  • NMARouteSerializationErrorDataCorrupted

    Data provided for deserialization is corrupted.

  • NMARouteSerializationErrorTransportModeNotSupported

    Transport mode not supported for current operation.

  • NMARouteSerializationErrorUnknown

    Generic error.

NMARoutingError

Include: NMAKit.framework/headers/NMARoutingError.h

Defines types of error codes that can be returned from route calculation operations.

Enumeration Members:

  • NMARoutingErrorNone

    There was no error, route calcualtion succeeded.

  • NMARoutingErrorUnknown

    There was an unknown error.

  • NMARoutingErrorOutOfMemory

    There was an out-of-memory error.

  • NMARoutingErrorInvalidParameters

    There was an error due to invalid parameters.

  • NMARoutingErrorInvalidOperation

    There was an error due to another request already being processed.

  • NMARoutingErrorGraphDisconnected

    There was an error because no route could be found.

  • NMARoutingErrorGraphDisconnectedCheckOptions

    There was an error because no route could be found, possibly due to some option (e.g. disabled highways) preventing it.

  • NMARoutingErrorNoStartPoint

    There was an error because no starting waypoint could be found.

  • NMARoutingErrorNoEndPoint

    There was an error because no destination waypoint could be found.

  • NMARoutingErrorNoEndPointCheckOptions

    There was an error because the destination point is unreachable, possibly due to some option (e.g. disabled highways) preventing it.

  • NMARoutingErrorCannotDoPedestrian

    There was an error because pedestrian mode was specified yet is not practical (e.g. the route is too long).

  • NMARoutingErrorRoutingCancelled

    There was an error because the application user cancelled the route calculation.

  • NMARoutingErrorViolatesOptions

    There was an error because the route calculation request included options that prohibit successful completion.

  • NMARoutingErrorRouteCorrupted

    There was an error because the service could not digest the requested route parameters.

  • NMARoutingErrorInvalidCredentials

    There was an error due to invalid or missing HERE Developer credentials.

  • NMARoutingErrorInsufficientMapData

    There was an error because there is not enough local map data to perform route calculation. Client can redownload map data and calculate route again.

  • NMARoutingErrorNetworkCommunication

    The online route calculation request failed because of a networking error. The route calculation request should be retried.

  • NMARoutingErrorUnsupportedMapVersion

    The routing server does not support map version specified in request. Client must update the downloaded map version installed on the device.

  • NMARoutingErrorRequestTimeout

    Deprecated: This enum is deprecated since release 3.3. Please use NMARoutingErrorNetworkCommunication.

    The online route calculation request has timed out because the server has not responded or the device system resources have been exhausted. The route calculation request should be retried.

NMARoutingOption

Include: NMAKit.framework/headers/NMARoutingMode.h

Represents values describing routing options that can be used to enforce special conditions on a calculated route.

Enumeration Members:

  • NMARoutingOptionAvoidBoatFerry

    The routing engine will avoid links that are part of a boat ferry passage.

  • NMARoutingOptionAvoidDirtRoad

    The routing engine will avoid links that are part of a dirt road.

  • NMARoutingOptionAvoidHighway

    The routing engine will avoid links that are part of a highway.

    Note:

    Effective only when used with NMATransportModeCar.

  • NMARoutingOptionAvoidPark

    The routing engine will avoid links that go through a park.

    Note:

    Effective only when used with NMATransportModePedestrian.

  • NMARoutingOptionAvoidTollRoad

    The routing engine will avoid links that are part of a toll road.

    Note:

    Effective only when used with NMATransportModeCar.

  • NMARoutingOptionAvoidTunnel

    The routing engine will avoid links that are part of a tunnel.

    Note:

    Effective only when used with NMATransportModeCar.

  • NMARoutingOptionAvoidCarShuttleTrain

    The routing engine will avoid links that are part of a motorail train or car shuttle train passage.

  • NMARoutingOptionAvoidCarpool

    The routing engine will avoid HOV/Carpool roads.

NMARoutingType

Include: NMAKit.framework/headers/NMARoutingMode.h

Represents values describing different routing types.

Note: a NMARoutingType has no effect on NMATransportModePedestrian, NMATransportModePublicTransport or NMATransportModeTruck transport modes, since they always use NMARoutingTypeFastest (if NMARoutingTypeShortest is set as the NMARoutingType when one of these NMATransportMode types is selected, it will be reset to NMARoutingTypeFastest when a route is calculated).

Enumeration Members:

  • NMARoutingTypeShortest

    Search for the shortest route, taking road conditions and restrictions into account (minimizes travel distance). Car mode only.

  • NMARoutingTypeFastest

    Search for the fastest route, taking road conditions and restrictions into account (minimizes travel time).

  • NMARoutingTypeBalanced

    Search for balanced route, some travel time may be sacrificed in order to reduce the distance traveled. It calculates the optimal route based on time and distance combination. Car mode only.

NMARoutingViolatedOption

Include: NMAKit.framework/headers/NMARouteResult.h

Implicit routing options that may be violated by routing calculation operations.

Note:

Violations which depend on traffic data (e.g. BlockedRoad) will only be returned if the traffic feature is available.

Enumeration Members:

  • NMARoutingViolatedOptionNone

    The returned route does not violate any options

  • NMARoutingViolatedOptionBlockedRoad

    The route passes through a blocked road (e.g. due to construction or a traffic accident)

  • NMARoutingViolatedOptionTurnRestriction

    The route passes through a road with a time-based turn restriction

  • NMARoutingViolatedOptionStartDirection

    The route's start direction is not as requested

  • NMARoutingViolatedPermanentTruckRestriction

    The route uses roads or turns which are permanently forbidden for given truck

NMASubsequentRouteType

Include: NMAKit.framework/headers/NMAUrbanMobilityRouter.h

Represents values for set direction used to looking for earlier/later routes The possible values are F (Forward) and B (Backward).

Enumeration Members:

  • NMASubsequentRouteTypeForward

    uses F (Forward) value in request

  • NMASubsequentRouteTypeBackward

    uses B (Backward) value in request

NMATrafficPenaltyMode

Include: NMAKit.framework/headers/NMADynamicPenalty.h

Defines the possible traffic penalty modes used for route calculation and traffic event handling.

Time awareness (e.g. avoiding bridges that are closed for certain portion of a day) is not affected by traffic penalty modes.

Enumeration Members:

  • NMATrafficPenaltyModeDisabled

    Do not consider real time traffic flow or long term road closures (usually due to construction work) when calculating a route.

  • NMATrafficPenaltyModeOptimal

    Create a single traffic optimized route that considers all available traffic information including real time traffic flow and long term closures coming from real time traffic information.

  • NMATrafficPenaltyModeAvoidLongTermClosures

    Do NOT consider real time traffic flow but do consider long term closures coming from real time traffic information when calculating a route.

NMATransitLineStyle

Include: NMAKit.framework/headers/NMATransitManeuver.h

Styles used to render transit lines on a map.

Enumeration Members:

  • NMATransitLineStyleSolid

    Solid line.

  • NMATransitLineStyleDotted

    Dotted line.

  • NMATransitLineStyleDashed

    Dashed line.

  • NMATransitLineStyleUndefined

    Undefined.

NMATransitRoutingOption

Include: NMAKit.framework/headers/NMATransitRoutingOption.h

Represents values describing public transport routing options that can be used to enforce special conditions on a calculated route.

Enumeration Members:

  • NMATransitRoutingOptionAvoidPublicBus

    The routing engine will avoid public bus transport.

  • NMATransitRoutingOptionAvoidTouristicBus

    The routing engine will avoid tourist bus.

  • NMATransitRoutingOptionAvoidIntercityBus

    The routing engine will avoid intercity bus.

  • NMATransitRoutingOptionAvoidExpressBus

    The routing engine will avoid express bus.

  • NMATransitRoutingOptionAvoidMetroRail

    The routing engine will avoid metro rail.

  • NMATransitRoutingOptionAvoidLightRail

    The routing engine will avoid light rail.

  • NMATransitRoutingOptionAvoidRegionalRail

    The routing engine will avoid regional rail.

  • NMATransitRoutingOptionAvoidRegionalTrain

    The routing engine will avoid regional train.

  • NMATransitRoutingOptionAvoidIntercityTrain

    The routing engine will avoid intercity train.

  • NMATransitRoutingOptionAvoidHighSpeedTrain

    The routing engine will avoid high speed train.

  • NMATransitRoutingOptionAvoidMonoRail

    The routing engine will avoid mono rail.

  • NMATransitRoutingOptionAvoidAerial

    The routing engine will avoid aerial.

  • NMATransitRoutingOptionAvoidInclined

    The routing engine will avoid inclined.

  • NMATransitRoutingOptionAvoidWater

    The routing engine will avoid boat.

NMATransportMode

Include: NMAKit.framework/headers/NMARoutingMode.h

Represents values describing different transport modes, the mode of transportation a person will be using to travel a route (e.g. a car).

Enumeration Members:

  • NMATransportModeCar

    A car is being used as the mode of transportation.

  • NMATransportModePedestrian

    Walking is being used as the mode of transportation.

    Note:

    When calculating a route using NMATransportModePedestrian, NMARoutingType will be reset to NMARoutingTypeFastest.

  • NMATransportModePublicTransport

    Public transport is being used as the mode of transportation.

    Note:

    When calculating a route using NMATransportModePublicTransport, NMARoutingType will be reset to NMARoutingTypeFastest.

  • NMATransportModeTrack

    Deprecated: This transport mode is deprecated as of SDK 3.3. Calculating a route with this mode will result in a failure, please see NMACoreRouter and NMARouteManager for more information.

    Straight line connecting the waypoints of a route.

  • NMATransportModeTruck

    A truck is being used as the mode of transportation.

    Note:

    When calculating a route using NMATransportModeTruck, NMARoutingType will be reset to NMARoutingTypeFastest.

  • NMATransportModeUrbanMobility

    Urban Mobility includes ways to get around the city: transit, taxi, shared car/bikes.

  • NMATransportModeBike

    A bike is being used as the mode of transportation.

    IMPORTANT: This is a Beta API, and is subject to change without notice

NMATruckRestrictionsMode

Include: NMAKit.framework/headers/NMARoutingMode+Truck.h

Defines way of handling road segments on which violated static truck restriction applies.

When mode is set to NMATruckRestrictionsNoViolations then such segments will not be part of the route.

NMATruckRestrictionsPenalizeViolations is relaxed way of handling restrictions. Streets where truck restrictions are violated will be avoided, but if there is no way around route will go through restricted streets.

WARNING: Route calculated with this option cannot be used for navigation.

Typical use case is route calculation with imprecise start/destination for planning purpose when user wants to know some statistics data like estimated length, countries crossed. With this option route will be calculated even if it starts/ends in restricted areas.

When no mode is explicitly set NMATruckRestrictionsNoViolations mode is used for route calculation.

Note:

This option does not affect time dependent truck restrictions.

Enumeration Members:

  • NMATruckRestrictionsModeNoViolations

    In those mode violating road segments will not be part of the route.

  • NMATruckRestrictionsModePenalizeViolations

    In those mode violating road segments can be part of the route, if no other route can be calculated.

NMATruckType

Include: NMAKit.framework/headers/NMARoutingMode+Truck.h

The truck type of the routed truck.

Enumeration Members:

  • NMATruckTypeNone

    Truck type not defined.

  • NMATruckTypeTruck

    Regular truck type.

  • NMATruckTypeTractorTruck

    Tractor truck type.

NMATunnelCategory

Include: NMAKit.framework/headers/NMARoutingMode+Truck.h

The tunnel categories to avoid in truck routing.

Enumeration Members:

  • NMATunnelCategoryNone

    Tunnel category not defined.

  • NMATunnelCategoryB

    Tunnel category B.

  • NMATunnelCategoryC

    Tunnel category C.

  • NMATunnelCategoryD

    Tunnel category D.

  • NMATunnelCategoryE

    Tunnel category E.

NMAUrbanMobilityViolatedOption

Include: NMAKit.framework/headers/NMAUrbanMobilityRouteResult.h

These are options which might not be taken into account when calculating the NMAUrbanMobilityRouteResult. In other words, route calculations may give results that violate the following options. Usually it depends on particular regions/countries. By default all options are considered to be supported.

Enumeration Members:

  • NMAUrbanMobilityViolatedOptionMaxWalkingDistance

    Indicates if setting maximum walking distance was considered.

  • NMAUrbanMobilityViolatedOptionWalkSpeed

    Indicates if setting walking speed was considered.

  • NMAUrbanMobilityViolatedOptionMaxChangesCount

    Indicates if setting maximum number of changes was considered.

  • NMAUrbanMobilityViolatedOptionRestrictTransportTypes

    Indicates if restricting the TransportTpes was considered.

  • NMAUrbanMobilityViolatedOptionEstimatedRouting

    Indicates if response contains only estimated routing data, due to license limitation.

NMAWaypointType

Include: NMAKit.framework/headers/NMAWaypoint.h

Waypoint types

Enumeration Members:

  • NMAStopWaypoint

    A maneuver is generated for a STOP waypoint. After the STOP waypoint, route is allowed to continue in the opposite direction, i.e. to turn back.

    During Guidance, "You have reached your stop-over" will be announced if supported by the selected voice skin.

    The first and the last waypoint to be used for route calculation must be of NMAStopWaypoint type.

  • NMAViaWaypoint

    No maneuver is generated for a VIA waypoint. After the VIA waypoint, route will continue in the same direction as when it's approached.

    Via waypoints will "force" the route to pass through them, but they will not cause any guidance, announcement or maneuvers.

    VIA waypoints are not considered during Guidance triggered re-routing.

    This is only supported by NMATransportModeCar. It's ignored for other transport modes.

Public Property Details

[readable, assign] NSArray< NMAUrbanMobilityAlert * > * alerts

Include: NMAKit.framework/headers/NMAUrbanMobilityRouteSection.h

Array of associated NMAUrbanMobilityAlert.

[readable, assign] NMAUrbanMobilityArrivalarrival

Include: NMAKit.framework/headers/NMAUrbanMobilityRouteSection.h

Array of NMAUrbanMobilityArrival containing relevant departure object.

[readable, assign] NMAUrbanMobilityDeparturedeparture

Include: NMAKit.framework/headers/NMAUrbanMobilityRouteSection.h

Array of NMAUrbanMobilityDeparture containing relevant departure object.

[readable, assign] NSUInteger distance

Include: NMAKit.framework/headers/NMAUrbanMobilityRouteSection.h

Distance in meters to cover by this section.

[readable, assign] NSTimeInterval duration

Include: NMAKit.framework/headers/NMAUrbanMobilityRouteSection.h

Expected duration in seconds to cover that distance.

[readable, assign] NSArray< NMAUrbanMobilityFare * > * fares

Include: NMAKit.framework/headers/NMAUrbanMobilityRouteSection.h

The array of NMAUrbanMobilityFare required for this particular segment.

[readable, assign] NSArray< NMAGeoCoordinates * > * geometry

Include: NMAKit.framework/headers/NMAUrbanMobilityRouteSection.h

Array ofNMAGeoCoordinates representing the geometry of this section.

[readable, assign] NSArray< NMAUrbanMobilityIntermediateStop * > * intermediateStops

Include: NMAKit.framework/headers/NMAUrbanMobilityRouteSection.h

The list of NMAUrbanMobilityIntermediateStop that are part of this transit stop.

[readable, assign] NSArray< NMAUrbanMobilityManeuver * > * maneuvers

Include: NMAKit.framework/headers/NMAUrbanMobilityRouteSection.h

Array of NMAUrbanMobilityManeuver for this section.

[readable, assign] NSArray< NMAUrbanMobilityLink * > * operatorDisclaimers

Include: NMAKit.framework/headers/NMAUrbanMobilityRouteSection.h

Array of NMAUrbanMobilityLink related to this section.

[readable, assign] NSArray< NMARoute * > * routes

Include: NMAKit.framework/headers/NMARouteResult.h

An NSArray of NMARoute objects representing alternate route solutions, or nil if route calculation failed. The route at index 0 is the best result found. The number of routes in the array will be less than or equal to the resultCount property specified in the NMARoutingMode used for the route request. Only one result will be returned for routes with more than two waypoints. (Note that NMATransitRoute objects are returned for public transport routing only. Applications must show sourceAttribution info of NMATransitRoute if it is available).

[readable, assign] NSString * sectionId

Include: NMAKit.framework/headers/NMAUrbanMobilityRouteSection.h

A unique id for this section.

[readable, assign] BOOL timeUncertain

Include: NMAKit.framework/headers/NMAUrbanMobilityRouteSection.h

Indicate if departure/arrival times are uncertain. It is true for estimated values and false if it comes from real time or time table data.

[readable, assign] NMAUrbanMobilityTransportType  transportType

Include: NMAKit.framework/headers/NMAUrbanMobilityRouteSection.h

Type of transport which serves the departure (Bus, Tram, Train, etc).

[readable, assign] NSArray< NSNumber * > * violatedOptions

Include: NMAKit.framework/headers/NMARouteResult.h

NSArray of NSNumber objects, one per route calculated, representing which options (if any) were violated for the corresponding route. The NSNumber objects should be converted to NSUInteger before checking. The value will be an OR combination of NMARoutingOption and NMARoutingViolatedOption values, or NMARoutingViolatedOptionNone if no options were violated. If route calculation failed, the array will contain a single object containing all the routing options (if any).

Public Variable Details

FOUNDATION_EXPORT const NSInteger NMARouteSublegWhole

Include: NMAKit.framework/headers/NMARoute.h

A constant used to indicate the whole route should be used in route leg selection.

FOUNDATION_EXPORT const float NMARoutingModeStartDirectionAny

Include: NMAKit.framework/headers/NMARoutingMode.h

Defines the value used to indicate routing may start in any direction

Group Function Details

-(nonnull) init

Include: NMAKit.framework/headers/NMARouteResult.h

Instances of this class should not be initialized directly

-(nonnull) init

Include: NMAKit.framework/headers/NMAUrbanMobilityRouteSection.h

Instances of this class should not be initialized directly

+(nonnull) new

Include: NMAKit.framework/headers/NMARouteResult.h

Instances of this class should not be initialized directly

+(nonnull) new

Include: NMAKit.framework/headers/NMAUrbanMobilityRouteSection.h

Instances of this class should not be initialized directly

You cannot use this account to purchase a commercial plan on Developer Portal, as it is already associated to plans with different payment methods.

To purchase a commercial plan on Developer Portal, please register for or sign in with a different HERE Account.

Something took longer than expected.

The project should be available soon under your projects page.

Sorry, our services are not available in this region.

Something seems to have gone wrong. Please try again later.

We've detected that your account is set to Australian Dollars (AUD).
Unfortunately, we do not offer checkouts in AUD anymore.
You can continue using your current plan as normal, but to subscribe to one of our new plans,
please register for a new HERE account or contact us for billing questions on selfservesupport@here.com.