jts2geojson
to 0.14.3, which uses jackson
2.10proj4j
to use [org.locationtech.proj4j/proj4j "1.1.0"]
, changing namespace from org.osgeo.proj4j
to org.locationtech.proj4j
proj4-string?
to proj4-str?
, to maintain naming consistency in the APIjts-earth
from geo.spatial
, and replace all uses of deprecated spatial4j
functions using that JtsShapeFactory
with functions using the SpatialContext
earth
transform-geom
to use externally created proj4j
CoordinateTransform
objectsgeo.io
readers and writers are now thread-safeh3-line
function to H3 protocol, which returns the line of indexes between two cellsh3-to-center-child
function to H3 protocol, which returns a center child at a given resolutionget-res-0-indexes
function for H3, which returns a collection of all indexes at resolution 0get-pentagon-indexes
function for H3, which returns all topologically pentagonal cells at a given resolutionget-faces
function for H3, which returns the icosahedron faces intersected by a cell, represented by integers 0-19.line-segment
, multi-point
, multi-linestring
, and multi-linestring-wkt
functions to geo.jts
jts
namespaceh3
to 3.6.0, enabling support for functions described abovejts2geojson
to 0.14.2, and jts
to 1.16.1midje
to 1.9.9, criterium
to 0.4.5, cheshire
to 5.9.0, and lein-codox
to 0.10.7noggit
from dependencies, now that it is no longer useddeps.edn
based on project.clj
crs
namespaceh3-distance
functiongeo.h3
for interacing with Uber's H3 tiling libraryThis namespace contains a variety of functions for interoperating with H3 via Uber's H3 Java Bindings. Some highlights include these functions implemented for H3 Cells expressed as either Longs or Strings:
(Via protocol geo.h3/H3Index
)
This protocol is implemented for String
and Long
which are the 2 ways of representing an H3 cell.
to-string
to-long
h3->pt
get-resolution
k-ring
k-ring-distances
to-jts
edge
edge-origin
edge-destination
edges
edge-boundary
pentagon?
is-valid?
neighbors?
Via protocol geo.h3/Polygonal
This protocol includes interfaces to H3's Polyfill functionality for tiling a polygon with H3 cells.
It is implemented for ch.hsr.geohash.GeoHash
, org.locationtech.spatial4j.shape.impl.RectangleImpl
, org.locationtech.jts.geom.Polygon
, org.locationtech.jts.geom.LinearRing
, and org.locationtech.jts.geom.MultiPolygon
.
to-polygon
polyfill
polyfill-address
Additional H3 Functions
compact
uncompact
multi-polygon
Additionally, we've added the H3 GeoCoord
class to geo
's Shapelike
and Point
protocols, so they can interoperate with all of the existing spatial types.
See the full API docs for more detailed information.
Note while this change is relatively minor with regard to the outward API for factual/geo, it is considered a major version upgrade because any of the JTS types returned by this library will have moved from the com.vividsolutions
namespace to org.locationtech
. So users of this library may need to update any type-specific code or imports accordingly.
Several new functions have been added to the geo.jts
namespace to deal with CRS projections.
geo.jts
operations will default to SRID 4326, but will respect a geometry's existing SRID if setgeo.jts/transform-geom
to convert a JTS Geometry to an alternate CRS.geo.jts/get-srid
to check the SRID of a JTS Geometrygeo.jts/set-srid
to check the SRID of a JTS Geometrygeo.jts
functions linear-ring
, polygon-wkt
, and multi-polygon-wkt
now accept optional srid
arguments for constructing new geometries in the desired SRIDgeo.spatial/to-jts
New Shapelike
protocol function for converting Shapelike
s to JTS geometries. Accepts an optional SRID and defaults to 4326See geo.crs
for some helpers around checking and manipulating CRS reference IDs.
geo.io/read-geojson
Can now read GeoJSON Features and FeatureCollections. Note that the interface of this has changed somewhat to accommodate the different structures of GeoJSON Geometries, Features, and FeatureCollections. read-geojson
will always return a sequence of Feature maps containing :geometry
and :properties
keysgeo.io/parse-geojson
To access the raw GeoJSON entity (Geometry, Feature, or FeatureCollection) if neededgeo.io/to-geojson-feature-collection
or geo.io/to-geojson-feature
to construct the appropriate GeoJSON from a map containing {:properties {...} :geometry <JTS Geom>}
geo.spatial/rand-point-in-radius
for getting a random point within a given radius of a given center pointgeo.spatial/resegment
for partitioning JTS LineStrings into segments of a given max lengthgeo.geohash/geohashes-intersecting
has been optimized significantly for tiling large geometries with small geohash levels.geo.io
namespace with functions for reading and writing common geo formatsCan you improve this documentation? These fine people already did:
Will Cohen & Horace WilliamsEdit on GitHub
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close