Skip to content

bp_buffer_point

MaartenHilferink edited this page Jun 14, 2026 · 1 revision

Geometric functions > bp_buffer_point

syntax

  • bp_buffer_point(point_data_item, buffer_distance, nrPointsInCircle)

description

bp_buffer_point(point_data_item, buffer_distance, nrPointsInCircle) creates a circular buffer polygon around each point in the point_data_item. The result is a polygon data item with the same domain as the point_data_item.

The buffer_distance is a value that specifies the radius of the buffer circles in the units of the coordinate system.

The nrPointsInCircle is a UInt8 value that specifies the number of points used to approximate each circle. A higher value results in a smoother buffer but increases computation time. The minimum value is 3.

The bp_ prefix of the function name indicates that the implementation of the operator uses the Boost Polygon library, which requires integer coordinates.

applies to

conditions

  1. The data item must have a point value type with integer coordinates (ipoint or spoint).
  2. buffer_distance must be a positive value.
  3. nrPointsInCircle must be at least 3.

This function results in problems for (integer) coordinates larger than 2^25 (after translation where the first point is moved to (0, 0)). If your integer coordinates, for instance, represent mm, 2^25[mm] = about 33 [km]. We advise you to keep the size of your integer coordinates limited.

since version

15.7.3

example

attribute<ipoint> point_buffer_circles (poly, pointset) := bp_buffer_point(pointset/geometry, 10i, 16b);

more examples of buffer functions can be found here: Buffer processing example

see also

Clone this wiki locally