CartoType C++ API 7.8.2, 2022-03-25
for Windows, Linux, Qt and other platforms supporting C++ development
Public Member Functions | Public Attributes | List of all members
CartoType::TTurn Class Reference

#include <cartotype_navigation.h>

Inheritance diagram for CartoType::TTurn:

Public Member Functions

void Clear ()
void SetTurn (double aInDir, double aOutDir, int32_t aChoices, int32_t aLeftAlternatives, int32_t aRightAlternatives, bool aIsFork, bool aTurnOff)
void SetTurn (double aTurnAngle)
void WriteAsXml (MOutputStream &aOutput) const

Public Attributes

TTurnType iTurnType = TTurnType::None
bool iContinue = true
TRoundaboutState iRoundaboutState = TRoundaboutState::None
double iTurnAngle = 0
double iInDirection = 0
double iOutDirection = 0
int32_t iExitNumber = 0
int32_t iChoices = 0
int32_t iLeftAlternatives = 0
int32_t iRightAlternatives = 0
bool iIsFork = false
bool iTurnOff = false
CString iJunctionName
CString iJunctionRef

Detailed Description

A turn: a choice of route through a node.

Member Function Documentation

◆ Clear()

void CartoType::TTurn::Clear ( )

Sets the TTurn object to its just-constructed state.

◆ SetTurn() [1/2]

void CartoType::TTurn::SetTurn ( double  aInDir,
double  aOutDir,
int32_t  aChoices,
int32_t  aLeftAlternatives,
int32_t  aRightAlternatives,
bool  aIsFork,
bool  aTurnOff 

Sets the TTurn object using inward and outward direction in degrees (anticlockwise from map east), left and right alternative choices, and fork and turn-off flags.

◆ SetTurn() [2/2]

void CartoType::TTurn::SetTurn ( double  aTurnAngle)

Sets the TTurn object's turn angle and turn type from an angle in degrees. Leaves other date members unchanged.

◆ WriteAsXml()

void CartoType::TTurn::WriteAsXml ( MOutputStream aOutput) const

Writes the TTurn object in XML format as a turn element.

Member Data Documentation

◆ iChoices

int32_t CartoType::TTurn::iChoices = 0

The number of choices at this turning if known; 0 if not known.

◆ iContinue

bool CartoType::TTurn::iContinue = true

True if this turn is a continuation of the current road and no notification is needed.

◆ iExitNumber

int32_t CartoType::TTurn::iExitNumber = 0

The junction to take, counting the current junction as 0, if this junction is part of a roundabout.

◆ iInDirection

double CartoType::TTurn::iInDirection = 0

The incoming direction in degrees relative to map east, going anticlockwise.

◆ iIsFork

bool CartoType::TTurn::iIsFork = false

True if this turn is a fork: that is, there is an alternative within 22.5 degrees of the turn actually taken.

◆ iJunctionName

CString CartoType::TTurn::iJunctionName

The name of the junction.

◆ iJunctionRef

CString CartoType::TTurn::iJunctionRef

The reference code of the junction.

◆ iLeftAlternatives

int32_t CartoType::TTurn::iLeftAlternatives = 0

The number of choices to the left of the turn actually taken; if iChoices is zero, this data is not known.

◆ iOutDirection

double CartoType::TTurn::iOutDirection = 0

The outgoing direction in degrees relative to map east, going anticlockwise.

◆ iRightAlternatives

int32_t CartoType::TTurn::iRightAlternatives = 0

The number of choices to the right of the turn actually taken; if iChoices is zero, this data is not known.

◆ iRoundaboutState

TRoundaboutState CartoType::TTurn::iRoundaboutState = TRoundaboutState::None

The roundabout state.

◆ iTurnAngle

double CartoType::TTurn::iTurnAngle = 0

The turn angle in degrees: 0 = straight ahead; negative = left, positive = right.

◆ iTurnOff

bool CartoType::TTurn::iTurnOff = false

True if this choice is a turn off, defined as a turn on to a lower-status road.

◆ iTurnType

TTurnType CartoType::TTurn::iTurnType = TTurnType::None

The turn type: ahead, left, right, etc.

The documentation for this class was generated from the following file: