Opened 15 years ago

Last modified 14 years ago

#1780 new enhancement

Labels: Data defined position from geometry column

Reported by: mwtoews Owned by: nobody
Priority: minor: annoyance Milestone: Version 1.7.0
Component: MapCanvas Version: Trunk
Keywords: Cc:
Must Fix for Release: No Platform: All
Platform Version: Awaiting user input: no

Description

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

CREATE TABLE region
(
  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).

Change History (2)

comment:1 by pcav, 15 years ago

Milestone: Version 1.2.0
Summary: Lables: Data defined position from geometry columnLabels: Data defined position from geometry column

comment:2 by pcav, 14 years ago

Milestone: Version 1.5.0Version 1.6.0
Note: See TracTickets for help on using tickets.