home *** CD-ROM | disk | FTP | other *** search
/ Dream 52 / Amiga_Dream_52.iso / Linux / Divers / freedraft.tar.gz / freedraft.tar / FREEdraft-050298 / GEOMLIB2D / geom.h < prev    next >
C/C++ Source or Header  |  1998-04-29  |  2KB  |  42 lines

  1. // geom.h
  2.  
  3.  
  4. // Copyright (C) 1997  Cliff Johnson                                       //
  5. //                                                                         //
  6. // This program is free software; you can redistribute it and/or           //
  7. // modify it under the terms of the GNU  General Public                    //
  8. // License as published by the Free Software Foundation; either            //
  9. // version 2 of the License, or (at your option) any later version.        //
  10. //                                                                         //
  11. // This software is distributed in the hope that it will be useful,        //
  12. // but WITHOUT ANY WARRANTY; without even the implied warranty of          //
  13. // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU       //
  14. // General Public License for more details.                                //
  15. //                                                                         //
  16. // You should have received a copy of the GNU General Public License       //
  17. // along with this software (see COPYING); if not, write to the        //
  18. // Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. //
  19.  
  20.  
  21. #ifndef _GEOM_HPP_
  22. #define _GEOM_HPP_
  23.  
  24. class Point;
  25.  
  26. class Geom 
  27. {
  28. private:
  29.   int type;
  30.  
  31. public:
  32.  
  33.   Geom(int t){ type = t; }
  34.   int Type() const { return type; }
  35.  
  36.   virtual ~Geom() {}  // necessary because some containters hold derived classes using
  37.               // pointers to this base class
  38.   virtual double Distance(const Point&) const = 0;
  39. };
  40.  
  41. #endif
  42.