| 48 |  | template<typename Real> | 
| 49 |  | class Vector3 : public Vector<Real, 3>{ | 
| 50 |  | public: | 
| 51 | < |  | 
| 51 | > | typedef Real ElemType; | 
| 52 | > | typedef Real* ElemPoinerType; | 
| 53 | > |  | 
| 54 |  | Vector3() : Vector<Real, 3>(){} | 
| 55 |  |  | 
| 56 |  | /** Constructs and initializes a Vector3 from x, y, z coordinates */ | 
| 59 |  | data_[1] = y; | 
| 60 |  | data_[2] = z; | 
| 61 |  | } | 
| 62 | + |  | 
| 63 | + | /** Constructs and initializes from an array*/ | 
| 64 | + | inline Vector3(double* array) : Vector<Real, 3>(array) {} | 
| 65 |  |  | 
| 66 |  | inline Vector3(const Vector<Real, 3>& v) : Vector<Real, 3>(v) {} | 
| 67 |  |  | 
| 127 |  | return result; | 
| 128 |  | } | 
| 129 |  |  | 
| 130 | < | typedef template Vector3<double> Vector3d; | 
| 130 | > | typedef Vector3<double> Vector3d; | 
| 131 |  |  | 
| 132 |  | } | 
| 133 |  |  |