summaryrefslogtreecommitdiff
path: root/src/mbgl/text
diff options
context:
space:
mode:
Diffstat (limited to 'src/mbgl/text')
-rw-r--r--src/mbgl/text/quads.cpp4
-rw-r--r--src/mbgl/text/quads.hpp2
-rw-r--r--src/mbgl/text/shaping.cpp5
-rw-r--r--src/mbgl/text/shaping.hpp9
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,