Class: QgsMapToPixel

class qgis.core.QgsMapToPixel

Bases: sip.wrapper

Perform transforms between map coordinates and device coordinates.

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

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

Parameters
  • mapUnitsPerPixel – Map units per pixel

  • centerX – X coordinate of map center, in geographical units

  • centerY – Y coordinate of map center, in geographical units

  • widthPixels – Output width, in pixels

  • heightPixels – Output height, in pixels

  • rotation – clockwise rotation in degrees

New in version 2.8.

QgsMapToPixel(mapUnitsPerPixel: float) Constructor

Parameters

mapUnitsPerPixel – Map units per pixel

QgsMapToPixel() Constructor

Use setParameters to fill

QgsMapToPixel(QgsMapToPixel)

Methods

fromScale

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

mapHeight

Returns current map height in pixels

mapRotation

Returns current map rotation in degrees (clockwise)

mapUnitsPerPixel

Returns current map units per pixel

mapWidth

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

setMapRotation

Set map rotation in degrees (clockwise)

setMapUnitsPerPixel

Set map units per pixel

setParameters

Set parameters for use in transforming coordinates

showParameters

String representation of the parameters used in the transform

toMapCoordinates

Transform device coordinates to map (world) coordinates

toMapCoordinatesF

Transform device coordinates to map (world) coordinates

toMapPoint

Transform device coordinates to map (world) coordinates

transform

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

transformInPlace

Transforms device coordinates to map coordinates.

xCenter

Returns the center x-coordinate for the transform.

yCenter

Returns the center y-coordinate for the transform.

fromScale(scale: float, mapUnits: QgsUnitTypes.DistanceUnit, dpi: float = 96)QgsMapToPixel

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

Parameters
  • scale (float) – map scale denominator, e.g. 1000.0 for a 1:1000 map.

  • dpi (float = 96) – screen DPI

  • mapUnits (QgsUnitTypes.DistanceUnit) – map units

Return type

QgsMapToPixel

Returns

matching QgsMapToPixel

New in version 3.0.

mapHeight(self)int

Returns current map height in pixels

New in version 2.8.

Return type

int

mapRotation(self)float

Returns current map rotation in degrees (clockwise)

New in version 2.8.

Return type

float

mapUnitsPerPixel(self)float

Returns current map units per pixel

Return type

float

mapWidth(self)int

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

New in version 2.8.

Return type

int

setMapRotation(self, degrees: float, cx: float, cy: float)

Set map rotation in degrees (clockwise)

Parameters
  • degrees (float) – clockwise rotation in degrees

  • cx (float) – X ordinate of map center in geographical units

  • cy (float) – Y ordinate of map center in geographical units

New in version 2.8.

setMapUnitsPerPixel(self, mapUnitsPerPixel: float)

Set map units per pixel

Parameters

mapUnitsPerPixel (float) – Map units per pixel

setParameters(self, mapUnitsPerPixel: float, centerX: float, centerY: float, widthPixels: int, heightPixels: int, rotation: float)

Set parameters for use in transforming coordinates

Parameters
  • mapUnitsPerPixel (float) – Map units per pixel

  • centerX (float) – X coordinate of map center, in geographical units

  • centerY (float) – Y coordinate of map center, in geographical units

  • widthPixels (int) – Output width, in pixels

  • heightPixels (int) – Output height, in pixels

  • rotation (float) – clockwise rotation in degrees

Note

if the specified parameters result in an invalid transform then no changes will be applied to the object

New in version 2.8.

showParameters(self)str

String representation of the parameters used in the transform

Return type

str

toMapCoordinates(self, x: int, y: int)QgsPointXY

Transform device coordinates to map (world) coordinates

toMapCoordinates(self, p: QPoint) -> QgsPointXY Transform device coordinates to map (world) coordinates

Parameters
  • p – Point to be converted to map cooordinates

  • x (int) –

  • y (int) –

Return type

QgsPointXY

Returns

QgsPointXY in map coorndiates

toMapCoordinatesF(self, x: float, y: float)QgsPointXY

Transform device coordinates to map (world) coordinates

Parameters
  • x (float) –

  • y (float) –

Return type

QgsPointXY

toMapPoint(self, x: float, y: float)QgsPointXY

Transform device coordinates to map (world) coordinates

Deprecated since version QGIS: 3.4 use toMapCoordinates instead

Parameters
  • x (float) –

  • y (float) –

Return type

QgsPointXY

transform(self, p: QgsPointXY)QgsPointXY

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

Parameters

p (QgsPointXY) – Point to transform

Returns

QgsPointXY in device coordinates

transform(self, p: QgsPointXY) Transform the point p from map (world) coordinates to device coordinates in place.

transform(self, x: float, y: float) -> QgsPointXY Transform the point specified by x,y from map (world) coordinates to device coordinates

Parameters
  • x – x coordinate o point to transform

  • y – y coordinate of point to transform

Return type

QgsPointXY

Returns

QgsPointXY in device coordinates

transform(self) -> QTransform Returns a QTransform encapsulating the map to pixel conversion.

transformInPlace(self)Tuple[float, float]

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

Return type

Tuple[float, float]

xCenter(self)float

Returns the center x-coordinate for the transform.

See also

yCenter()

New in version 3.0.

Return type

float

yCenter(self)float

Returns the center y-coordinate for the transform.

See also

xCenter()

New in version 3.0.

Return type

float