- Timestamp:
- 06/20/06 13:28:51 (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
GTP/trunk/Lib/Geom/shared/GTGeometry/src/libs/gfx/math/Vec2.h
r774 r1025 10 10 ************************************************************************/ 11 11 12 namespace qslim12 namespace simplif 13 13 { 14 14 class Vec2 { … … 78 78 // 79 79 80 inline void qslim::Vec2::copy(const qslim::Vec2& v)80 inline void simplif::Vec2::copy(const simplif::Vec2& v) 81 81 { 82 82 elt[0]=v.elt[0]; elt[1]=v.elt[1]; 83 83 } 84 84 85 inline bool qslim::Vec2::operator==(const qslim::Vec2& v) const85 inline bool simplif::Vec2::operator==(const simplif::Vec2& v) const 86 86 { 87 87 real dx=elt[X]-v[X], dy=elt[Y]-v[Y]; … … 89 89 } 90 90 91 inline bool qslim::Vec2::operator!=(const qslim::Vec2& v) const91 inline bool simplif::Vec2::operator!=(const simplif::Vec2& v) const 92 92 { 93 93 real dx=elt[X]-v[X], dy=elt[Y]-v[Y]; … … 95 95 } 96 96 97 inline qslim::Vec2& qslim::Vec2::operator=(const qslim::Vec2& v)97 inline simplif::Vec2& simplif::Vec2::operator=(const simplif::Vec2& v) 98 98 { 99 99 copy(v); … … 101 101 } 102 102 103 inline qslim::Vec2& qslim::Vec2::operator+=(const qslim::Vec2& v)103 inline simplif::Vec2& simplif::Vec2::operator+=(const simplif::Vec2& v) 104 104 { 105 105 elt[0] += v[0]; elt[1] += v[1]; … … 107 107 } 108 108 109 inline qslim::Vec2& qslim::Vec2::operator-=(const qslim::Vec2& v)109 inline simplif::Vec2& simplif::Vec2::operator-=(const simplif::Vec2& v) 110 110 { 111 111 elt[0] -= v[0]; elt[1] -= v[1]; … … 113 113 } 114 114 115 inline qslim::Vec2& qslim::Vec2::operator*=(qslim::real s)115 inline simplif::Vec2& simplif::Vec2::operator*=(simplif::real s) 116 116 { 117 117 elt[0] *= s; elt[1] *= s; … … 119 119 } 120 120 121 inline qslim::Vec2& qslim::Vec2::operator/=(qslim::real s)121 inline simplif::Vec2& simplif::Vec2::operator/=(simplif::real s) 122 122 { 123 123 elt[0] /= s; elt[1] /= s; … … 125 125 } 126 126 127 inline qslim::Vec2 qslim::Vec2::operator+(const qslim::Vec2& v) const127 inline simplif::Vec2 simplif::Vec2::operator+(const simplif::Vec2& v) const 128 128 { 129 129 return Vec2(elt[0]+v[0], elt[1]+v[1]); 130 130 } 131 131 132 inline qslim::Vec2 qslim::Vec2::operator-(const qslim::Vec2& v) const132 inline simplif::Vec2 simplif::Vec2::operator-(const simplif::Vec2& v) const 133 133 { 134 134 return Vec2(elt[0]-v[0], elt[1]-v[1]); 135 135 } 136 136 137 inline qslim::Vec2 qslim::Vec2::operator-() const138 { 139 return qslim::Vec2(-elt[0], -elt[1]);140 } 141 142 inline qslim::Vec2 qslim::Vec2::operator*(qslim::real s) const137 inline simplif::Vec2 simplif::Vec2::operator-() const 138 { 139 return simplif::Vec2(-elt[0], -elt[1]); 140 } 141 142 inline simplif::Vec2 simplif::Vec2::operator*(simplif::real s) const 143 143 { 144 144 return Vec2(elt[0]*s, elt[1]*s); 145 145 } 146 146 147 inline qslim::Vec2 qslim::Vec2::operator/(qslim::real s) const147 inline simplif::Vec2 simplif::Vec2::operator/(simplif::real s) const 148 148 { 149 149 return Vec2(elt[0]/s, elt[1]/s); 150 150 } 151 151 152 inline qslim::real qslim::Vec2::operator*(const qslim::Vec2& v) const152 inline simplif::real simplif::Vec2::operator*(const simplif::Vec2& v) const 153 153 { 154 154 return elt[0]*v[0] + elt[1]*v[1]; … … 156 156 157 157 // Make scalar multiplication commutative 158 inline qslim::Vec2 operator*(qslim::real s, const qslim::Vec2& v) { return v*s; }158 inline simplif::Vec2 operator*(simplif::real s, const simplif::Vec2& v) { return v*s; } 159 159 160 160 … … 164 164 // 165 165 166 namespace qslim166 namespace simplif 167 167 { 168 inline real norm(const qslim::Vec2& v) { return sqrt(v[0]*v[0] + v[1]*v[1]); }169 inline real norm2(const qslim::Vec2& v) { return v[0]*v[0] + v[1]*v[1]; }170 inline real length(const qslim::Vec2& v) { return norm(v); }171 172 inline real unitize( qslim::Vec2& v)173 { 174 qslim::real l=norm2(v);168 inline real norm(const simplif::Vec2& v) { return sqrt(v[0]*v[0] + v[1]*v[1]); } 169 inline real norm2(const simplif::Vec2& v) { return v[0]*v[0] + v[1]*v[1]; } 170 inline real length(const simplif::Vec2& v) { return norm(v); } 171 172 inline real unitize(simplif::Vec2& v) 173 { 174 simplif::real l=norm2(v); 175 175 if( l!=1.0 && l!=0.0 ) 176 176 {
Note: See TracChangeset
for help on using the changeset viewer.