#pragma once #include #include #include #include #include namespace mbgl { class Anchor; class PositionedIcon; class SymbolQuad { public: SymbolQuad(Point tl_, Point tr_, Point bl_, Point br_, Rect tex_, WritingModeType writingMode_, Point glyphOffset_) : tl(std::move(tl_)), tr(std::move(tr_)), bl(std::move(bl_)), br(std::move(br_)), tex(std::move(tex_)), writingMode(writingMode_), glyphOffset(glyphOffset_) {} Point tl; Point tr; Point bl; Point br; Rect tex; WritingModeType writingMode; Point glyphOffset; }; using SymbolQuads = std::vector; SymbolQuad getIconQuad(const PositionedIcon& shapedIcon, const style::SymbolLayoutProperties::Evaluated&, const float layoutTextSize, const Shaping& shapedText); SymbolQuads getGlyphQuads(const Shaping& shapedText, const style::SymbolLayoutProperties::Evaluated&, style::SymbolPlacementType placement, const GlyphPositionMap& positions); } // namespace mbgl