#pragma once #include #include #include #include namespace mbgl { struct SpriteAtlasElement; namespace style { class SymbolLayoutProperties; } // namespace style class PositionedIcon { public: inline explicit PositionedIcon() {} inline explicit PositionedIcon(const SpriteAtlasElement& _image, float _top, float _bottom, float _left, float _right) : image(_image), top(_top), bottom(_bottom), left(_left), right(_right) {} optional image; float top = 0; float bottom = 0; float left = 0; float right = 0; operator bool() const { return image && (*image).pos.hasArea(); } }; PositionedIcon shapeIcon(const SpriteAtlasElement& image, const style::SymbolLayoutProperties&); } // namespace mbgl