summaryrefslogtreecommitdiffstats
path: root/src/2geom/numeric
diff options
context:
space:
mode:
authorJabier Arraiza Cenoz <jabier.arraiza@marker.es>2015-07-24 18:50:50 +0000
committerJabiertxof <jtx@jtx.marker.es>2015-07-24 18:50:50 +0000
commit93cbf2b74b58f8e327bf179cba8e778a4339a3a8 (patch)
treebdf4fd04d479bdcc5705579056372a1c8da2ff21 /src/2geom/numeric
parentupdate to trunk (diff)
parentFix a bug continuing a bezier path whith a LPE one like spiro or bspline on a... (diff)
downloadinkscape-93cbf2b74b58f8e327bf179cba8e778a4339a3a8.tar.gz
inkscape-93cbf2b74b58f8e327bf179cba8e778a4339a3a8.zip
update to trunk
(bzr r13682.1.27)
Diffstat (limited to 'src/2geom/numeric')
-rw-r--r--src/2geom/numeric/fitting-model.h6
-rw-r--r--src/2geom/numeric/matrix.h20
-rw-r--r--src/2geom/numeric/symmetric-matrix-fs-operation.h7
-rw-r--r--src/2geom/numeric/symmetric-matrix-fs-trace.h8
-rw-r--r--src/2geom/numeric/symmetric-matrix-fs.h5
-rw-r--r--src/2geom/numeric/vector.h13
6 files changed, 28 insertions, 31 deletions
diff --git a/src/2geom/numeric/fitting-model.h b/src/2geom/numeric/fitting-model.h
index a44c1ddac..fb96d1d2a 100644
--- a/src/2geom/numeric/fitting-model.h
+++ b/src/2geom/numeric/fitting-model.h
@@ -39,7 +39,7 @@
#include <2geom/sbasis.h>
#include <2geom/bezier.h>
#include <2geom/bezier-curve.h>
-#include <2geom/poly.h>
+#include <2geom/polynomial.h>
#include <2geom/ellipse.h>
#include <2geom/circle.h>
#include <2geom/utils.h>
@@ -298,7 +298,7 @@ class LFMEllipse
public:
void instance(Ellipse & e, ConstVectorView const& coeff) const
{
- e.set(1, coeff[0], coeff[1], coeff[2], coeff[3], coeff[4]);
+ e.setCoefficients(1, coeff[0], coeff[1], coeff[2], coeff[3], coeff[4]);
}
};
@@ -333,7 +333,7 @@ class LFMCircle
public:
void instance(Circle & c, ConstVectorView const& coeff) const
{
- c.set(1, coeff[0], coeff[1], coeff[2]);
+ c.setCoefficients(1, coeff[0], coeff[1], coeff[2]);
}
};
diff --git a/src/2geom/numeric/matrix.h b/src/2geom/numeric/matrix.h
index a130bd748..ddca35cd6 100644
--- a/src/2geom/numeric/matrix.h
+++ b/src/2geom/numeric/matrix.h
@@ -432,16 +432,17 @@ class Matrix: public detail::MatrixImpl
inline
void swap(Matrix & m1, Matrix & m2)
{
- assert( m1.rows() == m2.rows() && m1.columns() == m2.columns() );
- std::swap(m1.m_matrix, m2.m_matrix);
+ assert(m1.rows() == m2.rows() && m1.columns() == m2.columns());
+ using std::swap;
+ swap(m1.m_matrix, m2.m_matrix);
}
-inline
-void swap_any(Matrix & m1, Matrix & m2)
+inline void swap_any(Matrix &m1, Matrix &m2)
{
- std::swap(m1.m_matrix, m2.m_matrix);
- std::swap(m1.m_rows, m2.m_rows);
- std::swap(m1.m_columns, m2.m_columns);
+ using std::swap;
+ swap(m1.m_matrix, m2.m_matrix);
+ swap(m1.m_rows, m2.m_rows);
+ swap(m1.m_columns, m2.m_columns);
}
@@ -569,8 +570,9 @@ class MatrixView : public detail::MatrixImpl
inline
void swap_view(MatrixView & m1, MatrixView & m2)
{
- assert( m1.rows() == m2.rows() && m1.columns() == m2.columns() );
- std::swap(m1.m_matrix_view, m2.m_matrix_view);
+ assert(m1.rows() == m2.rows() && m1.columns() == m2.columns());
+ using std::swap;
+ swap(m1.m_matrix_view, m2.m_matrix_view);
}
Vector operator*( detail::BaseMatrixImpl const& A,
diff --git a/src/2geom/numeric/symmetric-matrix-fs-operation.h b/src/2geom/numeric/symmetric-matrix-fs-operation.h
index 37ece56ae..c5aaa724b 100644
--- a/src/2geom/numeric/symmetric-matrix-fs-operation.h
+++ b/src/2geom/numeric/symmetric-matrix-fs-operation.h
@@ -43,12 +43,7 @@
namespace Geom { namespace NL {
template <size_t N>
-inline
-SymmetricMatrix<N> adj(const ConstBaseSymmetricMatrix<N> & /*S*/)
-{
- THROW_NOTIMPLEMENTED();
- return SymmetricMatrix<N>();
-}
+SymmetricMatrix<N> adj(const ConstBaseSymmetricMatrix<N> & S);
template <>
inline
diff --git a/src/2geom/numeric/symmetric-matrix-fs-trace.h b/src/2geom/numeric/symmetric-matrix-fs-trace.h
index dbabecf6e..eff3dd24d 100644
--- a/src/2geom/numeric/symmetric-matrix-fs-trace.h
+++ b/src/2geom/numeric/symmetric-matrix-fs-trace.h
@@ -73,13 +73,7 @@ bool abs_less (double x, double y)
template <size_t K, size_t N>
struct trace
{
- static
- double evaluate (const ConstBaseSymmetricMatrix<N> & /*S*/)
- {
- THROW_NOTIMPLEMENTED();
- return K;
- }
-
+ static double evaluate(const ConstBaseSymmetricMatrix<N> &S);
};
template <size_t N>
diff --git a/src/2geom/numeric/symmetric-matrix-fs.h b/src/2geom/numeric/symmetric-matrix-fs.h
index c1de27afd..2fadd6915 100644
--- a/src/2geom/numeric/symmetric-matrix-fs.h
+++ b/src/2geom/numeric/symmetric-matrix-fs.h
@@ -339,7 +339,10 @@ class BaseSymmetricMatrix : public ConstBaseSymmetricMatrix<N>
{
}
- using base_type::operator();
+ double operator() (size_t i, size_t j) const
+ {
+ return m_data[base_type::get_index(i,j)];
+ }
double& operator() (size_t i, size_t j)
{
diff --git a/src/2geom/numeric/vector.h b/src/2geom/numeric/vector.h
index 6ab898f29..f28289f0f 100644
--- a/src/2geom/numeric/vector.h
+++ b/src/2geom/numeric/vector.h
@@ -348,15 +348,17 @@ class Vector : public detail::VectorImpl
inline
void swap(Vector & v1, Vector & v2)
{
- assert( v1.size() == v2.size() );
- std::swap(v1.m_vector, v2.m_vector);
+ assert(v1.size() == v2.size());
+ using std::swap;
+ swap(v1.m_vector, v2.m_vector);
}
inline
void swap_any(Vector & v1, Vector & v2)
{
- std::swap(v1.m_vector, v2.m_vector);
- std::swap(v1.m_size, v2.m_size);
+ using std::swap;
+ swap(v1.m_vector, v2.m_vector);
+ swap(v1.m_size, v2.m_size);
}
@@ -552,7 +554,8 @@ inline
void swap_view(VectorView & v1, VectorView & v2)
{
assert( v1.size() == v2.size() );
- std::swap(v1.m_vector_view, v2.m_vector_view); // not swap m_vector too
+ using std::swap;
+ swap(v1.m_vector_view, v2.m_vector_view); // not swap m_vector too
}
inline