CartoType iOS API 8.12-19-g3f49c29ef
for development in Swift and Objective C for iOS and Mac OS
Classes | Typedefs | Functions | Variables
CartoTypeRouter.h File Reference
#import <CartoType/CartoTypeBase.h>

Go to the source code of this file.

Classes

class  CtRouteProfile
 
class  CtTurn
 
class  CtNearestRoadInfo
 
class  CtLocationMatchParam
 
class  CtRoutePoint
 
class  CtRouteCoordSet
 
class  CtPointSet
 
struct  CtNavigationData
 
struct  CtNearestSegmentinfo
 
class  CtRouteSegment
 
class  CtRoute
 
struct  CtTrafficInfo
 
struct  CtLocationRef
 
class  CtNavigatorParam
 
class  CtTimeAndDistanceMatrix
 

Typedefs

typedef CtRouteProfileType CartoTypeRouteProfileType
 
typedef CtRouterType CartoTypeRouterType
 
typedef CtTurnType CartoTypeTurnType
 
typedef CtRoundaboutState CartoTypeRoundaboutState
 
typedef CtSideOfRoad CartoTypeSideOfRoad
 
typedef CtNavigationDataValid CartoTypeNavigationDataValid
 
typedef CtNavigationData CartoTypeNavigationData
 
typedef CtNavigationState CartoTypeNavigationState
 
typedef CtFollowMode CartoTypeFollowMode
 
typedef CtNearestSegmentinfo CartoTypeNearestSegmentinfo
 
typedef CtTrafficInfo CartoTypeTrafficInfo
 
typedef CtRoadOrientation CartoTypeRoadOrientation
 
typedef CtLocationRefType CartoTypeLocationRefType
 
typedef CtLocationRef CartoTypeLocationRef
 

Functions

typedef NS_ENUM (NSInteger, CtRouteProfileType)
 
typedef NS_ENUM (NSInteger, CtRouterType)
 
typedef NS_ENUM (NSInteger, CtTurnType)
 
typedef NS_ENUM (NSInteger, CtRoundaboutState)
 
typedef NS_ENUM (NSInteger, CtSideOfRoad)
 
typedef NS_OPTIONS (uint32_t, CtNavigationDataValid)
 
typedef NS_ENUM (NSInteger, CtNavigationState)
 
typedef NS_OPTIONS (uint32_t, CtFollowMode)
 
typedef NS_ENUM (NSInteger, CtRoadOrientation)
 
typedef NS_ENUM (NSInteger, CtLocationRefType)
 

Variables

compatibility_alias CartoTypeRouteProfile CtRouteProfile
 
compatibility_alias CartoTypeTurn CtTurn
 
compatibility_alias CartoTypeNearestRoadInfo CtNearestRoadInfo
 
compatibility_alias CartoTypeLocationMatchParam CtLocationMatchParam
 
compatibility_alias CartoTypeRoutePoint CtRoutePoint
 
compatibility_alias CartoTypeRouteCoordSet CtRouteCoordSet
 
compatibility_alias CartoTypePointSet CtPointSet
 
compatibility_alias CartoTypeRouteSegment CtRouteSegment
 
compatibility_alias CartoTypeRoute CtRoute
 
compatibility_alias CartoTypeNavigatorParam CtNavigatorParam
 
compatibility_alias CartoTypeTimeAndDistanceMatrix CtTimeAndDistanceMatrix
 

Detailed Description

Constants, types and interfaces used by routing and navigation.

Typedef Documentation

◆ CartoTypeFollowMode

typedef CtFollowMode CartoTypeFollowMode

A synonym of CtFollowMode.

◆ CartoTypeLocationRef

A synonym of CtLocationRef.

◆ CartoTypeLocationRefType

typedef CtLocationRefType CartoTypeLocationRefType

A synonym of CtLocationRefType.

◆ CartoTypeNavigationData

A synonym of CtNavigationData.

◆ CartoTypeNavigationDataValid

typedef CtNavigationDataValid CartoTypeNavigationDataValid

A synonym of CtNavigationDataValid.

◆ CartoTypeNavigationState

typedef CtNavigationState CartoTypeNavigationState

A synonym of CtNavigationState.

◆ CartoTypeNearestSegmentinfo

A synonym of CtNearestSegmentinfo.

◆ CartoTypeRoadOrientation

typedef CtRoadOrientation CartoTypeRoadOrientation

A synonym of CtRoadOrientation.

◆ CartoTypeRoundaboutState

typedef CtRoundaboutState CartoTypeRoundaboutState

A synonym of CtRoundaboutState.

◆ CartoTypeRouteProfileType

typedef CtRouteProfileType CartoTypeRouteProfileType

A synonym of CtRouteProfileType.

◆ CartoTypeRouterType

typedef CtRouterType CartoTypeRouterType

A synonym of CtRouterType.

◆ CartoTypeSideOfRoad

typedef CtSideOfRoad CartoTypeSideOfRoad

A synonym of CtSideOfRoad.

◆ CartoTypeTrafficInfo

A synonym of CtTrafficInfo.

◆ CartoTypeTurnType

typedef CtTurnType CartoTypeTurnType

A synonym of CtTurnType.

Function Documentation

◆ NS_ENUM() [1/8]

typedef NS_ENUM ( NSInteger  ,
CtLocationRefType   
)

The type of a location reference used for traffic information.

A line in the route network.

A point on the earth's surface.

A point on a line in the route network.

A point on the route network providing access to a nearby POI: the first point is the point on the line, the second is the POI.

A circle defined as a point and a radius.

A rectangle aligned to the grid of latitude and longitude: it is defined using two points at opposite corners.

A polygon defined using a set of points.

A closed line in the route network.

◆ NS_ENUM() [2/8]

typedef NS_ENUM ( NSInteger  ,
CtNavigationState   
)

States of the navigation system.

No route has been created, or navigation is disabled.

There is a route but no position has been supplied.

There is a turn ahead.

The current position is off the route.

A route is being calculated.

A new route has been calculated.

The latest position is on the route but a U-turn is needed.

The latest position is on the route and very close to the destination.

Navigation has started on a new route.

◆ NS_ENUM() [3/8]

typedef NS_ENUM ( NSInteger  ,
CtRoadOrientation   
)

The orientation of a path along a road: used in traffic information.

◆ NS_ENUM() [4/8]

typedef NS_ENUM ( NSInteger  ,
CtRoundaboutState   
)

Turns involving roundabouts are marked as such so that exit numbers can be counted

This junction does not involve a roundabout.

This junction enters a roundabout.

This junction continues around a roundabout.

This junction exits a roundabout.

◆ NS_ENUM() [5/8]

typedef NS_ENUM ( NSInteger  ,
CtRouteProfileType   
)

Constants used to select frequently-used route profiles.

A profile type for private car navigation.

A profile type for walking.

A profile type for cycling.

A profile type for cycling.

A profile type for walking, preferring off-road paths.

A profile type for downhill skiing.

◆ NS_ENUM() [6/8]

typedef NS_ENUM ( NSInteger  ,
CtRouterType   
)

Types of router; used when selecting a router type.

This router type causes the default router to be selected: the one for which serialized data is available in the map file, or, failing that, RouterTypeStandardAStar.

The A* router, which gives fast performance but takes a lot of memory and cannot create a route going twice through the same junction.

A version of the A* router with road nodes and turn arcs; slower than RouterTypeStandardAStar, and uses more memory, but can generate routes going twice through the same junction, for more flexible routing.

The contraction hierarchy router is intended where less RAM is available: for example with large maps on mobile devices. It gives the same routes as RouterTypeStandardAStar, but is a little slower and does not support custom route profiles; the route profile is decided at the time of creating the CTM1 file.

Turn-expanded contraction hierarchy.

◆ NS_ENUM() [7/8]

typedef NS_ENUM ( NSInteger  ,
CtSideOfRoad   
)

The side of the road: used in traffic information.

◆ NS_ENUM() [8/8]

typedef NS_ENUM ( NSInteger  ,
CtTurnType   
)

Turn types on a route. Turns at junctions are classified by dividing the full circle into 45-degree segments, except for sharp turns left and right, which encompass everything up to an actual U-turn, and left and right forks, for which there are special rules to avoid classifying them as ahead.

The actual turn angle is also given in the CtTurn class.

No turn exists or is needed. This turn type is used at the start of a route.

A turn of less than 22.5 degrees left or right, unless this is a fork with two choices, in which case the turn will be bear right or bear left.

A turn between 22.5 degrees and 67.5 degrees right or a turn through a smaller angle which is the rightmost of a fork with two choices.

A turn between 67.5 degrees and 112.5 degrees right.

A turn between 112.5 degrees and 180 degrees right.

This turn type is use for U-turns: turns back along the same road.

A turn between 112.5 degrees and 180 degrees left.

A turn between 67.5 degrees and 112.5 degrees left.

A turn between 22.5 degrees and 67.5 degrees left. or a turn through a smaller angle which is the leftmost of a fork with two choices.

◆ NS_OPTIONS() [1/2]

typedef NS_OPTIONS ( uint32_t  ,
CtFollowMode   
)

A flag to make the center of the map follow the user's location.

A flag to rotate the map to the user's heading.

A flag to set the map to a suitable zoom level for the user's speed.

The map does not follow the user's location or heading.

The map is centred on the user's location.

The map is centred on the user's location and rotated to the user's heading.

The map is centred on the user's location and zoomed to a suitable level for the user's speed.

The map is centred on the user's location, rotated to the user's heading, and zoomed to a suitable level for the user's speed.

◆ NS_OPTIONS() [2/2]

typedef NS_OPTIONS ( uint32_t  ,
CtNavigationDataValid   
)

Flags used in CtNavigationData.validity.

The time is valid.

The position is valid.

The speed is valid.

The course is valid.

The height is valid.

Variable Documentation

◆ CtLocationMatchParam

compatibility_alias CartoTypeLocationMatchParam CtLocationMatchParam

A synonym of CtLocationMatchParam.

◆ CtNavigatorParam

compatibility_alias CartoTypeNavigatorParam CtNavigatorParam

A synonym of CtNavigatorParam.

◆ CtNearestRoadInfo

compatibility_alias CartoTypeNearestRoadInfo CtNearestRoadInfo

A synonym of CtNearestRoadInfo.

◆ CtPointSet

compatibility_alias CartoTypePointSet CtPointSet

A synonym of CtPointSet.

◆ CtRoute

compatibility_alias CartoTypeRoute CtRoute

A synonym of CtRoute.

◆ CtRouteCoordSet

compatibility_alias CartoTypeRouteCoordSet CtRouteCoordSet

A synonym of CtRouteCoordSet.

◆ CtRoutePoint

compatibility_alias CartoTypeRoutePoint CtRoutePoint

A synonym of CtRoutePoint.

◆ CtRouteProfile

compatibility_alias CartoTypeRouteProfile CtRouteProfile

A synonym of CtRouteProfile.

◆ CtRouteSegment

compatibility_alias CartoTypeRouteSegment CtRouteSegment

A synonym of CtRouteSegment.

◆ CtTimeAndDistanceMatrix

compatibility_alias CartoTypeTimeAndDistanceMatrix CtTimeAndDistanceMatrix

A synonym of CtTimeAndDistanceMatrix.

◆ CtTurn

compatibility_alias CartoTypeTurn CtTurn

A synonym of CtTurn.