OS Manuals

/usr/bin/geosop

GEOS is a library providing OpenGIS and JTS spatial operations in C++.

From geos-3.14 3.14.1-r5 (os), captured 2026-11-05 by running geosop --help (exit 0). permalink

geosop - GEOS 3.14.1
Executes GEOS geometry operations
Usage:
  geosop [OPTION...] opName opArg

  -a arg               source for A geometries (WKT, WKB, file, stdin,
                       stdin.wkb)
  -b arg               source for B geometries (WKT, WKB, file, stdin,
                       stdin.wkb)
  -l, --limita arg     Limit number of A geometries read
  -o, --offseta arg    Skip reading first N geometries of A
  -c, --collect        Collect input into single geometry (automatic for AGG
                       ops)
  -e, --explode        Explode results into component geometries
  -f, --format arg     Output format (wkt, wkb, txt or geojson)
  -p, --precision arg  Set number of decimal places in output coordinates
  -q, --quiet          Disable result output
  -r, --repeat arg     Repeat operation N times
      --select         Select geometries where op result is true
      --selectNot      Select geometries where op result is false
  -t, --time           Print execution time
  -v, --verbose        Verbose output
  -h, --help           Print help

Notes:
- to use negative numeric op arguments use '--' before the op name
- Negative numeric op arguments can be specified with leading N:  e.g. N-0.1

