summaryrefslogtreecommitdiff
path: root/src/mbgl/layout/symbol_instance.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mbgl/layout/symbol_instance.cpp')
-rw-r--r--src/mbgl/layout/symbol_instance.cpp17
1 files changed, 9 insertions, 8 deletions
diff --git a/src/mbgl/layout/symbol_instance.cpp b/src/mbgl/layout/symbol_instance.cpp
index 094f859830..5c92d2f678 100644
--- a/src/mbgl/layout/symbol_instance.cpp
+++ b/src/mbgl/layout/symbol_instance.cpp
@@ -31,10 +31,10 @@ SymbolInstanceSharedData::SymbolInstanceSharedData(GeometryCoordinates line_,
: line(std::move(line_)) {
// Create the quads used for rendering the icon and glyphs.
if (shapedIcon) {
- iconQuad = getIconQuad(*shapedIcon, getAnyShaping(shapedTextOrientations).writingMode, iconType);
+ iconQuads = getIconQuads(*shapedIcon, getAnyShaping(shapedTextOrientations).writingMode, iconType);
if (verticallyShapedIcon) {
- verticalIconQuad =
- getIconQuad(*verticallyShapedIcon, shapedTextOrientations.vertical.writingMode, iconType);
+ verticalIconQuads =
+ getIconQuads(*verticallyShapedIcon, shapedTextOrientations.vertical.writingMode, iconType);
}
}
@@ -130,6 +130,7 @@ SymbolInstance::SymbolInstance(Anchor& anchor_,
centerJustifiedGlyphQuadsSize = sharedData->centerJustifiedGlyphQuads.size();
leftJustifiedGlyphQuadsSize = sharedData->leftJustifiedGlyphQuads.size();
verticalGlyphQuadsSize = sharedData->verticalGlyphQuads.size();
+ iconQuadsSize = sharedData->iconQuads ? sharedData->iconQuads->size() : 0;
if (rightJustifiedGlyphQuadsSize || centerJustifiedGlyphQuadsSize || leftJustifiedGlyphQuadsSize) {
writingModes |= WritingModeType::Horizontal;
@@ -165,11 +166,11 @@ const SymbolQuads& SymbolInstance::verticalGlyphQuads() const {
return sharedData->verticalGlyphQuads;
}
-const optional<SymbolQuad>& SymbolInstance::iconQuad() const {
+const optional<SymbolQuads>& SymbolInstance::iconQuads() const {
assert(sharedData);
- return sharedData->iconQuad;
+ return sharedData->iconQuads;
}
-
+
bool SymbolInstance::hasText() const {
return static_cast<bool>(symbolContent & SymbolContent::Text);
}
@@ -182,9 +183,9 @@ bool SymbolInstance::hasSdfIcon() const {
return static_cast<bool>(symbolContent & SymbolContent::IconSDF);
}
-const optional<SymbolQuad>& SymbolInstance::verticalIconQuad() const {
+const optional<SymbolQuads>& SymbolInstance::verticalIconQuads() const {
assert(sharedData);
- return sharedData->verticalIconQuad;
+ return sharedData->verticalIconQuads;
}
void SymbolInstance::releaseSharedData() {