00001 /* $Id: TupleThreeD.h,v 1.1 2003/03/08 18:39:27 pfb Exp $ */ 00002 00003 #ifndef _TupleThreeD_h 00004 #define _TupleThreeD_h 00005 00010 class TupleThreeD 00011 { 00012 //**************************************************************************** 00013 public: 00014 00018 TupleThreeD(); 00019 00026 TupleThreeD(double x, double y, double z); 00027 00032 TupleThreeD(const TupleThreeD& rhs); 00033 00037 virtual ~TupleThreeD(); 00038 00044 TupleThreeD& operator=(const TupleThreeD& rhs); 00045 00051 bool operator==(const TupleThreeD& rhs) const; 00052 00058 bool operator!=(const TupleThreeD& rhs) const; 00059 00067 const TupleThreeD& value(double x, double y, double z); 00068 00074 const TupleThreeD& value(double a[3]); 00075 00080 const TupleThreeD& value() const; 00081 00086 double X() const; 00087 00092 double Y() const; 00093 00098 double Z() const; 00099 00105 double operator*(const TupleThreeD& rhs) const; 00106 00112 const TupleThreeD& operator+(const TupleThreeD& rhs) const; 00113 00119 const TupleThreeD& operator-(const TupleThreeD& rhs) const; 00120 00121 //**************************************************************************** 00122 private: 00123 00124 double x; 00125 double y; 00126 double z; 00127 }; 00128 00129 /* 00130 * $Log: TupleThreeD.h,v $ 00131 * Revision 1.1 2003/03/08 18:39:27 pfb 00132 * Initial rev. 00133 * 00134 * 00135 */ 00136 #endif