A 3D scene implemented as a QGraphicWidget. More...
Header: | #include <SceneGraphicsView.h> |
Since: | Esri::ArcGISRuntime 100.0 |
Inherits: | QGraphicsView and Esri::ArcGISRuntime::SceneView |
This class was introduced in Esri::ArcGISRuntime 100.0.
Public Functions
SceneGraphicsView(Esri::ArcGISRuntime::Scene *scene, QWidget *parent = nullptr) | |
SceneGraphicsView(QWidget *parent = nullptr) | |
virtual | ~SceneGraphicsView() override |
Signals
void | attributionRectChanged() |
void | attributionTextChanged() |
void | drawStatusChanged(Esri::ArcGISRuntime::DrawStatus status) |
void | errorOccurred(Esri::ArcGISRuntime::Error error) |
void | exportImageCompleted(QUuid taskId, QImage image) |
void | identifyGraphicsOverlayCompleted(QUuid taskId, Esri::ArcGISRuntime::IdentifyGraphicsOverlayResult *identifyResult) |
void | identifyGraphicsOverlaysCompleted(QUuid taskId, QList<Esri::ArcGISRuntime::IdentifyGraphicsOverlayResult *> identifyResults) |
void | identifyLayerCompleted(QUuid taskId, Esri::ArcGISRuntime::IdentifyLayerResult *identifyResult) |
void | identifyLayersCompleted(QUuid taskId, QList<Esri::ArcGISRuntime::IdentifyLayerResult *> identifyResults) |
void | keyPressed(QKeyEvent &keyEvent) |
void | keyReleased(QKeyEvent &keyEvent) |
void | layerViewStateChanged(Esri::ArcGISRuntime::Layer *layer, Esri::ArcGISRuntime::LayerViewState layerViewState) |
void | mouseClicked(QMouseEvent &mouseEvent) |
void | mouseDoubleClicked(QMouseEvent &mouseEvent) |
void | mouseMoved(QMouseEvent &mouseEvent) |
void | mousePressed(QMouseEvent &mouseEvent) |
void | mousePressedAndHeld(QMouseEvent &mouseEvent) |
void | mouseReleased(QMouseEvent &mouseEvent) |
void | mouseWheelChanged(QWheelEvent &wheelEvent) |
void | navigatingChanged() |
void | rectChanged(QRectF rect) |
void | sceneChanged() |
void | screenToLocationCompleted(QUuid taskId, Esri::ArcGISRuntime::Point location) |
void | setBookmarkCompleted(bool succeeded) |
void | setViewpointCameraCompleted(bool succeeded) |
void | setViewpointCompleted(bool succeeded) |
void | spatialReferenceChanged() |
void | touched(QTouchEvent &event) |
void | viewpointChanged() |
Detailed Description
A SceneGraphicsView renders data in a 3D scene and allows users to interact with the scene. In an MVC architecture, a SceneGraphicsView represents the view and a Scene represents the model.
A SceneGraphicsView implements a scene view as a QGraphicsView widget. It is used in user interfaces coded with C++.
Example:
Create a SceneGraphicsView and set as central widget:
// create the scene view m_sceneView = new SceneGraphicsView(this); // set central widget with the scene view on the QMainWindow setCentralWidget(m_sceneView);
See also Scene, SceneView, and GeoView.
Member Function Documentation
SceneGraphicsView::SceneGraphicsView (Esri::ArcGISRuntime::Scene *scene, QWidget *parent = nullptr)
Constructor that takes a scene and an optional parent.
SceneGraphicsView::SceneGraphicsView (QWidget *parent = nullptr)
Default constructor that takes an optional parent.
[signal]
void SceneGraphicsView::attributionRectChanged ()
Emitted when the attribution bounding rectangle changes.
This function was introduced in Esri::ArcGISRuntime 100.1.
[signal]
void SceneGraphicsView::attributionTextChanged ()
Emitted when the attribution text changes.
This function was introduced in Esri::ArcGISRuntime 100.1.
[signal]
void SceneGraphicsView::drawStatusChanged (Esri::ArcGISRuntime::DrawStatus status)
Signal emitted when the DrawStatus changes.
- status - The new DrawStatus.
[signal]
void SceneGraphicsView::errorOccurred (Esri::ArcGISRuntime::Error error)
Signal emitted when an error occurs.
- error - Details about the error.
[signal]
void SceneGraphicsView::exportImageCompleted (QUuid taskId , QImage image)
Signal emitted when exportImage has completed.
- taskId - The task id from the exportImage async task.
- image - The QImage image.
[signal]
void SceneGraphicsView::identifyGraphicsOverlayCompleted (QUuid taskId , Esri::ArcGISRuntime::IdentifyGraphicsOverlayResult *identifyResult )
Emitted when an identifyGraphicsOverlay operation completes.
- taskId - The task ID for the asynchronous operation.
- identifyResult - The identify graphics overlay result object.
The returned IdentifyGraphicsOverlayResult object has the SceneGraphicsView as its parent.
See also Returned QObjects Parenting.
[signal]
void SceneGraphicsView::identifyGraphicsOverlaysCompleted (QUuid taskId , QList<Esri::ArcGISRuntime::IdentifyGraphicsOverlayResult *> identifyResults )
Emitted when an identifyGraphicsOverlays operation completes.
- taskId - The task ID for the asynchronous operation.
- identifyResults - A list of IdentifyGraphicsOverlayResult.
The returned IdentifyGraphicsOverlayResult objects have the SceneGraphicsView as their parent.
See also Returned QObjects Parenting.
[signal]
void SceneGraphicsView::identifyLayerCompleted (QUuid taskId , Esri::ArcGISRuntime::IdentifyLayerResult *identifyResult )
Emitted when an identifyLayer operation completes.
- taskId - The task ID for the asynchronous operation.
- identifyResult - The IdentifyLayerResult object containing a list of GeoElements.
The returned IdentifyLayerResult object has the SceneGraphicsView as its parent.
See also Returned QObjects Parenting.
[signal]
void SceneGraphicsView::identifyLayersCompleted (QUuid taskId , QList<Esri::ArcGISRuntime::IdentifyLayerResult *> identifyResults )
Emitted when an identifyLayers operation completes.
- taskId - The task ID for the asynchronous operation.
- identifyResults - A list of IdentifyLayerResult.
The returned IdentifyLayerResult objects have the SceneGraphicsView as their parent.
See also Returned QObjects Parenting.
[signal]
void SceneGraphicsView::keyPressed (QKeyEvent &keyEvent )
Emitted when a key pressed has been detected.
- keyEvent - The key event.
[signal]
void SceneGraphicsView::keyReleased (QKeyEvent &keyEvent )
Emitted when a key release has been detected.
- keyEvent - The key event.
[signal]
void SceneGraphicsView::layerViewStateChanged (Esri::ArcGISRuntime::Layer *layer, Esri::ArcGISRuntime::LayerViewState layerViewState )
Signal emitted when the LayerViewState changes.
- layer - The layer that had a state change.
- layerViewState - The LayerViewState with the new state information.
The returned Layer object has the SceneGraphicsView as its parent.
See also Returned QObjects Parenting.
[signal]
void SceneGraphicsView::mouseClicked (QMouseEvent &mouseEvent )
Emitted when mouse is pressed and released over the same location.
- mouseEvent - The mouse event.
[signal]
void SceneGraphicsView::mouseDoubleClicked (QMouseEvent &mouseEvent )
Emitted when a double click even is detected.
- mouseEvent - The mouse event.
[signal]
void SceneGraphicsView::mouseMoved (QMouseEvent &mouseEvent )
Emitted when mouse is moved.
- mouseEvent - The mouse event.
[signal]
void SceneGraphicsView::mousePressed (QMouseEvent &mouseEvent )
Emitted when mouse is pressed.
- mouseEvent - The mouse event.
[signal]
void SceneGraphicsView::mousePressedAndHeld (QMouseEvent &mouseEvent )
Emitted when there is a long press and hold (currently 800ms) on the same point.
- mouseEvent - The mouse event.
[signal]
void SceneGraphicsView::mouseReleased (QMouseEvent &mouseEvent )
Emitted when mouse is released.
- mouseEvent - The mouse event.
[signal]
void SceneGraphicsView::mouseWheelChanged (QWheelEvent &wheelEvent )
Emitted when mouse wheel movement has been detected.
- wheelEvent - The wheel event.
[signal]
void SceneGraphicsView::navigatingChanged ()
Signal emitted when the view has started or completed navigating.
[signal]
void SceneGraphicsView::rectChanged (QRectF rect)
Emitted when the visible area changes.
- rect - The new rect representing the visible area.
[signal]
void SceneGraphicsView::sceneChanged ()
Emitted when the scene changes.
This function was introduced in Esri::ArcGISRuntime 100.3.
[signal]
void SceneGraphicsView::screenToLocationCompleted (QUuid taskId , Esri::ArcGISRuntime::Point location)
Signal emitted when the screenToLocation operation completes.
- taskId - The task ID from the screenToLocation async task.
- location - The location on the scene view.
[signal]
void SceneGraphicsView::setBookmarkCompleted (bool succeeded)
Signal emitted when a bookmark has been set.
- succeeded - Whether the bookmark was successfully set.
This function was introduced in Esri::ArcGISRuntime 100.3.
[signal]
void SceneGraphicsView::setViewpointCameraCompleted (bool succeeded)
Signal emitted when the viewpoint with camera has been set.
- succeeded - Whether the viewpoint was successfully set.
[signal]
void SceneGraphicsView::setViewpointCompleted (bool succeeded)
Signal emitted when the viewpoint has been set.
- succeeded - Whether the viewpoint was successfully set.
[signal]
void SceneGraphicsView::spatialReferenceChanged ()
Signal emitted when the SpatialReference changed.
[signal]
void SceneGraphicsView::touched(QTouchEvent &event)
Emitted when a touch event has been detected.
Accept the event to prevent the SceneGraphicsView from performing its default gesture interaction behavior.
- event - The touch event.
[signal]
void SceneGraphicsView::viewpointChanged ()
Emitted when the viewpoint changes.
[override virtual]
SceneGraphicsView::~SceneGraphicsView ()
Destructor.