Krita Source Code Documentation
Loading...
Searching...
No Matches
FitVector Class Reference

Public Member Functions

qreal dot (const FitVector &v) const
 
 FitVector ()
 
 FitVector (const QPointF &a, const QPointF &b)
 
 FitVector (const QPointF &p)
 
qreal length () const
 
void negate ()
 
void normalize ()
 
QPointF operator+ (const QPointF &p)
 
void scale (qreal s)
 

Public Attributes

qreal m_X
 
qreal m_Y
 

Detailed Description

Definition at line 25 of file KoCurveFit.cpp.

Constructor & Destructor Documentation

◆ FitVector() [1/3]

FitVector::FitVector ( const QPointF & p)
inline

Definition at line 27 of file KoCurveFit.cpp.

28 : m_X(p.x())
29 , m_Y(p.y())
30 {
31 }
const Params2D p

◆ FitVector() [2/3]

FitVector::FitVector ( )
inline

Definition at line 33 of file KoCurveFit.cpp.

34 : m_X(0)
35 , m_Y(0)
36 {
37 }

◆ FitVector() [3/3]

FitVector::FitVector ( const QPointF & a,
const QPointF & b )
inline

Definition at line 39 of file KoCurveFit.cpp.

40 : m_X(a.x() - b.x())
41 , m_Y(a.y() - b.y())
42 {
43 }

Member Function Documentation

◆ dot()

qreal FitVector::dot ( const FitVector & v) const
inline

Definition at line 67 of file KoCurveFit.cpp.

67 {
68 return ((m_X*v.m_X) + (m_Y*v.m_Y));
69 }
qreal v

References m_X, m_Y, and v.

◆ length()

qreal FitVector::length ( ) const
inline

Definition at line 71 of file KoCurveFit.cpp.

71 {
72 return (qreal) sqrt(m_X*m_X + m_Y*m_Y);
73 }

References m_X, and m_Y.

◆ negate()

void FitVector::negate ( )
inline

Definition at line 53 of file KoCurveFit.cpp.

53 {
54 m_X = -m_X;
55 m_Y = -m_Y;
56 }

References m_X, and m_Y.

◆ normalize()

void FitVector::normalize ( )
inline

Definition at line 45 of file KoCurveFit.cpp.

45 {
46 qreal len = length();
47 if (qFuzzyCompare(len, qreal(0.0))) {
48 return;
49 }
50 m_X /= len; m_Y /= len;
51 }
qreal length() const
static bool qFuzzyCompare(half p1, half p2)

References length(), m_X, m_Y, and qFuzzyCompare().

◆ operator+()

QPointF FitVector::operator+ ( const QPointF & p)
inline

Definition at line 75 of file KoCurveFit.cpp.

75 {
76 QPointF b(p.x() + m_X, p.y() + m_Y);
77 return b;
78 }

References m_X, m_Y, and p.

◆ scale()

void FitVector::scale ( qreal s)
inline

Definition at line 58 of file KoCurveFit.cpp.

58 {
59 qreal len = length();
60 if (qFuzzyCompare(len, qreal(0.0))) {
61 return;
62 }
63 m_X *= s / len;
64 m_Y *= s / len;
65 }

References length(), m_X, m_Y, and qFuzzyCompare().

Member Data Documentation

◆ m_X

qreal FitVector::m_X

Definition at line 81 of file KoCurveFit.cpp.

◆ m_Y

qreal FitVector::m_Y

Definition at line 81 of file KoCurveFit.cpp.


The documentation for this class was generated from the following file: