30.12.2012 Aufrufe

Dissertation-Endstand3 - KLUEDO - Universität Kaiserslautern

Dissertation-Endstand3 - KLUEDO - Universität Kaiserslautern

Dissertation-Endstand3 - KLUEDO - Universität Kaiserslautern

MEHR ANZEIGEN
WENIGER ANZEIGEN

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

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!