45 Q_PROPERTY(
SurfacePatchModel* surfaceModel READ surfaceModel WRITE setSurfaceModel NOTIFY surfaceModelChanged)
46 Q_PROPERTY(QAbstractItemModel* model READ model WRITE setModel NOTIFY modelChanged)
47 Q_PROPERTY(QVariantList coordinates READ coordinates WRITE setCoordinates NOTIFY coordinatesChanged)
48 Q_PROPERTY(QQuickItem* sprite READ sprite WRITE setSprite NOTIFY spriteChanged)
49 Q_PROPERTY(qreal spriteSize READ spriteSize WRITE setSpriteSize NOTIFY spriteSizeChanged)
62 QAbstractItemModel*
model()
const {
return _model; }
64 void setModel(QAbstractItemModel* model);
69 void setCoordinates(
const QVariantList& coordinates);
71 QQuickItem*
sprite()
const {
return _sprite; }
73 void setSprite(QQuickItem* sprite);
78 void setSpriteSize(qreal spriteSize);
89 QSGNode* updatePaintNode(QSGNode* oldNode, UpdatePaintNodeData* updatePaintNodeData)
override;
92 void _markPointsDirty();
93 void _scheduleTerrainResample();
96 void _connectCamera();
97 void _rebuildPointCache();
101 QGeoCoordinate coordinate;
108 QAbstractItemModel* _model =
nullptr;
109 QVariantList _coordinates;
110 QQuickItem* _sprite =
nullptr;
112 QTimer _terrainResampleTimer;
113 qreal _spriteSize = 24.0;
114 bool _pointsDirty =
true;
115 bool _warnedNotProvider =
false;
116 std::vector<CachedPoint> _points;