QgsCoordinateFormatter class
Contains methods for converting coordinates for display in various formats.
Contents
- Reference
QgsCoordinateFormatter contains static methods for converting numeric coordinates into different formats, for instance as degrees, minutes, seconds values. Note that QgsCoordinateFormatter has no consideration for the validity of converting coordinates to the various display formats, and it is up to the caller to ensure that sensible formats are used for particular coordinates. For instance, ensuring that only geographic coordinates and not projected coordinates are formatted to degree based formats.
Public types
- enum Format { FormatPair, FormatDegreesMinutesSeconds, FormatDegreesMinutes, FormatDecimalDegrees }
- Available formats for displaying coordinates.
- enum FormatFlag { FlagDegreesUseStringSuffix = 1 << 1, FlagDegreesPadMinutesSeconds = 1 << 2 }
- Flags for controlling formatting of coordinates.
Public static functions
- static auto asPair(double x, double y, int precision = 12) -> QString
- Formats coordinates as an "\a x,\a y" pair, with optional decimal precision (number of decimal places to include).
- static auto format(const QgsPointXY& point, Format format, int precision = 12, FormatFlags flags = FlagDegreesUseStringSuffix) -> QString
- Formats a point according to the specified parameters.
- static auto formatX(double x, Format format, int precision = 12, FormatFlags flags = FlagDegreesUseStringSuffix) -> QString
- Formats an x coordinate value according to the specified parameters.
- static auto formatY(double y, Format format, int precision = 12, FormatFlags flags = FlagDegreesUseStringSuffix) -> QString
- Formats a y coordinate value according to the specified parameters.
Enum documentation
enum QgsCoordinateFormatter:: Format
Available formats for displaying coordinates.
| Enumerators | |
|---|---|
| FormatPair |
Formats coordinates as an "x,y" pair. |
| FormatDegreesMinutesSeconds |
Degrees, minutes and seconds, eg 30 degrees 45'30". |
| FormatDegreesMinutes |
Degrees and decimal minutes, eg 30degrees 45.55'. |
| FormatDecimalDegrees |
Decimal degrees, eg 30.7555 degrees. |
enum QgsCoordinateFormatter:: FormatFlag
Flags for controlling formatting of coordinates.
| Enumerators | |
|---|---|
| FlagDegreesUseStringSuffix |
Include a direction suffix (eg 'N', 'E', 'S' or 'W'), otherwise a "-" prefix is used for west and south coordinates. |
| FlagDegreesPadMinutesSeconds |
Pad minute and second values with leading zeros, eg '05' instead of '5'. |
Function documentation
static QString QgsCoordinateFormatter:: format(const QgsPointXY& point,
Format format,
int precision = 12,
FormatFlags flags = FlagDegreesUseStringSuffix)
Formats a point according to the specified parameters.
The format argument indicates the desired display format for the coordinate.
The precision argument gives the number of decimal places to include for coordinates.
Optional flags can be specified to control the output format.
static QString QgsCoordinateFormatter:: formatX(double x,
Format format,
int precision = 12,
FormatFlags flags = FlagDegreesUseStringSuffix)
Formats an x coordinate value according to the specified parameters.
The format argument indicates the desired display format for the coordinate.
The precision argument gives the number of decimal places to include for coordinates.
Optional flags can be specified to control the output format.
static QString QgsCoordinateFormatter:: formatY(double y,
Format format,
int precision = 12,
FormatFlags flags = FlagDegreesUseStringSuffix)
Formats a y coordinate value according to the specified parameters.
The format argument indicates the desired display format for the coordinate.
The precision argument gives the number of decimal places to include for coordinates.
Optional flags can be specified to control the output format.