Scale bar standardization

[Enhancement]

Reproduction Steps:

  1. Adding more layers with different CRS based on data, for instance having a vector layer in gpkg and other layer with topography in 3857
  2. QGIS canvas and maps shows 4326 scale correctly
  3. Qfield shows only in degrees which is 3857, while the surveying user expects to be in metres for ground truthing.

4326 means in metres:

While designing a survey application for histoinformatics application, surveyor expects grid (lat lon graticules) and thus all measurements to be in 4326 format, which is in metres.

Observed behavior:

The borrom left corner shows deg units in scale bar instead of metres.

Screenshots and GIFs

QField version: [Qfield master-dev : 729b80, as well as in Qfield : 1.9.6]

Additional information:

  • It would be useful and helpful if Qfield packing can take the QGIS canvas decorations and bundle it and provide it to android. So that north arrow styling, copyright, title, scale etc… can be taken from the project directly.

Imported from GitHub discussion by @lrmodesgh on 2021-10-08T17:20:03Z

EPSG 4326 projects in degrees, not meters. QField’s scale bar uses the unit type set by the project CRS. If you want a scale bar in meters, set your project CRS to a UTM projection.


Imported from GitHub comment by @nirvn on 2021-10-09T00:48:06Z

Beyond setting a project to a UTM projection, QField could:
a/ respect the project properties’ distance measurement unit
b/ offer a setting to manually set the scale bar to use kilometers or miles


Imported from GitHub comment by @nirvn on 2021-10-09T03:57:43Z

Showing the scale bar in degrees is the “most correct” thing to do for a CRS like 4326 where scales in x and y directions do not match. See also e.g. https://gis.stackexchange.com/a/70106/9839

I don’t think there’s anything that can be done meaningfully.


Imported from GitHub comment by @m-kuhn on 2021-10-09T08:33:27Z

Upgrade our scale bar measurements, avoid degree scale bar by nirvn · Pull Request #2219 · opengisch/QField · GitHub – this implements a meter scale bar for degree projections, matching QGIS’ scale bar behavior. We’re adding a “~” prefix to the scale bar label to indicate that the value is converted and isn’t as accurate as e.g. a UTM projection.


Imported from GitHub comment by @nirvn on 2021-10-09T10:07:14Z

Thanks a lot, for the prompt engagement. Sorry for my misunderstanding.. i will change the project CRS and tryout again.

Great help folks.


Imported from GitHub comment by @lrmodesgh on 2021-10-10T14:59:28Z