//TwoDPointFloat.cc
#ifndef TWODPOINTFLOAT_CC
#define TWODPOINTFLOAT_CC
#include <float.h>
#include <iostream.h>
using namespace std;
class TwoDPointFloat {
float Xaxis_float;
float Yaxis_float;
public:
TwoDPointFloat()
{
Xaxis_float = FLT_MAX;
Yaxis_float = FLT_MAX;
}
~TwoDPointFloat(){}
float xaxis()
{
return Xaxis_float;
}
void xaxis( float A )
{
Xaxis_float = A;
}
float yaxis()
{
return Yaxis_float;
}
void yaxis( float A )
{
Yaxis_float = A;
}
// overloads
bool operator==( const TwoDPointFloat &A )
{
return ( Xaxis_float == A.Xaxis_float && Yaxis_float == A.Yaxis_float );
} // ==
void operator=( const TwoDPointFloat &A )
{
Xaxis_float = A.Xaxis_float;
Yaxis_float = A.Yaxis_float;
} // =
bool operator!=( const TwoDPointFloat &A )
{
return ( Xaxis_float != A.Xaxis_float && Yaxis_float != A.Yaxis_float );
} // !=
bool operator<( const TwoDPointFloat &A )
{
return (( Xaxis_float < A.Xaxis_float && Yaxis_float < A.Yaxis_float ) ||
( Xaxis_float < A.Xaxis_float && Yaxis_float == A.Yaxis_float ) ||
( Xaxis_float == A.Xaxis_float && Yaxis_float < A.Yaxis_float ) );
} // <
bool operator<=( const TwoDPointFloat &A )
{
return ( Xaxis_float <= A.Xaxis_float && Yaxis_float <= A.Yaxis_float );
} // <=
bool operator>( const TwoDPointFloat &A )
{
return (( Xaxis_float > A.Xaxis_float && Yaxis_float > A.Yaxis_float ) ||
( Xaxis_float > A.Xaxis_float && Yaxis_float == A.Yaxis_float ) ||
( Xaxis_float == A.Xaxis_float && Yaxis_float > A.Yaxis_float ) );
} // >
bool operator>=( const TwoDPointFloat &A )
{
return ( Xaxis_float >= A.Xaxis_float && Yaxis_float >= A.Yaxis_float );
} // >=
void PRINT()
{
cout << "(";
cout << (int) Xaxis_float;
cout << ",";
cout << (int) Yaxis_float;
cout << ")";
}
};
#endif // TwoDPointFloat.cc