Dissertation-Endstand3 - KLUEDO - Universität Kaiserslautern
Dissertation-Endstand3 - KLUEDO - Universität Kaiserslautern
Dissertation-Endstand3 - KLUEDO - Universität Kaiserslautern
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
84<br />
break;<br />
}<br />
}<br />
return valid; // false = only invalids<br />
}<br />
// Einleseroutine (aus dem Stream der ViVATraffic-Datei)<br />
int ViVALeseFahrzeug(istream &is)<br />
{<br />
string s;<br />
vector swerte;<br />
vector xwerte, ywerte;<br />
int num_valid_pos = 0;<br />
m_pos.clear();<br />
// x - Werte<br />
s = myReadLine(is);<br />
if ( is.eof() || s.empty() ) return 1;// no more data<br />
s.at(0) = ' ';<br />
s.at(1) = ' ';<br />
SplitLine( s, swerte );<br />
StringvectorZuDoublevector(swerte,xwerte);<br />
// y - Werte<br />
s = myReadLine(is);<br />
s.at(0) = ' ';<br />
s.at(1) = ' ';<br />
SplitLine( s, swerte );<br />
StringvectorZuDoublevector(swerte,ywerte);<br />
Position pos;<br />
for ( int i = 0; i < swerte.size() ; i++ ) {<br />
if ( swerte.at(i).find('?') != string::npos ) {<br />
pos.x = Position::INVALIDDOUBLE;<br />
pos.y = Position::INVALIDDOUBLE;<br />
pos.valid = false;<br />
}<br />
else {<br />
pos.x = xwerte.at(i);<br />
pos.y = ywerte.at(i);<br />
pos.valid = true;<br />
num_valid_pos++;<br />
}<br />
m_pos.push_back(pos);<br />
}<br />
// Metadaten<br />
s = myReadLine(is);<br />
SplitLine (s, swerte );<br />
if (swerte.size()>0) m_klasse = swerte.at(1);<br />
else m_klasse = "unbekannt";<br />
if (num_valid_pos ygrenz ) typ = FTAusfahrer;<br />
else if ( fy > ygrenz && ly < ygrenz ) typ = FTEinfahrer;<br />
else if ( fy < ygrenz && ly < ygrenz ) typ = FTKreisfahrer;<br />
else if ( fy > ygrenz && ly > ygrenz ) {<br />
if ( fy > ly ) typ = FTEinfahrer;<br />
if ( fy < ly ) typ = FTAusfahrer;<br />
}<br />
else typ = FTUnbekannt;<br />
m_typ = typ;<br />
m_typermittelt = true;<br />
return m_typ;<br />
}<br />
bool BerechneGeschwindigkeiten(const vector& zt, const double YHaltestelle,<br />
const double Y_Kreis, const double vLangsam, ostream& os = cout)<br />
{<br />
int lp = -1;<br />
Anhang