dms_split_union_polygon

Geometric functions dms_split_union_polygon

syntax

  • dms_split_union_polygon(polygon_data_item)
  • dms_split_union_polygon(polygon_data_item, partition_attribute)

description

dms_split_union_polygon(polygon_data_item) dissolves every polygon of the argument into one geometry and then splits that into its single polygons: the combination of dms_union_polygon and dms_split_polygon in one operator, which is how neighbouring parcels become the separate blocks they form together.

With a partition_attribute the dissolve is per group first, and the split follows.

The result is a new uint32 Domain unit with one entry per part, carrying:

  • geometry: the single polygon of that part, with its holes
  • part_rel: with a partition_attribute, a relation towards its Values unit; without one the dissolve has a Void domain and there is no relation to carry

As everywhere in the dms polygon operators family, the elements do not have to be valid polygons.

applies to

conditions

  1. The composition type of the polygon_data_item needs to be polygon.
  2. A partition_attribute, when given, must have the same domain as polygon_data_item.

since version

20.20.0

example

unit<uint32> blocks := dms_split_union_polygon(parcel/geometry);

see also