Exits of roundabouts get handled
This commit is contained in:
@@ -112,6 +112,10 @@ public:
|
||||
if ( 0 < name.length() )
|
||||
w.name = name;
|
||||
|
||||
if(junction == "roundabout") {
|
||||
w.roundabout = true;
|
||||
}
|
||||
|
||||
//Is the highway tag listed as usable way?
|
||||
if(0 < settings[highway]) {
|
||||
|
||||
@@ -134,9 +138,6 @@ public:
|
||||
else if("no" == accessClass)
|
||||
w.access = false;
|
||||
|
||||
if(junction == "roundabout") {
|
||||
w.roundabout = true;
|
||||
}
|
||||
//Let's process oneway property, if speed profile obeys to it
|
||||
if(oneway != "no" && oneway != "false" && oneway != "0" && settings.obeyOneways) {
|
||||
//if oneway tag is in forward direction or if actually roundabout
|
||||
@@ -157,7 +158,7 @@ public:
|
||||
}
|
||||
}
|
||||
if ( w.useful && w.access && (1 < w.path.size()) ) { //Only true if the way is specified by the speed profile
|
||||
//Hack: type is not set, perhaps use a bimap'ed speed profile to do set the type correctly?
|
||||
//TODO: type is not set, perhaps use a bimap'ed speed profile to do set the type correctly?
|
||||
w.type = 1;
|
||||
|
||||
//Get the unique identifier for the street name
|
||||
|
||||
@@ -42,6 +42,7 @@ struct TurnInstructionsClass {
|
||||
const static short StayOnRoundAbout = 13;
|
||||
|
||||
std::string TurnStrings[14];
|
||||
std::string Ordinals[11];
|
||||
|
||||
//This is a hack until c++0x is available enough to use initializer lists.
|
||||
TurnInstructionsClass(){
|
||||
@@ -59,6 +60,18 @@ struct TurnInstructionsClass {
|
||||
TurnStrings[11] = "Enter round-about";
|
||||
TurnStrings[12] = "Leave round-about";
|
||||
TurnStrings[13] = "Stay on round-about";
|
||||
|
||||
Ordinals[0] = "zeroth";
|
||||
Ordinals[1] = "first";
|
||||
Ordinals[2] = "second";
|
||||
Ordinals[3] = "third";
|
||||
Ordinals[4] = "fourth";
|
||||
Ordinals[5] = "fifth";
|
||||
Ordinals[6] = "sixth";
|
||||
Ordinals[7] = "seventh";
|
||||
Ordinals[8] = "eighth";
|
||||
Ordinals[9] = "nineth";
|
||||
Ordinals[10] = "tenth";
|
||||
};
|
||||
|
||||
static inline double GetTurnDirectionOfInstruction( const double angle ) {
|
||||
|
||||
Reference in New Issue
Block a user