| 1 | = Design Gaols = |
| 2 | |
| 3 | * Rely on PROJ.4 for the definition of all projection and datum conversion algorithms |
| 4 | * Maintain compatibility with PROJ.4 for |
| 5 | * the coordinate system specification language |
| 6 | * resources such as the database of coordinate systems, datum conversion grids, etc |
| 7 | * Software design follows well-established Java patterns and best practices |
| 8 | * Software architecture is as simple as possible and easily maintainable |
| 9 | * 100% pure Java (no native code) |
| 10 | * Target platform is Java 1.5 (with a high degree of 1.4 compatibility) |
| 11 | * Minimal dependency on external libraries |
| 12 | * Execution is efficient for performing bulk coordinate transformations |
| 13 | * Support datum transformations |
| 14 | * Support as many PROJ.4 parameters as possible |
| 15 | * Error handling is via well-documented Java exceptions |
| 16 | * High quality, informative Javadoc |
| 17 | * Provide a set of unit tests to validate the API functions |
| 18 | * Support the emerging MetaCRS Common Test Format database |
| 19 | * Provide additional tools such as: |
| 20 | * A GUI to create, inspect and execute Coordinate System definitions |
| 21 | * A GUI to visualize projections on the globe |
| 22 | |
| 23 | == Currently Out of Scope == |
| 24 | |
| 25 | The following features are not currently in scope. They could be added if development resources and interest are available. |
| 26 | |
| 27 | * Support for mappings to other Coordinate System representations and authorities (e.g. such as OGC WKT, the various spatial database formats, etc) |