Comments (8)
1.0.6 has been released
- https://github.com/ngageoint/geopackage-wkb-java/releases/tag/1.0.6
- http://search.maven.org/#artifactdetails%7Cmil.nga%7Cwkb%7C1.0.6%7Cjar
from simple-features-wkb-java.
MultiCurve and MultiSurface exist and are abstract to follow the simple features spec. These are being moved into a simple features library but should remain spec compliant for interoperability.
You have a Geometry Collection that contains either all Curve or Surface implementing geometries.
I added a few options for you with these changes. In the up and coming libraries those changes are here and here.
Option 1
Read just the geometry type info to determine the declared binary geometry type as demonstrated here.
Option 2
Use new Geometry Collection methods to determine information about the geometries contained as demonstrated here.
- getCollectionType - will determine the most concrete collection geometry type (i.e. all LineStrings results in MultiLineString, all Curves (CompoundCurves & LineStrings) results in MultiCurve)
- isMultiPoint - MultiPoint or contains all Points
- getAsMultiPoint
- isMultiLineString - MultiLineString or contains all LineStrings
- getAsMultiLineString
- isMultiPolygon - MultiPolygon or contains all Polygons
- getAsMultiPolygon
- isMultiCurve - contains all Curves (CompoundCurves, LineStrings, CircularStrings)
- getAsMultiCurve
- isMultiSurface - contains all Surfaces (CurvePolygons, Polygons, Triangles, Polyhedral Surfaces, TINs)
- getAsMultiSurface
- getAsGeometryCollection
Updated build if you want to try one of those options out:
wkb.zip
from simple-features-wkb-java.
Give these changes a shot (here and here in the new libraries)...
Before writing to bytes, create an ExtendedGeometryCollection from a GeometryCollection.
A few examples:
from simple-features-wkb-java.
I see your question on stack exchange as well and agree that it is non standard OGC WKB. I updated the WKB reader to parse Multi Curves and Multi Surfaces as Geometry Collections. This is currently on a multicurve branch. The next release for this library is planned as part of a simple features library, so I made the changes on develop as well. I've attached a build of the multicurve branch that you can test with. Let me know if that solves your issue.
from simple-features-wkb-java.
Thank you very much. It is working now for reading as GeometryCollection. But we don't know the original type (multicurve or collection). Could it be to create new classes MultiCurve and MultiSurface instead of GeometryCollection? So we'll know the original type and work with the geometry later. Regards, LM.
from simple-features-wkb-java.
Thank you again for this change, it is working for reading now.
As we also work with updates on this geometry, is there way to also be able to save the geometry as MULTICURVE and MULTISURFACE? For now it only supports GEOMETRYCOLLECTION.
Regards, LM.
from simple-features-wkb-java.
Hello Brian, heartfelt thank you for these changes, it is working.
When do you plan to officially release the new version?
from simple-features-wkb-java.
Glad that worked for you. Hopefully release sometime next month. The changes are pretty much ready to go for Java & Android, just syncing up the iOS libraries right now. I usually find additional issues when porting to iOS which allows me to go back and fix the Java & Android side before releasing.
Unless someone really wants one last WKB (1.0.6) release, I plan to just release simple features which will take the place of the WKB library. There will be some minor migration changes to simple features regarding class names, packages, etc, but it shouldn't be too bad. There will be a simple features library with additional libraries for WKB, projections, and GeoJSON to start. Additional could be added later for WKT, etc.
from simple-features-wkb-java.
Related Issues (5)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from simple-features-wkb-java.