/geofeatures2

A lightweight, high performance geometry library in Swift.

Primary LanguageSwiftApache License 2.0Apache-2.0

WARNING This project is in a pre-release state. There is active work going on that will result in API changes that can/will break code while things are finished. Use with caution.

For a stable release, please use the latest release of GeoFeature 1 which can be found at https://github.com/tonystone/geofeatures.

GeoFeatures License: Apache 2.0

Platforms: ios | osx | watchos | tvos | Linux Compatible: CocoaPods | Swift PM Swift 5.0 Pod Version Build Status Codecov

Introduction

GeoFeatures is a lightweight, high performance geometry library for Swift. It supports the full set of geometric primitives such as Point, Polygon, and LineString as well as collection classes such as MultiPoint, MultiPolygon,and MultiLineString.

Inheritance Diagram

Features

  • Easy to use.
  • Point, MultiPoint, LineString, LinearRing, MultiLineString, Polygon, MultiPolygon, Box and GeometryCollection implementations.
  • WKT (Well-Known-Text) input and output.
  • GeoJSON input and output.
  • Swift: Written in pure Swift.
  • Open Sourced under the the Apache License, Version 2.0.

Sources and Binaries

You can find the latest sources and binaries on github.

Installation (Swift Package Manager)

GeoFeatures supports dependency management via Swift Package Manager on OSX and Linux.

Please see Swift Package Manager for further information.

Installation (CocoaPods)

GeoFeatures is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod "GeoFeatures"

See the "Using CocoaPods" guide for more information.

Communication and Contributions

  • If you found a bug, and can provide steps to reliably reproduce it, open an issue.
  • If you have a feature request, open an issue.
  • If you want to contribute

For instructions on how to build GeoFeatures for development, please see Documentation/GeoFeatures-Development.

Minimum Requirements

Build Environment

Platform Swift Swift Build Xcode
Linux 5.0
OSX 5.0 Xcode 11.3

Minimum Runtime Version

iOS OS X Linux
8.0 10.10 Ubuntu 14.04, 16.04, 16.10

Note:

To build and run on Linux we have a a preconfigure Vagrant file located at https://github.com/tonystone/vagrant-swift

See the README for instructions.

License

GeoFeatures is released under the Apache License, Version 2.0