00001 /* Copyright (C) 2001 W.P. van Paassen - peter@paassen.tmfweb.nl 00002 00003 This program is free software; you can redistribute it and/or modify it under 00004 the terms of the GNU General Public License as published by the Free 00005 Software Foundation; either version 2 of the License, or (at your 00006 option) any later version. 00007 00008 This program is distributed in the hope that it will be useful, but WITHOUT 00009 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 00010 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 00011 for more details. 00012 00013 You should have received a copy of the GNU General Public License 00014 along with this program; see the file COPYING. If not, write to the Free 00015 Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ 00016 00017 #ifndef WP_LINE2D_H 00018 #define WP_LINE2D_H 00019 00020 #include "WP_Def.h" 00021 #include "WP_Point2D.h" 00022 #include "WP_Vector2D.h" 00023 00024 namespace WPCG 00025 { 00044 class WP_Line2D 00045 { 00046 public: 00047 WP_Line2D(){}; 00048 00053 WP_Line2D(const WP_Point2D& p1, const WP_Point2D& p2); 00054 ~WP_Line2D(); 00055 00059 void draw(); 00060 00065 scalar length() const; 00066 00070 WP_Point2D start; 00071 00075 WP_Point2D end; 00076 00080 WP_Vector2D normal; 00081 }; 00082 } 00083 #endif 00084