Currently working on implementing a 3D bounding box. For this I need to implement a new 3D envelope as an alternative for the JTS envelope. Has any work been done in the past that could be useful for this?
Also, any idea where I should put this. Could I put it in gt-api? Or should I use gt-referencing-3D? Or should I start a new package?
The existing GeneralEnvelope class should be sufficient.
The implementation captures getMinimum( int ), getMaximum( int ), getSpan( int ) with respect to the dimensions defined in the envelope CRS.
Any work you do on this topic should be in gt-referencing.
gt-referencing contains “just enough” implementation of the OpenGIS Geometry interfaces to get by - including an implementation of Point and Envelope.
Here are the implementations of org.opengis.geometry.Envelope available:
The BoundingBox subclass of Envelope that is specifically tied down to two dimensions (and is largely method compatible with JTS Envelope to help migrate code - include, intersects and so on).
If you find you want these methods when working on your 3D Bounding Box - you may wish to copy this design and create an interface for BoundingVolume - or make a change request to pull these methods up into org.opengis.geometry.Envelope.
–
Jody Garnett
On Tuesday, 12 June 2012 at 8:00 PM, Niels Charlier wrote:
Hey,
Currently working on implementing a 3D bounding box. For this I need to
implement a new 3D envelope as an alternative for the JTS envelope. Has
any work been done in the past that could be useful for this?
Also, any idea where I should put this. Could I put it in gt-api? Or
should I use gt-referencing-3D? Or should I start a new package?
Cheers
Niels
Live Security Virtual Conference
Exclusive live event will cover all the ways today’s security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
On Tue, Jun 12, 2012 at 12:00 PM, Niels Charlier <niels@anonymised.com> wrote:
Hey,
Currently working on implementing a 3D bounding box. For this I need to
implement a new 3D envelope as an alternative for the JTS envelope. Has
any work been done in the past that could be useful for this?
Also, any idea where I should put this. Could I put it in gt-api? Or
should I use gt-referencing-3D? Or should I start a new package?
Wondering what is this new 3D bounding box usage.
As Jody points out, GeneralEnvelope is sufficient, but it's only used in the
coverages world.
If you need something that can be used by datastore/dataaccess better
extend ReferencedEnvelope imho.
And if you need to filter by a 3D bbox you'll also need some way to express
that in OGC filters, currently the bbox filter is built with only 2 dimensions.
Cheers
Andrea
--
Ing. Andrea Aime
GeoSolutions S.A.S.
Tech lead
Via Poggio alle Viti 1187
55054 Massarosa (LU)
Italy