QGIS API Documentation  3.8.0-Zanzibar (11aff65)
Public Member Functions | Static Public Member Functions | List of all members
QgsMapToPixel Class Reference

Perform transforms between map coordinates and device coordinates. More...

#include <qgsmaptopixel.h>

Public Member Functions

 QgsMapToPixel (double mapUnitsPerPixel, double centerX, double centerY, int widthPixels, int heightPixels, double rotation)
 Constructor. More...
 
 QgsMapToPixel (double mapUnitsPerPixel)
 Constructor. More...
 
 QgsMapToPixel ()
 Constructor. More...
 
int mapHeight () const
 Returns current map height in pixels. More...
 
double mapRotation () const
 Returns current map rotation in degrees. More...
 
double mapUnitsPerPixel () const
 Returns current map units per pixel. More...
 
int mapWidth () const
 Returns current map width in pixels The information is only known if setRotation was used. More...
 
void setMapRotation (double degrees, double cx, double cy)
 Set map rotation in degrees (clockwise) More...
 
void setMapUnitsPerPixel (double mapUnitsPerPixel)
 Set map units per pixel. More...
 
void setParameters (double mapUnitsPerPixel, double centerX, double centerY, int widthPixels, int heightPixels, double rotation)
 Set parameters for use in transforming coordinates. More...
 
QString showParameters () const
 String representation of the parameters used in the transform. More...
 
QgsPointXY toMapCoordinates (int x, int y) const
 Transform device coordinates to map (world) coordinates. More...
 
QgsPointXY toMapCoordinates (double x, double y) const
 Transform device coordinates to map (world) coordinates. More...
 
QgsPointXY toMapCoordinates (QPoint p) const
 Transform device coordinates to map (world) coordinates. More...
 
Q_DECL_DEPRECATED QgsPointXY toMapPoint (double x, double y) const
 Transform device coordinates to map (world) coordinates. More...
 
QgsPointXY transform (const QgsPointXY &p) const
 Transform the point from map (world) coordinates to device coordinates. More...
 
void transform (QgsPointXY *p) const
 
QgsPointXY transform (qreal x, qreal y) const
 Transform the point specified by x,y from map (world) coordinates to device coordinates. More...
 
QTransform transform () const
 
void transformInPlace (double &x, double &y) const
 Transform device coordinates to map coordinates. More...
 
void transformInPlace (float &x, float &y) const
 
template<class T >
void transformInPlace (QVector< T > &x, QVector< T > &y) const
 Transform device coordinates to map coordinates. More...
 
double xCenter () const
 Returns the center x-coordinate for the transform. More...
 
double yCenter () const
 Returns the center y-coordinate for the transform. More...
 

Static Public Member Functions

static QgsMapToPixel fromScale (double scale, QgsUnitTypes::DistanceUnit mapUnits, double dpi=96)
 Returns a new QgsMapToPixel created using a specified scale and distance unit. More...
 

Detailed Description

Perform transforms between map coordinates and device coordinates.

This class can convert device coordinates to map coordinates and vice versa.

Definition at line 37 of file qgsmaptopixel.h.

Constructor & Destructor Documentation

◆ QgsMapToPixel() [1/3]

QgsMapToPixel::QgsMapToPixel ( double  mapUnitsPerPixel,
double  centerX,
double  centerY,
int  widthPixels,
int  heightPixels,
double  rotation 
)

Constructor.

Parameters
mapUnitsPerPixelMap units per pixel
centerXX coordinate of map center, in geographical units
centerYY coordinate of map center, in geographical units
widthPixelsOutput width, in pixels
heightPixelsOutput height, in pixels
rotationclockwise rotation in degrees
Since
QGIS 2.8

Definition at line 28 of file qgsmaptopixel.cpp.

◆ QgsMapToPixel() [2/3]

QgsMapToPixel::QgsMapToPixel ( double  mapUnitsPerPixel)

Constructor.

Parameters
mapUnitsPerPixelMap units per pixel

Definition at line 47 of file qgsmaptopixel.cpp.

◆ QgsMapToPixel() [3/3]

QgsMapToPixel::QgsMapToPixel ( )

Constructor.

Use setParameters to fill

Definition at line 64 of file qgsmaptopixel.cpp.

Member Function Documentation

◆ fromScale()

QgsMapToPixel QgsMapToPixel::fromScale ( double  scale,
QgsUnitTypes::DistanceUnit  mapUnits,
double  dpi = 96 
)
static

Returns a new QgsMapToPixel created using a specified scale and distance unit.

Parameters
scalemap scale denominator, e.g. 1000.0 for a 1:1000 map.
dpiscreen DPI
mapUnitsmap units
Returns
matching QgsMapToPixel
Since
QGIS 3.0

Definition at line 57 of file qgsmaptopixel.cpp.

◆ mapHeight()

int QgsMapToPixel::mapHeight ( ) const

Returns current map height in pixels.

Since
QGIS 2.8

Definition at line 69 of file qgsmaptopixel.cpp.

◆ mapRotation()

double QgsMapToPixel::mapRotation ( ) const

Returns current map rotation in degrees.

Since
QGIS 2.8

Definition at line 158 of file qgsmaptopixel.cpp.

◆ mapUnitsPerPixel()

double QgsMapToPixel::mapUnitsPerPixel ( ) const

Returns current map units per pixel.

