simplify_preserve_topology(...)Reduces the number of vertices in a line or polygon, preserving topology
Works with the following datatypes:
This function works with 2.1 and 3.0 endpoint(s). What does this mean? »
Similar to simplify(...), the simplify_preserve_topology(...) function reduces the number of vertices in a line or polygon using the Ramer–Douglas–Peucker algorithm. This is useful for approximation or for reducing the total size of a geospatial dataset.

Unlike simplify(...), this function will not over-simplify geometries.
simplify_preserve_topology(...) takes two arguments:
For example, to get a simplified version of the polygon for the City of Seattle from the Tiger LINE “Places” dataset:
The TryIt macro has been disabled until future notice while we upgrade this site to SODA3.
For more information on how simplification works, you should refer to the ST_Simplify PostGIS function.
within_polygon(...)One handy use of simplify_preserve_topology(...) is to generate simplified polygons that work with our within_polygon(...) function. To use within_polygon(...), you need to generate a string in Well Known Text, a text markup language for representing geometries, and that string also needs to be fit within the limit of a URL string, which can be as short as 2000 characters for some HTTP client libraries.
Fortunately, our CSV output type already encodes polygons in WKT, and you can use simplify_preserve_topology(...) with our CSV output. So, if you wanted to fetch a simplified version of the Seattle city boundary to feed into another SoQL query, you could use a call similar to the one above, but change the output type to get you CSV and WKT:
The TryIt macro has been disabled until future notice while we upgrade this site to SODA3.