A widget to control the display of a set of layers. More...
#include <MapDisplay.h>
Public Types | |
enum | ResizePolicy { Fixed, Cut, Center } |
Defines the resize policy for map display. More... | |
Signals | |
void | displayPaintEvent (QPainter *) |
void | displaySridChanged () |
void | extentChanged () |
Public Member Functions | |
virtual QColor | getBackgroundColor () |
Gets the map display background color. More... | |
virtual double | getDigitalization () const |
Gets the digitalization factor. More... | |
virtual QPixmap * | getDisplayPixmap () const |
It returns the map display pixmap. More... | |
virtual void | getDPI (int &dpiX, int &dpiY) const |
Returns the current values of the DPI in X-axis and in Y-axis. More... | |
virtual QPixmap * | getDraftPixmap () const |
It returns the map display draft pixmap. More... | |
virtual const te::gm::Envelope & | getExtent () const |
It returns the world extent showned by the MapDisplay. More... | |
virtual te::map::AlignType | getHAlign () const |
It returns the MapDisplay current horizontal align. More... | |
virtual std::list< AbstractLayerPtr > | getLayerList () const |
virtual double | getScale () const |
Calculates and return the current scale. More... | |
virtual int | getSRID () const |
It return the Spatial Reference System used by the Map Display. More... | |
virtual te::map::AlignType | getVAlign () const |
It returns the MapDisplay current vertical align. More... | |
bool | isDrawing () const |
Returns if the map display is drawing. More... | |
virtual void | restoreDPI () |
Returns the default value of the DPI. In this case, the values from the device will be acquired. More... | |
virtual void | setAlign (te::map::AlignType h, te::map::AlignType v) |
It will set the align rendering of objects into the map display. Just successive drawings will be affected by this modification. More... | |
virtual void | setBackgroundColor (const QColor &color) |
Sets the map display background color. More... | |
virtual void | setCurrentTool (te::qt::widgets::AbstractTool *tool, const bool &delPrevious=true) |
Updates the current tool being used on te::qt::widgets::MapDisplay. More... | |
virtual void | setDigitalization (double digitalization) |
Sets the digitalization factor. More... | |
virtual void | setLayerList (const std::list< te::map::AbstractLayerPtr > &layers) |
It sets the layer list to be showed in the Map Display. More... | |
virtual void | setLimitScale (double minScale, double maxScale) |
Defines the min scale and max scale. More... | |
virtual void | setOverrideDPI (int dpiX, int dpiY) |
Overrides the values of the DPI that had been acquired from the device. This is done in order to make the scale be correctly computed and allows the correct computation of sizes in millimeters. More... | |
virtual void | setResizeInterval (int msec) |
Sets the timeout interval in milliseconds to redraw on resize event. More... | |
virtual void | setResizePolicy (const ResizePolicy &policy) |
Sets the resize policy to this map display. More... | |
virtual bool | setScale (const double &scale) |
Defines the scale and calculates envelope based on the requested scale. More... | |
virtual QPointF | transform (const QPointF &p) |
Transforms the given point, in screen coordinates, to a point in world coordinates. More... | |
virtual void | updateLayer (te::map::AbstractLayerPtr layer, bool redraw=true) |
Initializer Methods | |
Methods related to instantiation and destruction. | |
MapDisplay (const QSize &size, QWidget *parent=0, Qt::WindowFlags f=0) | |
It constructs an empty map display with the given dimensions which is a child of parent, with widget flags set to f. More... | |
MapDisplay (QWidget *parent=0, Qt::WindowFlags f=0) | |
virtual | ~MapDisplay () |
Destructor. More... | |
AbstractMapDisplay Methods | |
virtual void | changeData (te::map::AbstractLayerPtr, int nsrid=TE_UNKNOWN_SRS) |
virtual void | setExtent (te::gm::Envelope &e, bool doRefresh=true) |
It sets the world visible area and refreshes the contents in the map display. More... | |
virtual void | refresh (bool redraw=false) |
It updates the contents in the map display. More... | |
unsigned int | getWidth () const |
It returns the MapDisplay current width in pixels. More... | |
unsigned int | getHeight () const |
It returns the MapDisplay current height in pixels. More... | |
double | getWidthMM () const |
It returns the MapDisplay current width in millimeters. More... | |
double | getHeightMM () const |
It returns the MapDisplay current height in millimeters. More... | |
virtual void | setSRID (const int &srid, bool doRefresh=true) |
It sets a new Spatial Reference System to be used by the Map Display. More... | |
Protected Slots | |
virtual void | onResizeTimeout () |
Protected Member Functions | |
virtual void | adjustExtent (const QSize &oldSize, const QSize &size) |
It adjusts the map display extent based on resize policy. More... | |
virtual void | draw (te::map::AbstractLayer *layer, QPainter &painter) |
It displays the given layer. More... | |
virtual te::qt::widgets::Canvas * | getCanvas (te::map::AbstractLayer *layer, int type=QInternal::Pixmap) |
It retrieves an associated canvas to the given layer. More... | |
virtual void | paintEvent (QPaintEvent *e) |
It assembles the final image and draws the widget. More... | |
virtual void | resizeAllCanvas () |
It resizes all canvas of map display. More... | |
virtual void | resizeEvent (QResizeEvent *e) |
This event handler receives widget resize events wich are passed in the event parameter. More... | |
Protected Attributes | |
QColor | m_backgroundColor |
Background color. More... | |
double | m_digitalization |
Factor used in digitalization. More... | |
QPixmap * | m_displayPixmap |
This pixmap will be the result of all canvas pixmap drawing, i. e., the result of drawing all visible layers. More... | |
QPixmap * | m_draftPixmap |
The draft pixmap can be used to draw some feedback on map display. More... | |
te::gm::Envelope | m_extent |
The display extent. More... | |
te::map::AlignType | m_hAlign |
The display horizontal align. More... | |
int | m_interval |
Timeout interval in milliseconds to redraw. More... | |
bool | m_isDrawing |
A flag that indicates if the map display is drawing. More... | |
std::list< te::map::AbstractLayerPtr > | m_layerList |
The layer list to be displayed. More... | |
double | m_maxScale |
The maximum scale. More... | |
double | m_minScale |
The minimun scale. More... | |
QSize | m_oldSize |
Stores the last size of map display on start resize event. More... | |
int | m_overridedDpiX |
Overrided value of the DPI in the X-axis, so the scale can be correctly computed. More... | |
int | m_overridedDpiY |
Overrided value of the DPI in the X-axis, so the scale can be correctly computed. More... | |
ResizePolicy | m_resizePolicy |
Resize policy for this map display. More... | |
double | m_scale |
Current calculated scale. More... | |
int | m_srid |
The display SRS. More... | |
QTimer * | m_timer |
Timer to execute redraw on resize action. More... | |
te::qt::widgets::AbstractTool * | m_tool |
Pointer to the current tool being used. More... | |
te::map::AlignType | m_vAlign |
The display vertical align. More... | |
Map Display Virtual Methods | |
Methods to configure the MapDisplay. | |
bool | m_cancel |
Private Member Functions | |
Copy Constructor and Assignment Operator | |
MapDisplay (const MapDisplay &rhs) | |
Copy constructor not allowed. More... | |
MapDisplay & | operator= (const MapDisplay &rhs) |
Assignment operator not allowed. More... | |
A widget to control the display of a set of layers.
Definition at line 69 of file MapDisplay.h.
Defines the resize policy for map display.
Enumerator | |
---|---|
Fixed |
Document-me! |
Cut |
Document-me! |
Center |
Document-me! |
Definition at line 80 of file MapDisplay.h.
te::qt::widgets::MapDisplay::MapDisplay | ( | const QSize & | size, |
QWidget * | parent = 0 , |
||
Qt::WindowFlags | f = 0 |
||
) |
It constructs an empty map display with the given dimensions which is a child of parent, with widget flags set to f.
size | The map display size. |
parent | The widget's parent. |
f | Widget window flags. |
te::qt::widgets::MapDisplay::MapDisplay | ( | QWidget * | parent = 0 , |
Qt::WindowFlags | f = 0 |
||
) |
|
virtual |
Destructor.
Reimplemented from te::map::MapDisplay.
|
private |
Copy constructor not allowed.
rhs | The right-hand-side copy that would be used to copy from. |
|
protectedvirtual |
It adjusts the map display extent based on resize policy.
oldSize | The size before the resize. |
size | The size after the resize. |
|
virtual |
|
signal |
this signal is issued to others draw on this display.
|
signal |
This signal is sent to others know that the projection was changed.
|
protectedvirtual |
It displays the given layer.
layer | The layer that will be drawn. |
painter | The painter that will composed the draw result. |
|
signal |
This signal is emitted when the map display extent changed.
|
virtual |
Gets the map display background color.
|
protectedvirtual |
It retrieves an associated canvas to the given layer.
layer | The layer for wich we want to get an associated canvas. |
|
virtual |
Gets the digitalization factor.
|
virtual |
It returns the map display pixmap.
|
virtual |
Returns the current values of the DPI in X-axis and in Y-axis.
|
virtual |
It returns the map display draft pixmap.
|
virtualinherited |
It returns the world extent showned by the MapDisplay.
Implements te::map::AbstractMapDisplay.
|
virtualinherited |
It returns the MapDisplay current horizontal align.
Implements te::map::AbstractMapDisplay.
|
virtual |
It returns the MapDisplay current height in pixels.
Implements te::map::AbstractMapDisplay.
|
virtual |
It returns the MapDisplay current height in millimeters.
Implements te::map::AbstractMapDisplay.
|
virtualinherited |
|
virtual |
Calculates and return the current scale.
|
virtualinherited |
It return the Spatial Reference System used by the Map Display.
Implements te::map::AbstractMapDisplay.
|
virtualinherited |
It returns the MapDisplay current vertical align.
Implements te::map::AbstractMapDisplay.
|
virtual |
It returns the MapDisplay current width in pixels.
Implements te::map::AbstractMapDisplay.
|
virtual |
It returns the MapDisplay current width in millimeters.
Implements te::map::AbstractMapDisplay.
bool te::qt::widgets::MapDisplay::isDrawing | ( | ) | const |
Returns if the map display is drawing.
|
protectedvirtualslot |
|
private |
Assignment operator not allowed.
rhs | The right-hand-side copy that would be used to copy from. |
|
protectedvirtual |
It assembles the final image and draws the widget.
e | The event received by this widget. |
|
virtual |
It updates the contents in the map display.
Implements te::map::AbstractMapDisplay.
Reimplemented in te::qt::widgets::MultiThreadMapDisplay.
|
protectedvirtual |
It resizes all canvas of map display.
|
protectedvirtual |
This event handler receives widget resize events wich are passed in the event parameter.
e | The resize event. |
Reimplemented in te::qt::widgets::MultiThreadMapDisplay.
|
virtual |
Returns the default value of the DPI. In this case, the values from the device will be acquired.
|
virtualinherited |
It will set the align rendering of objects into the map display. Just successive drawings will be affected by this modification.
h | The new horizontal align. |
v | The new vertical align. |
Implements te::map::AbstractMapDisplay.
|
virtual |
Sets the map display background color.
color | The color. |
|
virtual |
Updates the current tool being used on te::qt::widgets::MapDisplay.
tool | The new te::qt::widgets::AbstractTool. |
delPrevious | True for delete the old tool. |
|
virtual |
Sets the digitalization factor.
|
virtual |
It sets the world visible area and refreshes the contents in the map display.
If the given area is not proportional to the device width and height, the MapDisplay will change it in order to preserve the aspect ratio.
e | The world visible area. |
doRefresh | If true the display will refresh its contents. |
Reimplemented from te::map::MapDisplay.
Reimplemented in te::qt::widgets::MultiThreadMapDisplay.
|
virtualinherited |
It sets the layer list to be showed in the Map Display.
layers | The layer list. |
Implements te::map::AbstractMapDisplay.
|
virtual |
Defines the min scale and max scale.
|
virtual |
Overrides the values of the DPI that had been acquired from the device. This is done in order to make the scale be correctly computed and allows the correct computation of sizes in millimeters.
|
virtual |
Sets the timeout interval in milliseconds to redraw on resize event.
msec | The timeout interval in milliseconds. |
|
virtual |
Sets the resize policy to this map display.
policy | The resize policy. |
|
virtual |
Defines the scale and calculates envelope based on the requested scale.
|
virtual |
It sets a new Spatial Reference System to be used by the Map Display.
It will also convert the current envelope coordinates to the new SRS. This may cause changes to the world visible area. In this case, the extent will be updated and new internal transformation function will be calculated.
srid | The new Spatial Reference System to be used by the Map Display. |
doRefresh | If true the display will refresh its contents. |
Reimplemented from te::map::MapDisplay.
|
virtual |
Transforms the given point, in screen coordinates, to a point in world coordinates.
p | A point in screen coordinates. |
Reimplemented in te::qt::widgets::MultiThreadMapDisplay.
|
inlinevirtual |
Reimplemented in te::qt::widgets::MultiThreadMapDisplay.
Definition at line 216 of file MapDisplay.h.
|
protected |
Background color.
Definition at line 345 of file MapDisplay.h.
|
protectedinherited |
Definition at line 172 of file AbstractMapDisplay.h.
|
protected |
Factor used in digitalization.
Definition at line 357 of file MapDisplay.h.
|
protected |
This pixmap will be the result of all canvas pixmap drawing, i. e., the result of drawing all visible layers.
Definition at line 343 of file MapDisplay.h.
|
protected |
The draft pixmap can be used to draw some feedback on map display.
Definition at line 344 of file MapDisplay.h.
|
protectedinherited |
The display extent.
Definition at line 75 of file MapDisplay.h.
|
protectedinherited |
The display horizontal align.
Definition at line 78 of file MapDisplay.h.
|
protected |
Timeout interval in milliseconds to redraw.
Definition at line 349 of file MapDisplay.h.
|
protected |
A flag that indicates if the map display is drawing.
Definition at line 350 of file MapDisplay.h.
|
protectedinherited |
The layer list to be displayed.
Definition at line 76 of file MapDisplay.h.
|
protected |
The maximum scale.
Definition at line 356 of file MapDisplay.h.
|
protected |
The minimun scale.
Definition at line 355 of file MapDisplay.h.
|
protected |
Stores the last size of map display on start resize event.
Definition at line 347 of file MapDisplay.h.
|
protected |
Overrided value of the DPI in the X-axis, so the scale can be correctly computed.
Definition at line 353 of file MapDisplay.h.
|
protected |
Overrided value of the DPI in the X-axis, so the scale can be correctly computed.
Definition at line 354 of file MapDisplay.h.
|
protected |
Resize policy for this map display.
Definition at line 346 of file MapDisplay.h.
|
mutableprotected |
Current calculated scale.
Definition at line 352 of file MapDisplay.h.
|
protectedinherited |
The display SRS.
Definition at line 77 of file MapDisplay.h.
|
protected |
Timer to execute redraw on resize action.
Definition at line 348 of file MapDisplay.h.
|
protected |
Pointer to the current tool being used.
Definition at line 359 of file MapDisplay.h.
|
protectedinherited |
The display vertical align.
Definition at line 79 of file MapDisplay.h.