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 83<br />

return s;<br />

}<br />

// Positionsauswertung<br />

bool getMinMaxPos(char direction, bool max, double& result) const<br />

{<br />

bool first = false;<br />

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

if ( m_pos.at(i).valid ) {<br />

if ( !first ) {<br />

first = true;<br />

if (direction == 'x') result = m_pos.at(i).x;<br />

else result = m_pos.at(i).y;<br />

}<br />

else {<br />

if (direction == 'x') {<br />

if ( max == true && m_pos.at(i).x > result ) result = m_pos.at(i).x;<br />

if ( max == false && m_pos.at(i).x < result ) result = m_pos.at(i).x;<br />

}<br />

else {<br />

if ( max == true && m_pos.at(i).y > result ) result = m_pos.at(i).y;<br />

if ( max == false && m_pos.at(i).y < result ) result = m_pos.at(i).y;<br />

}<br />

}<br />

}<br />

}<br />

return first; // false = only invalids<br />

}<br />

bool getMaxXPos(double& result) const<br />

{<br />

return getMinMaxPos('x', true, result);<br />

}<br />

bool getMinXPos(double& result) const<br />

{<br />

return getMinMaxPos('x', false, result);<br />

}<br />

bool getMaxYPos(double& result) const<br />

{<br />

return getMinMaxPos('y', true, result);<br />

}<br />

bool getMinYPos(double& result) const<br />

{<br />

return getMinMaxPos('y', false, result);<br />

}<br />

bool getLimitPos(double& minx, double& miny, double& maxx, double &maxy) const<br />

{<br />

bool r1,r2,r3,r4;<br />

r1 = getMaxXPos( maxx );<br />

r2 = getMinXPos( minx );<br />

r3 = getMaxYPos( maxy );<br />

r4 = getMinYPos( miny );<br />

return r1 && r2 && r3 && r4;<br />

}<br />

bool getFirstPos(double& x, double &y) const<br />

{<br />

bool valid = false;<br />

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

if ( m_pos.at(i).valid ) {<br />

valid = true;<br />

x = m_pos.at(i).x;<br />

y = m_pos.at(i).y;<br />

break;<br />

}<br />

}<br />

return valid; // false = only invalids<br />

}<br />

bool getLastPos(double& x, double &y) const<br />

{<br />

bool valid = false;<br />

for (int i = m_pos.size()-1 ; i >= 0; i-- ) {<br />

if ( m_pos.at(i).valid ) {<br />

valid = true;<br />

x = m_pos.at(i).x;<br />

y = m_pos.at(i).y;

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!