![]() |
Maria GDK 5.0.0.738
Documentation of native code in develop branch
|
#include <MPointSymbolCell.h>
Public Member Functions | |
PointSymbolCell (double minLat, double minLon, double maxLat, double maxLon) | |
void | setPointSymbol (const Maria::ItemId &id, const BasicGeoTypes::GeoPos &pos, std::uint16_t symbolIdx, std::uint32_t flags) |
void | deletePointSymbol (const Maria::ItemId &id) |
const BasicGeoTypes::GeoPos & | getPosition (const Maria::ItemId &id) const |
std::uint32_t | getPointSymbolId (const Maria::ItemId &id) const |
std::uint32_t | getFlags (const Maria::ItemId &id) const |
float | getAlpha (const Maria::ItemId &id) const |
float | getScale (const Maria::ItemId &id) const |
float | getRotation (const Maria::ItemId &id) const |
float | getHAnchor (const Maria::ItemId &id) const |
float | getVAnchor (const Maria::ItemId &id) const |
bool | getGrayscale (const Maria::ItemId &id) const |
int | getNumPointSymbols () const |
STK::Matrix4x4f | calcTileMatrix (const Maria::RasterProjector &viewport) |
void | drawVertexArrays (GLuint quadVBO) |
void | redraw (const std::shared_ptr< RasterProjector > &vp, const STK::Matrix4x4f &mv, STK::ShaderProgram &shader, GLuint quadVBO) |
void | circleHitTest (const std::shared_ptr< RasterProjector > &vp, double px, double py, float symbolSize, int pickRadius, std::vector< Maria::ItemId > &items) |
void | hitTest (const std::shared_ptr< RasterProjector > &vp, const std::shared_ptr< RasterProjector > &pickVp, const STK::Matrix4x4f &mv, STK::ShaderProgram &shader, GLuint quadVBO, STK::FBOTexture &fbo, std::vector< Maria::ItemId > &items) |
PointSymbolCell - One batch of point symbol objects. Point symbols are batched in grid cells so that all symbols in one cell is rendered as an instanced vertex array. This is highly efficient in OpenGL and allows us to render huge amounts of point symbols.
The vertex buffer data consists of 2D position (in projection coordinates) and a symbol index pointing to the corresponding texture cell in the texture atlas.