diff options
author | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2011-06-26 00:29:37 +0000 |
---|---|---|
committer | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2011-06-26 00:29:37 +0000 |
commit | 2785103a6bd4de55bd26d79e34d0fdd4b329a73a (patch) | |
tree | c2738b1095bfdb263da27bc1391403d829522a14 /krita/core/kis_vec.h | |
parent | f008adb5a77e094eaf6abf3fc0f36958e66896a5 (diff) | |
download | koffice-2785103a6bd4de55bd26d79e34d0fdd4b329a73a.tar.gz koffice-2785103a6bd4de55bd26d79e34d0fdd4b329a73a.zip |
Remove krita* in preparation for name switch from Krita to Chalk
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/applications/koffice@1238361 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'krita/core/kis_vec.h')
-rw-r--r-- | krita/core/kis_vec.h | 405 |
1 files changed, 0 insertions, 405 deletions
diff --git a/krita/core/kis_vec.h b/krita/core/kis_vec.h deleted file mode 100644 index 08b9c541..00000000 --- a/krita/core/kis_vec.h +++ /dev/null @@ -1,405 +0,0 @@ -/* - * kis_vec.h - part of KImageShop - * - * Copyright (c) 1999 Matthias Elter <[email protected]> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - */ - -#ifndef __kis_vec_h__ -#define __kis_vec_h__ - -#include <math.h> -#include <cfloat> -#include <tqpoint.h> -#include "kis_point.h" - -/* - * vector classes - */ -const double epsilon = DBL_EPSILON; - -class KisVector2D -{ -public: - KisVector2D(); - KisVector2D(double x, double y); - KisVector2D(const TQPoint& p); - KisVector2D(const KisPoint& p); - - bool isNull() const; - - double length() const; - - double x() const; - double y() const; - void setX(double); - void setY(double); - - KisVector2D &normalize(); - double dotProduct(const KisVector2D &) const; - - KisVector2D &operator+=(const KisVector2D &); - KisVector2D &operator-=(const KisVector2D &); - KisVector2D &operator*=(int); - KisVector2D &operator*=(long); - KisVector2D &operator*=(double); - KisVector2D &operator/=(int); - KisVector2D &operator/=(long); - KisVector2D &operator/=(double); - - friend inline bool operator==(const KisVector2D &, const KisVector2D &); - friend inline bool operator!=(const KisVector2D &, const KisVector2D &); - friend inline KisVector2D operator+(const KisVector2D &, const KisVector2D &); - friend inline KisVector2D operator-(const KisVector2D &, const KisVector2D &); - friend inline KisVector2D operator*(const KisVector2D &, int); - friend inline KisVector2D operator*(int, const KisVector2D &); - friend inline KisVector2D operator*(const KisVector2D &, long); - friend inline KisVector2D operator*(long, const KisVector2D &); - friend inline KisVector2D operator*(const KisVector2D &, double); - friend inline KisVector2D operator*(double, const KisVector2D &); - friend inline KisVector2D operator-(const KisVector2D &); - friend inline KisVector2D operator/(const KisVector2D &, int); - friend inline KisVector2D operator/(const KisVector2D &, long); - friend inline KisVector2D operator/(const KisVector2D &, double); - - KisPoint toKisPoint() const; - -private: - double m_x; - double m_y; -}; - -inline KisVector2D::KisVector2D() -{ m_x=0; m_y=0; } - -inline KisVector2D::KisVector2D(double x, double y) -{ m_x=x; m_y=y; } - -inline KisVector2D::KisVector2D(const TQPoint& p) -{ - m_x=p.x(); m_y=p.y(); -} - -inline KisVector2D::KisVector2D(const KisPoint& p) -{ - m_x=p.x(); m_y=p.y(); -} - -inline bool KisVector2D::isNull() const -{ return fabs(m_x) < epsilon && fabs(m_y) < epsilon; } - -inline double KisVector2D::length() const -{ return (sqrt(m_x*m_x + m_y*m_y)); } - -inline double KisVector2D::dotProduct(const KisVector2D &v) const -{ return m_x*v.m_x + m_y*v.m_y; } - -inline double KisVector2D::x() const -{ return m_x; } - -inline double KisVector2D::y() const -{ return m_y; } - -inline void KisVector2D::setX(double x) -{ m_x=x; } - -inline void KisVector2D::setY(double y) -{ m_y=y; } - -inline KisVector2D &KisVector2D::operator+=(const KisVector2D &v) -{ m_x+=v.m_x; m_y+=v.m_y; return *this; } - -inline KisVector2D &KisVector2D::operator-=(const KisVector2D &v) -{ m_x-=v.m_x; m_y-=v.m_y; return *this; } - -inline KisVector2D &KisVector2D::operator*=(int c) -{ m_x*=c; m_y*=c; return *this; } - -inline KisVector2D &KisVector2D::operator*=(long c) -{ m_x*=c; m_y*=c; return *this; } - -inline KisVector2D &KisVector2D::operator*=(double c) -{ m_x*=c; m_y*=c; return *this; } - -inline bool operator==(const KisVector2D &v1, const KisVector2D &v2) -{ return fabs(v1.m_x - v2.m_x) < epsilon && fabs(v1.m_y - v2.m_y) < epsilon; } - -inline bool operator!=(const KisVector2D &v1, const KisVector2D &v2) -{ return !(v1 == v2); } - -inline KisVector2D operator+(const KisVector2D &v1, const KisVector2D &v2) -{ return KisVector2D(v1.m_x+v2.m_x, v1.m_y+v2.m_y); } - -inline KisVector2D operator-(const KisVector2D &v1, const KisVector2D &v2) -{ return KisVector2D(v1.m_x-v2.m_x, v1.m_y-v2.m_y); } - -inline KisVector2D operator*(const KisVector2D &v, int c) -{ return KisVector2D((v.m_x*c), (v.m_y*c)); } - -inline KisVector2D operator*(int c, const KisVector2D &v) -{ return KisVector2D((v.m_x*c), (v.m_y*c)); } - -inline KisVector2D operator*(const KisVector2D &v, long c) -{ return KisVector2D((v.m_x*c), (v.m_y*c)); } - -inline KisVector2D operator*(long c, const KisVector2D &v) -{ return KisVector2D((v.m_x*c), (v.m_y*c)); } - -inline KisVector2D operator*(const KisVector2D &v, double c) -{ return KisVector2D(v.m_x*c, v.m_y*c); } - -inline KisVector2D operator*(double c, const KisVector2D &v) -{ return KisVector2D(v.m_x*c, v.m_y*c); } - -inline KisVector2D operator-(const KisVector2D &v) -{ return KisVector2D(-v.m_x, -v.m_y); } - -inline KisVector2D operator/(const KisVector2D &v, int c) -{ - if (c != 0) { - return KisVector2D(v.x() / c, v.y() / c); - } else { - return v; - } -} - -inline KisVector2D operator/(const KisVector2D &v, long c) -{ - if (c != 0) { - return KisVector2D(v.x() / c, v.y() / c); - } else { - return v; - } -} - -inline KisVector2D operator/(const KisVector2D &v, double c) -{ - if (c > DBL_EPSILON || c < -DBL_EPSILON) { - return KisVector2D(v.x() / c, v.y() / c); - } else { - return v; - } -} - -inline KisVector2D &KisVector2D::operator/=(int c) -{ - if (!c == 0) - { - m_x/=c; - m_y/=c; - } - return *this; -} - -inline KisVector2D &KisVector2D::operator/=(long c) -{ - if (!c == 0) - { - m_x/=c; - m_y/=c; - } - return *this; -} - -inline KisVector2D &KisVector2D::operator/=(double c) -{ - if (!c == 0) - { - m_x/=c; - m_y/=c; - } - return *this; -} - -inline KisPoint KisVector2D::toKisPoint() const -{ - return KisPoint(m_x, m_y); -} - -class KisVector3D -{ -public: - KisVector3D(); - KisVector3D(double x, double y, double z = 0); - KisVector3D(int x, int y, int z = 0); - KisVector3D(long x, long y, long z = 0); - - bool isNull() const; - - double length() const; - - double x() const; - double y() const; - double z() const; - void setX(double); - void setY(double); - void setZ(double); - - KisVector3D &normalize(); - KisVector3D &crossProduct(const KisVector3D &); - double dotProduct(const KisVector3D &) const; - - KisVector3D &operator+=(const KisVector3D &); - KisVector3D &operator-=(const KisVector3D &); - KisVector3D &operator*=(int); - KisVector3D &operator*=(long); - KisVector3D &operator*=(double); - KisVector3D &operator/=(int); - KisVector3D &operator/=(long); - KisVector3D &operator/=(double); - - friend inline bool operator==(const KisVector3D &, const KisVector3D &); - friend inline bool operator!=(const KisVector3D &, const KisVector3D &); - friend inline KisVector3D operator+(const KisVector3D &, const KisVector3D &); - friend inline KisVector3D operator-(const KisVector3D &, const KisVector3D &); - friend inline KisVector3D operator*(const KisVector3D &, int); - friend inline KisVector3D operator*(int, const KisVector3D &); - friend inline KisVector3D operator*(const KisVector3D &, long); - friend inline KisVector3D operator*(long, const KisVector3D &); - friend inline KisVector3D operator*(const KisVector3D &, double); - friend inline KisVector3D operator*(double, const KisVector3D &); - friend inline KisVector3D operator-(const KisVector3D &); - friend inline KisVector3D operator/(const KisVector3D &, int); - friend inline KisVector3D operator/(const KisVector3D &, long); - friend inline KisVector3D operator/(const KisVector3D &, double); - -private: - double m_x; - double m_y; - double m_z; -}; - -inline KisVector3D::KisVector3D() -{ m_x=0; m_y=0; m_z=0; } - -inline KisVector3D::KisVector3D(double x, double y, double z) -{ m_x=x; m_y=y; m_z=z; } - -inline KisVector3D::KisVector3D(int x, int y, int z) -{ m_x=static_cast<double>(x); m_y=static_cast<double>(y); m_z=static_cast<double>(z); } - -inline KisVector3D::KisVector3D(long x, long y, long z) -{ m_x=static_cast<double>(x); m_y=static_cast<double>(y); m_z=static_cast<double>(z); } - -inline bool KisVector3D::isNull() const -{ return fabs(m_x) < epsilon && fabs(m_y) < epsilon && fabs(m_z) < epsilon; } - -inline double KisVector3D::length() const -{ return (sqrt(m_x*m_x + m_y*m_y + m_z*m_z)); } - -inline double KisVector3D::dotProduct(const KisVector3D &v) const -{ return m_x*v.m_x + m_y*v.m_y + m_z*v.m_z; } - -inline double KisVector3D::x() const -{ return m_x; } - -inline double KisVector3D::y() const -{ return m_y; } - -inline double KisVector3D::z() const -{ return m_z; } - -inline void KisVector3D::setX(double x) -{ m_x=x; } - -inline void KisVector3D::setY(double y) -{ m_y=y; } - -inline void KisVector3D::setZ(double z) -{ m_z=z; } - -inline KisVector3D &KisVector3D::operator+=(const KisVector3D &v) -{ m_x+=v.m_x; m_y+=v.m_y; m_z+=v.m_z; return *this; } - -inline KisVector3D &KisVector3D::operator-=(const KisVector3D &v) -{ m_x-=v.m_x; m_y-=v.m_y; m_z-=v.m_z; return *this; } - -inline KisVector3D &KisVector3D::operator*=(int c) -{ m_x*=c; m_y*=c; m_z*=c; return *this; } - -inline KisVector3D &KisVector3D::operator*=(long c) -{ m_x*=c; m_y*=c; m_z*=c; return *this; } - -inline KisVector3D &KisVector3D::operator*=(double c) -{ m_x*=c; m_y*=c; m_z*=c; return *this; } - -inline bool operator==(const KisVector3D &v1, const KisVector3D &v2) -{ return fabs(v1.m_x - v2.m_x) < epsilon && fabs(v1.m_y - v2.m_y) < epsilon && fabs(v1.m_z - v2.m_z) < epsilon; } - -inline bool operator!=(const KisVector3D &v1, const KisVector3D &v2) -{ return !(v1 == v2); } - -inline KisVector3D operator+(const KisVector3D &v1, const KisVector3D &v2) -{ return KisVector3D(v1.m_x+v2.m_x, v1.m_y+v2.m_y, v1.m_z+v2.m_z); } - -inline KisVector3D operator-(const KisVector3D &v1, const KisVector3D &v2) -{ return KisVector3D(v1.m_x-v2.m_x, v1.m_y-v2.m_y, v1.m_z-v2.m_z); } - -inline KisVector3D operator*(const KisVector3D &v, int c) -{ return KisVector3D((v.m_x*c), (v.m_y*c), (v.m_z*c)); } - -inline KisVector3D operator*(int c, const KisVector3D &v) -{ return KisVector3D((v.m_x*c), (v.m_y*c), (v.m_z*c)); } - -inline KisVector3D operator*(const KisVector3D &v, long c) -{ return KisVector3D((v.m_x*c), (v.m_y*c), (v.m_z*c)); } - -inline KisVector3D operator*(long c, const KisVector3D &v) -{ return KisVector3D((v.m_x*c), (v.m_y*c), (v.m_z*c)); } - -inline KisVector3D operator*(const KisVector3D &v, double c) -{ return KisVector3D(v.m_x*c, v.m_y*c, v.m_z*c); } - -inline KisVector3D operator*(double c, const KisVector3D &v) -{ return KisVector3D(v.m_x*c, v.m_y*c, v.m_z*c); } - -inline KisVector3D operator-(const KisVector3D &v) -{ return KisVector3D(-v.m_x, -v.m_y, -v.m_z); } - -inline KisVector3D &KisVector3D::operator/=(int c) -{ - if (!c == 0) - { - m_x/=c; - m_y/=c; - m_z/=c; - } - return *this; -} - -inline KisVector3D &KisVector3D::operator/=(long c) -{ - if (!c == 0) - { - m_x/=c; - m_y/=c; - m_z/=c; - } - return *this; -} - -inline KisVector3D &KisVector3D::operator/=(double c) -{ - if (!c == 0) - { - m_x/=c; - m_y/=c; - m_z/=c; - } - return *this; -} - -#endif |