diff options
author | Jay Berkenbilt <ejb@ql.org> | 2021-03-03 21:02:38 +0100 |
---|---|---|
committer | Jay Berkenbilt <ejb@ql.org> | 2021-03-04 21:08:36 +0100 |
commit | a2124f992c7a3c2695b93cf7fe9298c3a862ffc9 (patch) | |
tree | f1be9857788729ea4c28510ed5c4d993f085dde4 | |
parent | 552303a94a997f403e3e966c9d6967d535c7428b (diff) | |
download | qpdf-a2124f992c7a3c2695b93cf7fe9298c3a862ffc9.tar.zst |
Add QPDFMatrix::operator==
-rw-r--r-- | ChangeLog | 2 | ||||
-rw-r--r-- | include/qpdf/QPDFMatrix.hh | 10 | ||||
-rw-r--r-- | libqpdf/QPDFMatrix.cc | 11 |
3 files changed, 23 insertions, 0 deletions
@@ -1,5 +1,7 @@ 2021-03-03 Jay Berkenbilt <ejb@ql.org> + * Add QPDFMatrix::operator== + * Add QPDFObjectHandle::makeResourcesIndirect 2021-03-02 Jay Berkenbilt <ejb@ql.org> diff --git a/include/qpdf/QPDFMatrix.hh b/include/qpdf/QPDFMatrix.hh index 9448fb99..1afc15a2 100644 --- a/include/qpdf/QPDFMatrix.hh +++ b/include/qpdf/QPDFMatrix.hh @@ -90,6 +90,16 @@ class QPDFMatrix QPDFObjectHandle::Rectangle transformRectangle( QPDFObjectHandle::Rectangle r); + // operator== tests for exact equality, not considering deltas for + // floating point. + QPDF_DLL + bool operator==(QPDFMatrix const& rhs) const; + QPDF_DLL + bool operator!=(QPDFMatrix const& rhs) const + { + return ! operator==(rhs); + } + double a; double b; double c; diff --git a/libqpdf/QPDFMatrix.cc b/libqpdf/QPDFMatrix.cc index 2b269099..42dfcf5d 100644 --- a/libqpdf/QPDFMatrix.cc +++ b/libqpdf/QPDFMatrix.cc @@ -142,3 +142,14 @@ QPDFMatrix::transformRectangle(QPDFObjectHandle::Rectangle r) const *std::max_element(tx.begin(), tx.end()), *std::max_element(ty.begin(), ty.end())); } + +bool +QPDFMatrix::operator==(QPDFMatrix const& rhs) const +{ + return ((this->a == rhs.a) && + (this->b == rhs.b) && + (this->c == rhs.c) && + (this->d == rhs.d) && + (this->e == rhs.e) && + (this->f == rhs.f)); +} |