Releases: Bayer-Group/GeospatialSwift
Releases · Bayer-Group/GeospatialSwift
Spike in Polygon Validation
Expose Interface and added Bisecting Bearing and Cross
Exposed interface and added Bisecting Bearing and Cross (#9) * Expose GeodesicLineSegment init. * Added convenience methods to bounding box. * Added bisection bearing and cross logic * Create a polygon from centroid, width, and height
Internal improvements
1.1.1 Move Result helps to unit tests only (#8)
Simple Violations / OpenGIS Compliance
Introducing simple geometry violations which follow the OpenGIS compliancy of geometries.
https://postgis.net/docs/using_postgis_dbmanagement.html#OGC_Validity
Thanks to @mifanbing for the majority of the work!
Performance Enhancements
- Rebuilt the XCode project as a Package
- Removed most protocols in favor of public struct objects
- Increased performance all around
- Added an option to pass in pre-validated GeoJson which is parsed without validation. This will have a a significant performance boost with the side effect of the application crashing if the GeoJson was not validated. The older parse methods still validate but should only need to be run once when pulling in new data and thereafter can be considered validated.
- Large performance boost for Geohash coding and neighbors
- Significant API changes
- TimberSwift is no longer a dependency in favor of now passing back invalid geo json errors.
Swift 5
0.4.0 Swift 5 (#3)
General Enhancements
General enhancements (#2) * Removed backward compatibility with Swift prior to 4.1. Restructured for area and length to also exist on MultiPolygon and MultiLine. GeoJsonLineSegment typealias changed to GeodesicLineSegment struct representing the same data. Added hasHole to GeoJsonClosedGemoetry. * Expose GeoJsonObjectType name and init. * Expose new GeoJsonObject functionality. * Attempt to fix Earth Radius issues by using latitude in calculations. * Removing centroids from geometries which do not have them rather than trying to fit a centroid for them. * Further simplification. * Moved the points parameter to GeoJsonCoordinatesGeometry and removed GeoJsonMultiCoordinatesGeometry. * Add GeoJsonSimpleGeometry for easy access to Point, LineString, and Polygon. * Added a simple isSimpleGeometry boolean instead of the new GeoJsonSimpleGeometry protocol. * Make BoundingBox public. * Added inset to BoundingBox. * Renames for bounding box adjustments. * Better inset bounding box logic. * Swift 4.2 fix * Calculation updates * More rework to adhere to a more simple protocol. * Expose public methods.
Added Timber Swift
- Delegates logging to using application
- Clean up
Initial Release
0.1.0