Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 8 Next »

Contact:

Niels Charlier

Tracker:

GEOS-5148

Tagline:

bbox 3d 

Children:

Description

The goal is to enable a geoserver WFS request with a 3D bounding box so that we receive only geometries not disjoint with that 3D bounding box.
In other words, there is a min and max for the third coordinate as well as the first two.

In 2D we have in KVP:
BBOX=x0,y0,x1,y1

However, in 3D we get:
BBOX=x0,y0,z0,x1,y1,z1

Only 3d geometries that qualify for the min and max pairs for all three axes are returned.

In order to accomplish this, Geotools must support

  • 3D Envelopes: a 3D envelope geometry class and a 3D referenced envelope geometry class.
  • 3D Bounding Boxes: a 3D Bounding Box has two additional attributes (min z and max z) and filters geometries using all three dimensions.

Status

Voting has started:

Tasks

This section is used to make sure your proposal is complete (did you remember documentation?) and has enough paid or volunteer time lined up to be a success

 

no progress

(tick)

done

(error)

impeded

(warning)

lack mandate/funds/time

(question)

volunteer needed

  1. NC: Update API
  2. NC: Make new implementations
  3. NC: Review Documentation

API Changes

The changes are API additions, rather than changes.
There will be the following new interfaces in geoapi:

  • BBOX3D, for the 3D bbox filter, subinterface of BBOX
  • BoundingBox3D, a subinterface of BoundingBox specifying bounding box coordinates

There will be the following new classes in main

  • BBOX3DImpl, implementation of filter interface
  • ReferencedEnvelope3D, Extension of ReferencedEnvelope3D, extends JTS Envelope methods to use 3D coordinates and provides referenced envelope support for 3D coordinates

Furthermore, the FIlterFactory interfaces will be extended with the following methods:

  • BBOX3D  bbox(String propertyName, BoundingBox3D bbox);
  • BBOX3D  bbox( Expression geometry, BoundingBox3D bbox);
  • BBOX3D  bbox( Expression geometry, BoundingBox3D bbox, MatchAction matchAction);

Filter

BEFORE:

AFTER:

Documentation Changes

list the pages effected by this proposal

  • No labels