Skip to contents

Read

read_flatgeobuf()
Read a FlatGeobuf file into a record batch stream
read_geojson()
Read a GeoJSON FeatureCollection
read_shapefile()
Read an ESRI Shapefile into a record batch stream

Construct

ga_make_line()
Build a line between pairs of points
ga_xy()
Build a point array from x and y coordinates

Area

ga_signed_area() ga_unsigned_area()
Signed and unsigned planar area
ga_signed_area_cd() ga_unsigned_area_cd()
Chamberlain-Duquette spherical area
ga_signed_area_geodesic() ga_unsigned_area_geodesic() ga_perimeter_geodesic()
Geodesic area and perimeter

Distance

ga_dist_euclidean_pairwise() ga_dist_haversine_pairwise() ga_dist_geodesic_pairwise() ga_dist_rhumb_pairwise()
Compute pairwise distances between points
ga_cross_distance()
Distance from every row of x to every row of y
ga_dist_frechet_pairwise()
Pairwise Frechet distance
ga_dist_hausdorff_pairwise()
Pairwise Hausdorff distance
ga_dist_vincenty_pairwise()
Pairwise Vincenty distance

Measure

Index

KDTree
A k-d tree over a point array
RTree
A spatial index over a geometry array
ga_envelope()
Compute the bounding box of geometries
ga_knn_join()
Join two data frames on nearest neighbours
ga_set_thread_pool()
Set the thread cap, from options(geoarrowrs.thread_pool = )
ga_sparse_dwithin()
Find which rows of y lie within a distance of each row of x
ga_sparse_knn()
Find the rows of y nearest each row of x

Relate

ga_coordinate_position()
Locate a point relative to a geometry
ga_dimension() ga_boundary_dimension()
Determine the topological dimension of geometries
ga_filter()
Keep the rows of a data frame that relate to another spatially
ga_is_empty()
Test whether geometries are empty
ga_join()
Join two data frames on a spatial relationship
ga_relate()
DE-9IM relationship between geometries
ga_sparse_pairs()
Expand a sparse predicate into the row pairs a join needs
ga_sparse_intersects() ga_sparse_contains() ga_sparse_contains_properly() ga_sparse_within() ga_sparse_covers() ga_sparse_covered_by() ga_sparse_touches() ga_sparse_crosses() ga_sparse_overlaps() ga_sparse_equals_topo()
Find which rows of y relate to each row of x
ga_contains() ga_contains_properly() ga_within() ga_covers() ga_covered_by() ga_intersects() ga_disjoint() ga_touches() ga_crosses() ga_overlaps() ga_equals_topo()
Test a topological relationship
ga_line_intersection()
Intersect pairs of two point lines
ga_self_intersections()
Find where a geometry crosses itself

Locate

ga_closest_point() ga_closest_point_haversine()
Closest point on a geometry
ga_interior_point()
Compute a representative point inside a geometry
ga_is_convex()
Test whether a ring is convex
ga_line_locate_point()
Locate a point along a line

Hulls and bounds

ga_bounding_rect()
Axis-aligned bounding rectangle
ga_concave_hull()
Compute the concave hull of geometries
ga_convex_hull()
Compute the convex hull of geometries
ga_extremes()
Compute the extreme coordinates of geometries
ga_minimum_rotated_rect()
Minimum rotated bounding rectangle

Tessellate

ga_triangulate_delaunay()
Delaunay triangulation
ga_triangulate_earcut()
Triangulate polygons with the earcut algorithm
ga_voronoi_cells()
Voronoi cells from geometry vertices
ga_voronoi_edges()
Voronoi edges from geometry vertices

Cluster

ga_dbscan()
Assign points to clusters by density
ga_kmeans()
Assign points to a fixed number of clusters
ga_outlier_scores()
Score how much each point looks like an outlier

Aggregate

ga_collect_agg()
Collect an array into one geometry, or one per group
ga_unary_union()
Dissolve an entire array of polygons into one

Combine

ga_boolean_intersection() ga_boolean_union() ga_boolean_difference() ga_boolean_xor()
Combine two polygon arrays with a set operation
ga_unary_union()
Dissolve an entire array of polygons into one

Transform

ga_affine_transform()
Apply an arbitrary affine transform
ga_rotate_around_center()
Rotate around the bounding box center
ga_rotate_around_centroid()
Rotate geometries around their centroid
ga_scale_xy()
Scale geometries in x and y
ga_skew()
Skew geometries uniformly about their centroid
ga_skew_xy()
Skew geometries in x and y
ga_translate()
Translate geometries along the x and y axes
ga_simplify()
Simplify with Ramer-Douglas-Peucker
ga_simplify_idx() ga_simplify_vw_idx()
Find which coordinates simplification would keep
ga_simplify_vw() ga_simplify_vw_preserve()
Simplify with Visvalingam-Whyatt
ga_to_degrees()
Convert coordinates from radians to degrees
ga_to_radians()
Convert coordinates from degrees to radians

Interpolate

ga_interpolate_point()
Interpolate a point along a linestring
ga_points_along_line()
Points at regular intervals along a line
ga_point_at_distance_between() ga_point_at_ratio_between()
Interpolate a point between two points
ga_densify()
Add points so no segment exceeds a length

Winding

ga_is_ccw() ga_is_cw()
Test the winding order of a ring
ga_orient()
Apply a winding direction to polygon rings
ga_winding_order()
Determine the winding order of a ring

Inspect

ga_coords() ga_exterior_coords()
Collect a geometry's coordinates as points
ga_lines()
Split geometries into their line segments
ga_n_coords()
Count the coordinates in each geometry
ga_x() ga_y()
Read the x or y of a point
ga_is_valid() ga_validation_error()
Test whether geometries are well formed

Cast

ga_as_point() ga_as_linestring() ga_as_polygon() ga_as_multipoint() ga_as_multilinestring() ga_as_multipolygon()
Cast to one GeoArrow geometry type
ga_cast_geometry()
Cast geometries to another GeoArrow geometry type
ga_downcast_geometry()
Cast to the narrowest geometry type
ga_explode()
Split multi-part geometries into their parts
ga_flatten()
Collapse a list of geometries into a single array
ga_from_wkb()
Read well known binary as a GeoArrow array

Misc

ga_buffer()
Buffer geometries by a given distance
ga_centroid()
Compute the centroid of geometries
ga_chaikin_smoothing()
Smooth geometries using the Chaikin algorithm
ga_line_segmentize() ga_line_segmentize_haversine()
Split linestrings into equal segments
ga_remove_repeated_points()
Remove repeated consecutive points from geometries
register_geoarrow_udfs()
Register geoarrowrs functions with Arrow