summaryrefslogtreecommitdiff
path: root/src/mbgl/layout/symbol_projection.hpp
blob: 8d5f471d3f4d76cd8e00f157e307f01d94221029 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#pragma once

#include <mbgl/util/mat4.hpp>

namespace mbgl {

    class TransformState;
    class SymbolBucket;
    class RenderTile;
    class FrameHistory;
    class SymbolSizeBinder;
    namespace style {
        class SymbolPropertyValues;
    }

    mat4 getLabelPlaneMatrix(const mat4& posMatrix, const bool pitchWithMap, const bool rotateWithMap, const TransformState& state, const float pixelsToTileUnits);
    mat4 getGlCoordMatrix(const mat4& posMatrix, const bool pitchWithMap, const bool rotateWithMap, const TransformState& state, const float pixelsToTileUnits);

    void reprojectLineLabels(SymbolBucket&, const mat4& posMatrix, const bool isText, const style::SymbolPropertyValues&,
            const RenderTile&, const SymbolSizeBinder& sizeBinder, const TransformState&, const FrameHistory& frameHistory);

} // end namespace mbgl