Details
-
Type:
Improvement
-
Status:
Open
-
Priority:
Minor
-
Resolution: Unresolved
-
Affects Version/s: 2.5-M0
-
Fix Version/s: 2.7.6
-
Component/s: referencing
-
Labels:None
Description
GeneralEnvelope.setRange(int, double, double) currently contains this code:
if (minimum > maximum) { // Make an empty envelope (min == max) // while keeping it legal (min <= max). minimum = maximum = 0.5 * (minimum + maximum); }
This approach has two problems:
- It is a cause of bug that may be long to identify, since the coordinates are silently modified. An exception, or at the very least a warning could save developper time.
- WCS authorizes (with special treatment) cases where maximum < minimum at least in the longitude case. They are envelope crossing the antimeridian.
We should accept maximum < minimum only for axis declared with RangeMeaning.WRAPAROUND. For other axis, we need to decide if we should throws an exception, reorder the minimum and maximum or just log a warning.
Every GeneralEnvelope methods like contains will need to be updated for taking the antimeridian crossing case in account.
Issue Links
Activity
Martin Desruisseaux
made changes -
Jody Garnett
made changes -
| Assignee | Martin Desruisseaux [ desruisseaux ] |
Jody Garnett
made changes -
| Fix Version/s | 2.7-M0 [ 15891 ] |
Jody Garnett
made changes -
| Fix Version/s | 2.7-M1 [ 16521 ] | |
| Fix Version/s | 2.7-M0 [ 15891 ] |
Jody Garnett
made changes -
| Fix Version/s | 2.7-RC1 [ 16571 ] | |
| Fix Version/s | 2.7-M1 [ 16521 ] |
Jody Garnett
made changes -
| Fix Version/s | 2.7-M3 [ 16572 ] | |
| Fix Version/s | 2.7-M2 [ 16571 ] |
Justin Deoliveira
made changes -
| Fix Version/s | 2.7-M4 [ 16726 ] | |
| Fix Version/s | 2.7-M3 [ 16572 ] |
Andrea Aime
made changes -
| Fix Version/s | 2.7-beta1 [ 16974 ] | |
| Fix Version/s | 2.7-M4 [ 16726 ] |
Justin Deoliveira
made changes -
| Fix Version/s | 2.7-RC1 [ 17076 ] | |
| Fix Version/s | 2.7-beta1 [ 16974 ] |
Justin Deoliveira
made changes -
| Fix Version/s | 2.7.0 [ 17109 ] | |
| Fix Version/s | 2.7-RC1 [ 17076 ] |
Justin Deoliveira
made changes -
| Fix Version/s | 2.7.1 [ 17255 ] | |
| Fix Version/s | 2.7.0 [ 17109 ] |
Justin Deoliveira
made changes -
| Fix Version/s | 2.7.2 [ 17359 ] | |
| Fix Version/s | 2.7.1 [ 17255 ] |
Jody Garnett
made changes -
| Fix Version/s | 2.7.3 [ 17442 ] | |
| Fix Version/s | 2.7.2 [ 17359 ] |
Andrea Aime
made changes -
| Fix Version/s | 2.7.4 [ 17863 ] | |
| Fix Version/s | 2.7.3 [ 17442 ] |
Martin Desruisseaux
made changes -
Justin Deoliveira
made changes -
| Fix Version/s | 2.7.5 [ 18236 ] | |
| Fix Version/s | 2.7.4 [ 17863 ] |
Justin Deoliveira
made changes -
| Fix Version/s | 2.7.6 [ 18554 ] | |
| Fix Version/s | 2.7.5 [ 18236 ] |