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.

Anhang 77<br />

Anhang 7 KLAUS – Kreisverkehrs-Leistungsfähigkeit-Auswerte-<br />

System<br />

7.1 KLAUS – Programmcode<br />

//<br />

// K L A U S<br />

// Modul: kvausw.cpp<br />

// Auswertung von Bewegungslinien von Grenz- und Folgezeitluecken<br />

// an Kreisverkehrsplaetzen<br />

// Version 3.0, 9/2003<br />

#include "stdafx.h"<br />

using namespace std;<br />

//-------------------------------------------------------------------<br />

// Hilfsfunktionen Dateizugriff und -einlesen<br />

string myReadLine(istream& is)<br />

{<br />

const int MAXINLINE = 10000;<br />

char buffer[MAXINLINE] = "";<br />

is.getline(buffer,MAXINLINE);<br />

return buffer;<br />

}<br />

void SplitLine( const string& s, vector& values, const char delim = ';' )<br />

{<br />

int i = 0;<br />

string ws = "";<br />

values.clear();<br />

while ( i < s.length() ) {<br />

char ch = s.at(i);<br />

if ( ch == delim ) {<br />

values.push_back( ws );<br />

ws = "";<br />

}<br />

else {<br />

if ( ch == ',' ) ch = '.'; // Dezimalzeichen auf '.' aendern<br />

ws += ch;<br />

}<br />

i++;<br />

}<br />

if ( !ws.empty() ) values.push_back( ws );<br />

}<br />

void StringvectorZuDoublevector(const vector& vs, vector& vd)<br />

{<br />

vd.clear();<br />

for ( int i = 0; i < vs.size(); i++ )<br />

vd.push_back( atof( vs.at(i).c_str() ) );<br />

}<br />

//-------------------------------------------------------------------<br />

// Geometrische Hilfsfunktionen<br />

double Interpolate(const double x1, const double y1, const double x2,<br />

const double y2, const double xn)<br />

{<br />

if ( (x2-x1) == 0.0 ) return y1;<br />

return y1 + ( (xn-x1)/(x2-x1) * (y2-y1) );<br />

}<br />

void ReplaceDots(const string& input, string& s)<br />

{<br />

s = input;<br />

for (int i=0;i

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!