Feature request #1780

Labels: Data defined position from geometry column

Added by Mike Toews over 8 years ago. Updated 9 months ago.

Status:In Progress
Assignee:nobody -
Category:Map Canvas
Pull Request or Patch supplied:No Resolution:
Easy fix?:No


I would like to use a geometry (POINT) attribute to position label, using the example postgres schema:

  gid serial NOT NULL,
  geometry geometry, -- SELECT [[AddGeometryColumn]]('public','region','geometry',26910,'POLYGON',2);
  label geometry, -- SELECT [[AddGeometryColumn]]('public','region','label',26910,'POINT',2);

Here, there are two geometry columns: a polygon for the shape in the map, and a point to specify and store the label location.

The present versions (1.0.1 to 1.2.0 unstable) support X/Y coordinates from two numeric columns. (This is found in Layer Properties > Labels > Data defined position).

The enchantment requested in this ticket is to add another pull-down for a data defined position, which would be a geometry column. This seems more natural than defining two numeric columns for X and Y coordinates.

I suggest first keeping it simple, supporting only POINT geometries. However, I can also envision enabling MULTIPOINT (for multiple places of the same label), and perhapps [MULTI]LINESTRING for text along a path (creeks, rivers) if the text fits the length. Furthermore, the centroid can easily be extracted from all other geometry types ([MULTI]POLYGONs, COLLECTIONs, etc.) to represent the coordinate for the label (i.e., this is the "else"/"default" case for other geometry types).


#1 Updated by Giovanni Manghi about 6 years ago

  • Target version changed from Version 1.7.0 to Version 1.7.4

#2 Updated by Giovanni Manghi almost 6 years ago

  • Target version changed from Version 1.7.4 to Version 2.0.0

#3 Updated by Pirmin Kalberer over 5 years ago

  • Target version changed from Version 2.0.0 to Future Release - Nice to have

#4 Updated by Giovanni Manghi 9 months ago

  • Pull Request or Patch supplied set to No
  • Easy fix? set to No

#5 Updated by Regis Haubourg 9 months ago

  • Priority changed from Low to Normal
  • Description updated (diff)
  • Status changed from Open to In Progress

A QEP is opened for a related requirement here [[https://github.com/qgis/QGIS-Enhancement-Proposals/issues/46]]

QGIS 3 API is currently gaining the ability to handle multiple geometries, so we can consider we are getting closer

Also available in: Atom PDF