Definition at line 128 of file qgsmaptopixel.cpp.

◆ mapWidth()

int QgsMapToPixel::mapWidth ( ) const

Returns current map width in pixels The information is only known if setRotation was used.

Since
QGIS 2.8

Definition at line 74 of file qgsmaptopixel.cpp.

◆ setMapRotation()

void QgsMapToPixel::setMapRotation ( double  degrees,
double  cx,
double  cy 
)

Set map rotation in degrees (clockwise)

Parameters
degreesclockwise rotation in degrees
cxX ordinate of map center in geographical units
cyY ordinate of map center in geographical units
Since
QGIS 2.8

Definition at line 133 of file qgsmaptopixel.cpp.

◆ setMapUnitsPerPixel()

void QgsMapToPixel::setMapUnitsPerPixel ( double  mapUnitsPerPixel)

Set map units per pixel.

Parameters
mapUnitsPerPixelMap units per pixel

Definition at line 118 of file qgsmaptopixel.cpp.

◆ setParameters()

void QgsMapToPixel::setParameters ( double  mapUnitsPerPixel,
double  centerX,
double  centerY,
int  widthPixels,
int  heightPixels,
double  rotation 
)

Set parameters for use in transforming coordinates.

Parameters
mapUnitsPerPixelMap units per pixel
centerXX coordinate of map center, in geographical units
centerYY coordinate of map center, in geographical units
widthPixelsOutput width, in pixels
heightPixelsOutput height, in pixels
rotationclockwise rotation in degrees
Since
QGIS 2.8

Definition at line 163 of file qgsmaptopixel.cpp.

◆ showParameters()

QString QgsMapToPixel::showParameters ( ) const

String representation of the parameters used in the transform.

Definition at line 201 of file qgsmaptopixel.cpp.

◆ toMapCoordinates() [1/3]

QgsPointXY QgsMapToPixel::toMapCoordinates ( int  x,
int  y 
) const

Transform device coordinates to map (world) coordinates.

Definition at line 108 of file qgsmaptopixel.cpp.

◆ toMapCoordinates() [2/3]

QgsPointXY QgsMapToPixel::toMapCoordinates ( double  x,
double  y 
) const

Transform device coordinates to map (world) coordinates.

Definition at line 91 of file qgsmaptopixel.cpp.

◆ toMapCoordinates() [3/3]

QgsPointXY QgsMapToPixel::toMapCoordinates ( QPoint  p) const

Transform device coordinates to map (world) coordinates.

Parameters
pPoint to be converted to map cooordinates
Returns
QgsPointXY in map coorndiates

Definition at line 102 of file qgsmaptopixel.cpp.

◆ toMapPoint()

QgsPointXY QgsMapToPixel::toMapPoint ( double  x,
double  y 
) const

Transform device coordinates to map (world) coordinates.

Deprecated:
since QGIS 3.4 use toMapCoordinates instead

Definition at line 113 of file qgsmaptopixel.cpp.

◆ transform() [1/4]

QgsPointXY QgsMapToPixel::transform ( const QgsPointXY p) const

Transform the point from map (world) coordinates to device coordinates.

Parameters
pPoint to transform
Returns
QgsPointXY in device coordinates

Definition at line 217 of file qgsmaptopixel.cpp.

◆ transform() [2/4]

void QgsMapToPixel::transform ( QgsPointXY p) const

Definition at line 225 of file qgsmaptopixel.cpp.

◆ transform() [3/4]

QgsPointXY QgsMapToPixel::transform ( qreal  x,
qreal  y 
) const

Transform the point specified by x,y from map (world) coordinates to device coordinates.

Parameters
xx cordinate o point to transform
yy coordinate of point to transform
Returns
QgsPointXY in device coordinates

Definition at line 211 of file qgsmaptopixel.cpp.

◆ transform() [4/4]

QTransform QgsMapToPixel::transform ( ) const

Definition at line 252 of file qgsmaptopixel.cpp.

◆ transformInPlace() [1/3]

void QgsMapToPixel::transformInPlace ( double &  x,
double &  y 
) const

Transform device coordinates to map coordinates.

Modifies the given coordinates in place. Intended as a fast way to do the transform.

Definition at line 233 of file qgsmaptopixel.cpp.

◆ transformInPlace() [2/3]

void QgsMapToPixel::transformInPlace ( float &  x,
float &  y 
) const
Note
not available in Python bindings

Definition at line 244 of file qgsmaptopixel.cpp.

◆ transformInPlace() [3/3]

template<class T >
void QgsMapToPixel::transformInPlace ( QVector< T > &  x,
QVector< T > &  y 
) const
inline

Transform device coordinates to map coordinates.

Modifies the given coordinates in place. Intended as a fast way to do the transform.

Note
not available in Python bindings

Definition at line 113 of file qgsmaptopixel.h.

◆ xCenter()

double QgsMapToPixel::xCenter ( ) const
inline

Returns the center x-coordinate for the transform.

See also
yCenter()
Since
QGIS 3.0

Definition at line 199 of file qgsmaptopixel.h.

◆ yCenter()

double QgsMapToPixel::yCenter ( ) const
inline

Returns the center y-coordinate for the transform.

See also
xCenter()
Since
QGIS 3.0

Definition at line 206 of file qgsmaptopixel.h.


The documentation for this class was generated from the following files: