petern48 opened a new issue, #224: URL: https://github.com/apache/sedona-db/issues/224
Many functions involve complex algorithms, so we use a library like as [geos](https://github.com/georust/geos) to implement the logic for us. Most of these should be pretty straight forward and easy to implement, since it's just calling a library function. These implementations should go in the `rust/sedona-geos/` directory. Most of the geos geometry methods are shown in this [geometry.rs](https://github.com/georust/geos/blob/master/src/geometry.rs) file (e.g `is_valid()` can be used to implement Sedona's ST_IsValid). This issue lists functions that we can leverage the `geos` library to implement the logic. All of these functions have a method in `geos` that we can use to implement these functions directly. - [ ] ST_IsValid - [ ] ST_IsValidReason - [ ] ST_IsRing - [ ] ST_IsSimple - [ ] ST_UnaryUnion - [ ] ST_ConvexHull - [ ] ST_ConcaveHull - [ ] ST_Boundary - [ ] ST_Simplify - [ ] ST_Snap - [ ] ST_MakeValid - [ ] ST_MinimumClearance - [ ] ST_MinimumClearanceLine - [ ] ST_GeometryN - [ ] ST_Polygonize ... (there's more, but I'll keep the list short for now) <!--- This is was created from me manually going reading down the the geometry.rs file I linked. ---> Here is an example commit: https://github.com/apache/sedona-db/commit/ddcc2dfe2a32dbc3c42b34791ba52e93ab4210cd. It simply calls the `get_centroid()` method and returns the result as WKB. https://github.com/apache/sedona-db/blob/df8f7205a0a99bd75195933084ae4216781f067c/c/sedona-geos/src/st_centroid.rs#L74-L76 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
