API Documentation
Loading...
Searching...
No Matches
AerialImageView.h
Go to the documentation of this file.
1/*--------------------------------------------------------------------------------------------
2Copyright (c) 2019, NDEVR LLC
3tyler.parke@ndevr.org
4 __ __ ____ _____ __ __ _______
5 | \ | | | __ \ | ___|\ \ / / | __ \
6 | \ | | | | \ \ | |___ \ \ / / | |__) |
7 | . \| | | |__/ / | |___ \ V / | _ /
8 | |\ |_|_____/__|_____|___\_/____| | \ \
9 |__| \__________________________________| \__\
10
11Subject to the terms of the Enterprise+ Agreement, NDEVR hereby grants
12Licensee a limited, non-exclusive, non-transferable, royalty-free license
13(without the right to sublicense) to use the API solely for the purpose of
14Licensee's internal development efforts to develop applications for which
15the API was provided.
16
17The above copyright notice and this permission notice shall be included in all
18copies or substantial portions of the Software.
19
20THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
21INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
22PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
23FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
24OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
25DEALINGS IN THE SOFTWARE.
26
27Library: NDEVR
28File: AerialImageView
29Included in API: True
30Author(s): Tyler Parke
31 *-----------------------------------------------------------------------------------------**/
32#pragma once
33#include "DLLInfo.h"
34#include <NDEVR/QCustomStackedWidget.h>
35#include <NDEVR/ProgressWidget.h>
36#include <NDEVR/ImageView.h>
37#include <NDEVR/MercatorImageManager.h>
38namespace NDEVR
39{
40 class BasicThread;
41 class Log;
42 /**--------------------------------------------------------------------------------------------------
43 Class: AerialImageView
44
45 \brief A simple widget for showing an AerialImage or top down view rendered with a service like google earth
46 A loading screen appears as images are loaded in
47 *-----------------------------------------------------------------------------------------------**/
49 {
50 Q_OBJECT
51 public:
53 {
54 e_success
55 , e_invalid_size
56 , e_could_not_fetch
57 , e_no_preview
58 , e_cache_change
59 };
60 AerialImageView(QWidget* parent = nullptr);
61 void setCoordinateSpace(const UUID& id);
62 void setLocalBounds(const Bounds<3, fltp08>& bounds);
64 bool previewBoundsTolerable(QSize size) const;
65 void resizeEvent(QResizeEvent* event) override;
66 virtual void showEvent(QShowEvent* event) override;
69 AerialImageMode aerialImageMode() const { return m_image_mode; };
70 void setDrawBounds(const Bounds<3, fltp08>& draw_bounds){m_draw_bounds = draw_bounds;}
71 bool isLoaded() const;
73 signals:
76 protected slots:
77 void showContextMenu(const QPoint& pos);
78 protected:
80 protected:
88 };
89}
#define NDEVR_API
Definition DLLInfo.h:67
A simple widget for showing an AerialImage or top down view rendered with a service like google earth...
Definition AerialImageView.h:49
void setDrawBounds(const Bounds< 3, fltp08 > &draw_bounds)
Definition AerialImageView.h:70
ImageView * m_image_view
Definition AerialImageView.h:81
AerialImageMode aerialImageMode() const
Definition AerialImageView.h:69
void showContextMenu(const QPoint &pos)
FetchReturn updatePreviewImageFromThread()
void setCoordinateSpace(const UUID &id)
UUID m_projection_coordinate_space
Definition AerialImageView.h:85
QSize m_last_preview_size
Definition AerialImageView.h:87
ProgressWidget * m_download_progress
Definition AerialImageView.h:82
virtual void showEvent(QShowEvent *event) override
void onImageLoadedSignal(FetchReturn success)
void setAerialImageMode(AerialImageMode mode)
bool previewBoundsTolerable(QSize size) const
UUID m_request_id
Definition AerialImageView.h:86
void resizeEvent(QResizeEvent *event) override
FetchReturn
Definition AerialImageView.h:53
Bounds< 2, fltp08 > drawBoundsWGS84() const
Bounds< 3, fltp08 > m_draw_bounds
Definition AerialImageView.h:84
void setLocalBounds(const Bounds< 3, fltp08 > &bounds)
AerialImageView(QWidget *parent=nullptr)
AerialImageMode m_image_mode
Definition AerialImageView.h:83
A specification of upper and lower bounds in N-dimensions.
Definition Bounds.hpp:52
A widget that shows a raster image or icon.
Definition ImageView.h:43
Definition ProgressWidget.h:43
The main class for a layout where all widgets occupy the same same and only one widget.
Definition QCustomStackedWidget.h:149
A universally unique identifier (UUID) is a 128-bit number used to identify information in computer s...
Definition UUID.h:62
Definition ACIColor.h:37
AerialImageMode
enum specifying what type of image to fetch. Options for terrain, satellite, or road views
Definition MercatorImageManager.h:16