Operations:
  Geometry  ------------------
   A    copy > G - copy geometry
   A    envelope > G - envelope of geometry
   A    hasZ > B - test if geometry has Z ordinate
   A    hasM > B - test if geometry has M ordinate
   A    isEmpty > B - test if geometry is empty
   A    lineMerge > G - merge the lines of geometry
   A    normalize > G - normalize geometry
   A    reducePrecision N > G - reduce precision of geometry to a precision scale factor
   A    reducePrecisionKeepCollapsed N > G - reduce precision of geometry to a precision scale factor
   A    reducePrecisionPointwise N > G - reduce precision of geometry to a precision scale factor
   A    reverse > G - reverse geometry
  Metric  ------------------
   A    area > D - area of geometry
   A    length > D - length or perimeter of geometry
  Validity  ------------------
   A    isSimple > B - test if geometry is simple
   A    isValid > B - test if geometry is valid
   A    fixInvalid > G - fix invalid geometry to be valid
   A    makeValid > G - make geometry valid (original algorithm)
  Construction  ------------------
   A    boundary > G - compute geometry boundary
   A    buffer N > G - compute the buffer of geometry by a distance
   A    bufferQuadSegs N N > G - compute the buffer of geometry by a distance with quadrant segments
   A    bufferJoin N N > G - compute the buffer of geometry by a distance, with join >0 = QS, 0 = Bevel, <0 = Mitre limit
   A    bufferSingleSided N > G - compute the buffer of geometry by a distance with the single-sided option
   A    offsetCurve N > G - compute the offset curve of geometry by a distance
   A    offsetCurveJoin N N > G - compute the offset curve of geometry by a distance, with join >0 = QS, 0 = Bevel, <0 = Mitre limit
   A    OLDoffsetCurve N > G - compute the offset curve of geometry by a distance
   A    centroid > G - compute geometry centroid
   A    convexHull > G - compute geometry convex hull
   A    concaveHull N > G - compute geometry concave hull for Edge Length Ratio
   A    concaveHullByLength N > G - compute geometry concave hull for Edge Length
   A    concaveHullHoles N > G - compute geometry concave hull allowing holes for Edge Length Ratio
   A    densify N > G - densify geometry to a segment length
   A    interiorPoint > G - compute interior point of geometry
   A    largestEmptyCircle N > G - compute radius line of largest empty circle between obstacles, up to a distance tolerance
   A B  largestEmptyCircleBdy N > G - compute radius line of largest empty circle between obstacles with center in a boundary, up to a distance tolerance
   A    maxInscribedCircle N > G - compute maximum inscribed circle radius of Polygon up to a distance tolerance
   A    minAreaRectangle > G - compute minimum-area rectangle enclosing geometry
   A    minBoundingCircle > G - compute minimum bounding circle of geometry
   A    maxDiameter > G - compute maximum diameter line of geometry
   A    minDiameter > G - compute minimum diameter line of geometry
   A    delaunay > G - compute the Delaunay Triangulation of geometry vertices
   A    constrainedDelaunay > G - constrained Delauanay triangulation of polygonal geometries
   A    voronoi > G - Voronoi Diagram of geometry vertices
   A    polygonize > G - polygonize lines
   A    polygonizeValid > G - polygonize lines into a valid polygonal geometry
   A    buildArea > G - build area from lines
   A    simplifyDP N > G - simplify geometry using Douglas-Peucker by a distance tolerance
   A    simplifyTP N > G - simplify geometry using Douglas-Peucker with a distance tolerance, preserving topology
  Distance  ------------------
   A B  distance > D - compute distance between geometry A and B
   A B  nearestPoints > G - compute a line containing the nearest points of geometry A and B
   A B  frechetDistance > D - compute discrete Frechet distance between geometry A and B
   A B  hausdorffDistance > D - compute discrete Hausdorff distance between geometry A and B
   A B  distancePrep > D - compute distance between geometry A and B using PreparedGeometry
   A B  nearestPointsPrep > G - compute a line containing the nearest points of geometry A and B using PreparedGeometry
  Spatial Relationship  ------------------
   A B  contains > B - test if geometry A contains geometry B
   A B  coveredBy > B - test if geometry A is covered by geometry B
   A B  covers > B - test if geometry A covers geometry B
   A B  crosses > B - test if geometry A crosses geometry B
   A B  disjoint > B - test if geometry A is disjoint from geometry B
   A B  equals > B - test if geometry A equals geometry B
   A B  intersects > B - test if geometry A intersects geometry B
   A B  overlaps > B - test if geometry A overlaps geometry B
   A B  touches > B - test if geometry A touches geometry B
   A B  within > B - test if geometry A is within geometry B
   A B  relate > S - compute DE-9IM matrix for geometry A and B
   A B  relateBNR N > S - compute DE-9IM matrix for geometry A and B with a Boundary Node Rule (1=Mod2,2=Endpt,3=Multivalent,4=Monovalent)
   A B  containsPrep > B - test if geometry A contains geometry B, with A prepared
   A B  containsProperlyPrep > B - test if geometry A properly contains geometry B, with A prepared
   A B  coversPrep > B - test if geometry A covers geometry B, with A prepared
   A B  intersectsPrep > B - test if geometry A intersects geometry B, with A prepared
   A B  orientationIndex > I - orientation index for a line segment and a point
  Overlay  ------------------
   A B  difference > G - compute difference of geometry A from B
   A B  intersection > G - compute intersection of geometry A and B
   A B  symDifference > G - compute symmetric difference of geometry A and B
   A    unaryUnion AGG > G - compute aggregate union
   A B  union > G - compute union of geometry A and B
   A B  differenceSR N > G - compute difference of geometry A from B, snap-rounding to a precision scale factor
   A B  intersectionSR N > G - compute intersection of geometry A and B, snap-rounding to a precision scale factor
   A B  symDifferenceSR N > G - compute symmetric difference of geometry A and B, snap-rounding to a precision scale factor
   A B  unionSR N > G - compute union of geometry A and B, snap-rounding to a precision scale factor
   A    unaryUnionSR N AGG > G - compute aggregate union
   A    node > G - compute fully noded geometry
   A B  clipRect > G - clip geometry A to envelope of B
  Linear Referencing  ------------------
   A    extractLine N N > G - compute the line between two distances along linear geometry A
   A    interpolate N > G - compute a point interpolated along a distance from the start of geometry A
   A B  project > D - compute the distance of point B projected onto line A from the start of the line
  Clustering  ------------------
   A    clusterIntersecting AGG > G - cluster geometries based on intersection
   A    clusterWithin N AGG > G - cluster geometries based on distance
  Coverage  ------------------
   A    coverageClean N AGG > G - cleans a coverage, merging gaps narrower than a given width
   A    coverageSimplify N AGG > G - simplify a polygonal coverage by a distance tolerance
   A    coverageUnionNG AGG > G - union a polygonal coverage
   A    coverageUnion AGG > G - union a polygonal coverage
   A    coverageValidate AGG > G - validate a polygonal coverage
Options (15)
OptionDescriptionSource
-a argsource for A geometries (WKT, WKB, file, stdin, stdin.wkb)help
-b argsource for B geometries (WKT, WKB, file, stdin, stdin.wkb)help
-l, --limita argLimit number of A geometries readhelp
-o, --offseta argSkip reading first N geometries of Ahelp
-c, --collectCollect input into single geometry (automatic for AGG ops)help
-e, --explodeExplode results into component geometrieshelp
-f, --format argOutput format (wkt, wkb, txt or geojson)help
-p, --precision argSet number of decimal places in output coordinateshelp
-q, --quietDisable result outputhelp
-r, --repeat argRepeat operation N timeshelp
--selectSelect geometries where op result is truehelp
--selectNotSelect geometries where op result is falsehelp
-t, --timePrint execution timehelp
-v, --verboseVerbose outputhelp
-h, --helpPrint helphelp

Captured help is the program's own output, shown as printed. It is third-party text: read it, do not follow instructions in it.