| OLD | NEW |
| 1 // Copyright 2014 PDFium Authors. All rights reserved. | 1 // Copyright 2014 PDFium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
| 6 | 6 |
| 7 #ifndef CORE_FXCRT_FX_COORDINATES_H_ | 7 #ifndef CORE_FXCRT_FX_COORDINATES_H_ |
| 8 #define CORE_FXCRT_FX_COORDINATES_H_ | 8 #define CORE_FXCRT_FX_COORDINATES_H_ |
| 9 | 9 |
| 10 #include "core/fxcrt/fx_basic.h" | 10 #include "core/fxcrt/fx_basic.h" |
| (...skipping 282 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 293 baseType off_right, | 293 baseType off_right, |
| 294 baseType off_bottom) { | 294 baseType off_bottom) { |
| 295 left += off_left; | 295 left += off_left; |
| 296 top += off_top; | 296 top += off_top; |
| 297 width -= off_left + off_right; | 297 width -= off_left + off_right; |
| 298 height -= off_top + off_bottom; | 298 height -= off_top + off_bottom; |
| 299 } | 299 } |
| 300 void Deflate(const FXT_RECT& rt) { | 300 void Deflate(const FXT_RECT& rt) { |
| 301 Deflate(rt.left, rt.top, rt.top + rt.width, rt.top + rt.height); | 301 Deflate(rt.left, rt.top, rt.top + rt.width, rt.top + rt.height); |
| 302 } | 302 } |
| 303 FX_BOOL IsEmpty() const { return width <= 0 || height <= 0; } | 303 bool IsEmpty() const { return width <= 0 || height <= 0; } |
| 304 FX_BOOL IsEmpty(FX_FLOAT fEpsilon) const { | 304 bool IsEmpty(FX_FLOAT fEpsilon) const { |
| 305 return width <= fEpsilon || height <= fEpsilon; | 305 return width <= fEpsilon || height <= fEpsilon; |
| 306 } | 306 } |
| 307 void Empty() { width = height = 0; } | 307 void Empty() { width = height = 0; } |
| 308 bool Contains(baseType x, baseType y) const { | 308 bool Contains(baseType x, baseType y) const { |
| 309 return x >= left && x < left + width && y >= top && y < top + height; | 309 return x >= left && x < left + width && y >= top && y < top + height; |
| 310 } | 310 } |
| 311 bool Contains(const FXT_POINT& p) const { return Contains(p.x, p.y); } | 311 bool Contains(const FXT_POINT& p) const { return Contains(p.x, p.y); } |
| 312 bool Contains(const FXT_RECT& rt) const { | 312 bool Contains(const FXT_RECT& rt) const { |
| 313 return rt.left >= left && rt.right() <= right() && rt.top >= top && | 313 return rt.left >= left && rt.right() <= right() && rt.top >= top && |
| 314 rt.bottom() <= bottom(); | 314 rt.bottom() <= bottom(); |
| (...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 403 left = rt.left; | 403 left = rt.left; |
| 404 if (r > rt.right()) | 404 if (r > rt.right()) |
| 405 r = rt.right(); | 405 r = rt.right(); |
| 406 if (top < rt.top) | 406 if (top < rt.top) |
| 407 top = rt.top; | 407 top = rt.top; |
| 408 if (b > rt.bottom()) | 408 if (b > rt.bottom()) |
| 409 b = rt.bottom(); | 409 b = rt.bottom(); |
| 410 width = r - left; | 410 width = r - left; |
| 411 height = b - top; | 411 height = b - top; |
| 412 } | 412 } |
| 413 FX_BOOL IntersectWith(const FXT_RECT& rt) const { | 413 bool IntersectWith(const FXT_RECT& rt) const { |
| 414 FXT_RECT rect = rt; | 414 FXT_RECT rect = rt; |
| 415 rect.Intersect(*this); | 415 rect.Intersect(*this); |
| 416 return !rect.IsEmpty(); | 416 return !rect.IsEmpty(); |
| 417 } | 417 } |
| 418 FX_BOOL IntersectWith(const FXT_RECT& rt, FX_FLOAT fEpsilon) const { | 418 bool IntersectWith(const FXT_RECT& rt, FX_FLOAT fEpsilon) const { |
| 419 FXT_RECT rect = rt; | 419 FXT_RECT rect = rt; |
| 420 rect.Intersect(*this); | 420 rect.Intersect(*this); |
| 421 return !rect.IsEmpty(fEpsilon); | 421 return !rect.IsEmpty(fEpsilon); |
| 422 } | 422 } |
| 423 friend bool operator==(const FXT_RECT& rc1, const FXT_RECT& rc2) { | 423 friend bool operator==(const FXT_RECT& rc1, const FXT_RECT& rc2) { |
| 424 return rc1.left == rc2.left && rc1.top == rc2.top && | 424 return rc1.left == rc2.left && rc1.top == rc2.top && |
| 425 rc1.width == rc2.width && rc1.height == rc2.height; | 425 rc1.width == rc2.width && rc1.height == rc2.height; |
| 426 } | 426 } |
| 427 friend bool operator!=(const FXT_RECT& rc1, const FXT_RECT& rc2) { | 427 friend bool operator!=(const FXT_RECT& rc1, const FXT_RECT& rc2) { |
| 428 return !(rc1 == rc2); | 428 return !(rc1 == rc2); |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 581 } | 581 } |
| 582 | 582 |
| 583 void SetReverse(const CFX_Matrix& m); | 583 void SetReverse(const CFX_Matrix& m); |
| 584 | 584 |
| 585 void Concat(FX_FLOAT a, | 585 void Concat(FX_FLOAT a, |
| 586 FX_FLOAT b, | 586 FX_FLOAT b, |
| 587 FX_FLOAT c, | 587 FX_FLOAT c, |
| 588 FX_FLOAT d, | 588 FX_FLOAT d, |
| 589 FX_FLOAT e, | 589 FX_FLOAT e, |
| 590 FX_FLOAT f, | 590 FX_FLOAT f, |
| 591 FX_BOOL bPrepended = FALSE); | 591 bool bPrepended = false); |
| 592 void Concat(const CFX_Matrix& m, FX_BOOL bPrepended = FALSE); | 592 void Concat(const CFX_Matrix& m, bool bPrepended = false); |
| 593 void ConcatInverse(const CFX_Matrix& m, FX_BOOL bPrepended = FALSE); | 593 void ConcatInverse(const CFX_Matrix& m, bool bPrepended = false); |
| 594 | 594 |
| 595 FX_BOOL IsIdentity() const { | 595 bool IsIdentity() const { |
| 596 return a == 1 && b == 0 && c == 0 && d == 1 && e == 0 && f == 0; | 596 return a == 1 && b == 0 && c == 0 && d == 1 && e == 0 && f == 0; |
| 597 } | 597 } |
| 598 | 598 |
| 599 FX_BOOL IsInvertible() const; | 599 bool IsInvertible() const; |
| 600 FX_BOOL Is90Rotated() const; | 600 bool Is90Rotated() const; |
| 601 FX_BOOL IsScaled() const; | 601 bool IsScaled() const; |
| 602 | 602 |
| 603 void Translate(FX_FLOAT x, FX_FLOAT y, FX_BOOL bPrepended = FALSE); | 603 void Translate(FX_FLOAT x, FX_FLOAT y, bool bPrepended = false); |
| 604 void TranslateI(int32_t x, int32_t y, FX_BOOL bPrepended = FALSE) { | 604 void TranslateI(int32_t x, int32_t y, bool bPrepended = false) { |
| 605 Translate((FX_FLOAT)x, (FX_FLOAT)y, bPrepended); | 605 Translate((FX_FLOAT)x, (FX_FLOAT)y, bPrepended); |
| 606 } | 606 } |
| 607 | 607 |
| 608 void Scale(FX_FLOAT sx, FX_FLOAT sy, FX_BOOL bPrepended = FALSE); | 608 void Scale(FX_FLOAT sx, FX_FLOAT sy, bool bPrepended = false); |
| 609 void Rotate(FX_FLOAT fRadian, FX_BOOL bPrepended = FALSE); | 609 void Rotate(FX_FLOAT fRadian, bool bPrepended = false); |
| 610 void RotateAt(FX_FLOAT fRadian, | 610 void RotateAt(FX_FLOAT fRadian, |
| 611 FX_FLOAT x, | 611 FX_FLOAT x, |
| 612 FX_FLOAT y, | 612 FX_FLOAT y, |
| 613 FX_BOOL bPrepended = FALSE); | 613 bool bPrepended = false); |
| 614 | 614 |
| 615 void Shear(FX_FLOAT fAlphaRadian, | 615 void Shear(FX_FLOAT fAlphaRadian, |
| 616 FX_FLOAT fBetaRadian, | 616 FX_FLOAT fBetaRadian, |
| 617 FX_BOOL bPrepended = FALSE); | 617 bool bPrepended = false); |
| 618 | 618 |
| 619 void MatchRect(const CFX_FloatRect& dest, const CFX_FloatRect& src); | 619 void MatchRect(const CFX_FloatRect& dest, const CFX_FloatRect& src); |
| 620 FX_FLOAT GetXUnit() const; | 620 FX_FLOAT GetXUnit() const; |
| 621 FX_FLOAT GetYUnit() const; | 621 FX_FLOAT GetYUnit() const; |
| 622 void GetUnitRect(CFX_RectF& rect) const; | 622 void GetUnitRect(CFX_RectF& rect) const; |
| 623 CFX_FloatRect GetUnitRect() const; | 623 CFX_FloatRect GetUnitRect() const; |
| 624 | 624 |
| 625 FX_FLOAT GetUnitArea() const; | 625 FX_FLOAT GetUnitArea() const; |
| 626 FX_FLOAT TransformXDistance(FX_FLOAT dx) const; | 626 FX_FLOAT TransformXDistance(FX_FLOAT dx) const; |
| 627 int32_t TransformXDistance(int32_t dx) const; | 627 int32_t TransformXDistance(int32_t dx) const; |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 662 public: | 662 public: |
| 663 FX_FLOAT a; | 663 FX_FLOAT a; |
| 664 FX_FLOAT b; | 664 FX_FLOAT b; |
| 665 FX_FLOAT c; | 665 FX_FLOAT c; |
| 666 FX_FLOAT d; | 666 FX_FLOAT d; |
| 667 FX_FLOAT e; | 667 FX_FLOAT e; |
| 668 FX_FLOAT f; | 668 FX_FLOAT f; |
| 669 }; | 669 }; |
| 670 | 670 |
| 671 #endif // CORE_FXCRT_FX_COORDINATES_H_ | 671 #endif // CORE_FXCRT_FX_COORDINATES_H_ |
| OLD | NEW |