Graphics overlay (dictionary renderer) 3D

Loading

Code

#ifndef GraphicsOverlayDictionaryRenderer_3D_H
#define GraphicsOverlayDictionaryRenderer_3D_H

#include <QQuickItem>
#include <QXmlStreamReader>

#include "Envelope.h"
#include "SpatialReference.h"

namespace Esri
{
    namespace ArcGISRuntime
    {
        class GraphicsOverlay;
        class SceneQuickView;
    }
}

class GraphicsOverlayDictionaryRenderer_3D : public QQuickItem
{
    Q_OBJECT

public:
    explicit GraphicsOverlayDictionaryRenderer_3D(QQuickItem* parent = nullptr);
    ~GraphicsOverlayDictionaryRenderer_3D();

    void componentComplete() Q_DECL_OVERRIDE;

signals:
    void graphicsLoaded();

private:
    static const QString FIELD_CONTROL_POINTS;
    static const QString FIELD_WKID;

    void parseXmlFile();
    void createGraphic(QVariantMap rawAttributes);
    void zoomToGraphics();

    double m_scaleFactor = 1.0;
    QString m_dataPath;
    QXmlStreamReader m_xmlParser;
    Esri::ArcGISRuntime::SceneQuickView* m_sceneView = nullptr;
    Esri::ArcGISRuntime::GraphicsOverlay* m_graphicsOverlay = nullptr;
    Esri::ArcGISRuntime::Envelope m_bbox;
};

#endif // GraphicsOverlayDictionaryRenderer_3D_H


In this topic
  1. Code