diff options
Diffstat (limited to 'src/mbgl/text')
-rw-r--r-- | src/mbgl/text/quads.cpp | 4 | ||||
-rw-r--r-- | src/mbgl/text/quads.hpp | 2 | ||||
-rw-r--r-- | src/mbgl/text/shaping.cpp | 5 | ||||
-rw-r--r-- | src/mbgl/text/shaping.hpp | 9 |
4 files changed, 8 insertions, 12 deletions
diff --git a/src/mbgl/text/quads.cpp b/src/mbgl/text/quads.cpp index fe683f7d98..b6427d0d04 100644 --- a/src/mbgl/text/quads.cpp +++ b/src/mbgl/text/quads.cpp @@ -14,7 +14,7 @@ namespace mbgl { using namespace style; -SymbolQuads getIconQuads(const PositionedIcon& shapedIcon, SymbolContent iconType) { +SymbolQuads getIconQuads(const PositionedIcon& shapedIcon, const float iconRotate, const SymbolContent iconType) { const ImagePosition& image = shapedIcon.image(); // If you have a 10px icon that isn't perfectly aligned to the pixel grid it will cover 11 actual @@ -42,7 +42,7 @@ SymbolQuads getIconQuads(const PositionedIcon& shapedIcon, SymbolContent iconTyp Point<float> br{right, bottom}; Point<float> bl{left, bottom}; - const float angle = shapedIcon.angle(); + const float angle = iconRotate * util::DEG2RAD; if (angle) { // Compute the transformation matrix. diff --git a/src/mbgl/text/quads.hpp b/src/mbgl/text/quads.hpp index aa1913204e..ef058989a5 100644 --- a/src/mbgl/text/quads.hpp +++ b/src/mbgl/text/quads.hpp @@ -57,7 +57,7 @@ public: using SymbolQuads = std::vector<SymbolQuad>; -SymbolQuads getIconQuads(const PositionedIcon& shapedIcon, SymbolContent iconType); +SymbolQuads getIconQuads(const PositionedIcon& shapedIcon, float iconRotate, SymbolContent iconType); SymbolQuads getGlyphQuads(const Shaping& shapedText, const std::array<float, 2> textOffset, diff --git a/src/mbgl/text/shaping.cpp b/src/mbgl/text/shaping.cpp index 2b23deadea..033cbdf4e5 100644 --- a/src/mbgl/text/shaping.cpp +++ b/src/mbgl/text/shaping.cpp @@ -70,8 +70,7 @@ style::TextJustifyType getAnchorJustification(style::SymbolAnchorType anchor) { PositionedIcon PositionedIcon::shapeIcon(const ImagePosition& image, const std::array<float, 2>& iconOffset, - style::SymbolAnchorType iconAnchor, - const float iconRotation) { + style::SymbolAnchorType iconAnchor) { AnchorAlignment anchorAlign = AnchorAlignment::getAnchorAlignment(iconAnchor); float dx = iconOffset[0]; float dy = iconOffset[1]; @@ -80,7 +79,7 @@ PositionedIcon PositionedIcon::shapeIcon(const ImagePosition& image, float top = dy - image.displaySize()[1] * anchorAlign.verticalAlign; float bottom = top + image.displaySize()[1]; - return PositionedIcon { image, top, bottom, left, right, iconRotation }; + return PositionedIcon{image, top, bottom, left, right}; } void PositionedIcon::fitIconToText(const Shaping& shapedText, diff --git a/src/mbgl/text/shaping.hpp b/src/mbgl/text/shaping.hpp index 1f62f38521..0c238d36b0 100644 --- a/src/mbgl/text/shaping.hpp +++ b/src/mbgl/text/shaping.hpp @@ -28,21 +28,19 @@ class BiDi; class PositionedIcon { private: - PositionedIcon(ImagePosition image_, float top_, float bottom_, float left_, float right_, float angle_) - : _image(image_), _top(top_), _bottom(bottom_), _left(left_), _right(right_), _angle(angle_) {} + PositionedIcon(ImagePosition image_, float top_, float bottom_, float left_, float right_) + : _image(image_), _top(top_), _bottom(bottom_), _left(left_), _right(right_) {} ImagePosition _image; float _top; float _bottom; float _left; float _right; - float _angle; public: static PositionedIcon shapeIcon(const ImagePosition&, const std::array<float, 2>& iconOffset, - style::SymbolAnchorType iconAnchor, - const float iconRotation); + style::SymbolAnchorType iconAnchor); // Updates shaped icon's bounds based on shaped text's bounds and provided // layout properties. @@ -57,7 +55,6 @@ public: float bottom() const { return _bottom; } float left() const { return _left; } float right() const { return _right; } - float angle() const { return _angle; } }; const Shaping getShaping(const TaggedString& string, |