sprint 1-alpha
|
00001 /****************************************************************************** 00002 * sprint::point 00003 * 00004 * Copyright (C) 2004-2011 Paolo Medici <www.pmx.it> 00005 * 00006 * This library is free software; you can redistribute it and/or 00007 * modify it under the terms of the GNU Lesser General Public 00008 * License as published by the Free Software Foundation; either 00009 * version 2.1 of the License, or (at your option) any later version. 00010 * 00011 * This library is distributed in the hope that it will be useful, 00012 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00014 * Lesser General Public License for more details. 00015 * 00016 * You should have received a copy of the GNU Lesser General Public 00017 * License along with this library; if not, write to the Free Software 00018 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 00019 * 00020 *******************************************************************************/ 00021 #ifndef _SPRINT_POINT_H 00022 #define _SPRINT_POINT_H 00023 00027 namespace sprint { 00028 00030 template<class T> 00031 struct point2 { 00032 T x,y; 00033 00034 point2() { } 00035 point2(T _x, T _y) : x(_x), y(_y) {} 00036 }; 00037 00039 template<class T> 00040 struct point3 { 00041 T x,y,z; 00042 00043 point3() { } 00044 point3(T _x, T _y, T _z) : x(_x), y(_y), z(_z) {} 00045 }; 00046 00048 template<class T> 00049 struct point4 { 00050 T x,y,z,w; 00051 00052 point4() { } 00053 point4(T _x, T _y, T _z, T _w) : x(_x), y(_y), z(_z), w(_w) {} 00054 }; 00055 00056 } 00057 00058 #endif