X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Flibr2c2%2Fcentralstation.cpp;h=82a0dfdb16878ae308f0b18d5ea6fd52a67a78e4;hb=64d23de66c33d0f77454c3db2e40cccc18f7851b;hp=ac553ab4ea5b94abc0f5b9a6515ca024c08ffa9f;hpb=7a36d396eded897c421424905b2c938d770df341;p=r2c2.git diff --git a/source/libr2c2/centralstation.cpp b/source/libr2c2/centralstation.cpp index ac553ab..82a0dfd 100644 --- a/source/libr2c2/centralstation.cpp +++ b/source/libr2c2/centralstation.cpp @@ -150,14 +150,14 @@ void CentralStation::add_turnout(unsigned addr, const TrackType &type) const vector &parts = type.get_parts(); for(vector::const_iterator i=parts.begin(); i!=parts.end(); ++i) { - TrackPoint start = i->get_point(0); - TrackPoint end = i->get_point(i->get_length()); - if(abs(end.dir-start.dir).radians()<0.01) + OrientedPoint start = i->get_point(0); + OrientedPoint end = i->get_point(i->get_length()); + if(abs(end.rotation-start.rotation).radians()<0.01) { - (end.dir>start.dir ? left : right) = true; + (end.rotation>start.rotation ? left : right) = true; straight &= ~(1<get_path()); } - else if(abs(start.dir).radians()>0.01) + else if(abs(start.rotation).radians()>0.01) cross = true; }