// ========================================================================== // $Id: point2d.cpp,v 1.1 2011/10/19 03:24:40 jlang Exp $ // CSI2372 example Code for lecture 4 // ========================================================================== // (C)opyright: // // Jochen Lang // SITE, University of Ottawa // 800 King Edward Ave. // Ottawa, On., K1N 6N5 // Canada. // http://www.site.uottawa.ca // // Creator: jlang (Jochen Lang) // Email: jlang@site.uottawa.ca // ========================================================================== // $Log: point2d.cpp,v $ // Revision 1.1 2011/10/19 03:24:40 jlang // Added code for lecture 7 // // ========================================================================== #include #include "point2d.h" /** * Point2D - All in-one constructor */ Point2D::Point2D( double _x, double _y ) : d_x(_x), d_y(_y) {} /** * Convenience printing method */ void Point2D::print() const { std::cout << "( " << d_x << ", " << d_y << " )"; return; } /** * Compare a "point" coordinate-wise to this point and return minimum * coordinates */ Point2D Point2D::min( const Point2D& _oPoint ) const { Point2D res; res.d_x = (d_x < _oPoint.d_x)?d_x:_oPoint.d_x; res.d_y = (d_y < _oPoint.d_y)?d_y:_oPoint.d_y; return res; } /** * Compare a "point" coordinate-wise to this point and return maximum * coordinates */ Point2D Point2D::max( const Point2D& _oPoint ) const { Point2D res; res.d_x = (d_x > _oPoint.d_x)?d_x:_oPoint.d_x; res.d_y = (d_y > _oPoint.d_y)?d_y:_oPoint.d_y; return res; } /** * Return true if current point has smaller coordinates than other * point */ bool Point2D::isSmaller( const Point2D& _oPoint ) const { if ( d_x < _oPoint.d_x && d_y < _oPoint.d_y ) { return true; } else { return false; } } /** * Return true if current point has larger coordinates than other * point */ bool Point2D::isGreater( const Point2D& _oPoint ) const { if ( d_x > _oPoint.d_x && d_y > _oPoint.d_y ) { return true; } else { return false; } } double Point2D::getX() { return d_x; } double Point2D::getY() { return d_y; }