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.
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;