summaryrefslogtreecommitdiff
path: root/include/mbgl/text/placement.hpp
blob: 28eb8d5317f40317284b93b9697f9c9d2eae7fad (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#ifndef MBGL_TEXT_PLACEMENT
#define MBGL_TEXT_PLACEMENT

#include <mbgl/text/types.hpp>
#include <mbgl/text/glyph.hpp>

#include <mbgl/util/vec.hpp>

namespace mbgl {

struct Anchor;
class StyleBucketSymbol;

class Placement {
public:
    static Placement getIcon(Anchor &anchor, const Rect<uint16_t> &image, float iconBoxScale,
                             const std::vector<Coordinate> &line, const StyleBucketSymbol &props);

    static Placement getGlyphs(Anchor &anchor, const vec2<float> &origin, const Shaping &shaping,
                               const GlyphPositions &face, float boxScale, bool horizontal,
                               const std::vector<Coordinate> &line, const StyleBucketSymbol &props);

    static const float globalMinScale;

    GlyphBoxes boxes;
    PlacedGlyphs shapes;
    float minScale;
};
}

#endif