[OSGeo-Discuss] Research For Shared Java CRS Library

Jody Garnett jgarnett at refractions.net
Mon May 5 18:27:13 PDT 2008


Landon Blake wrote:
> I agree simplicity (and the broad adoption that results from simplicity)
> is a primary goal. We shouldn't let GeoAPI stand in the way of that.
>   
Even just taking the abstractions as defined by GeoAPI and turning them 
into classes would remove one level of complexity.

I view GeoAPI as a great way to communicate; especially for people like 
me that do not have access to the original ISO specifications. I also 
find it is easier to pick up a set of Java interfaces than read OGC 
specifications; but your millage may vary...
> Does anyone know how much of the existing GeoTools code is actually based on the CRS interfaces in GeoAPI?
99% you need a single GeoTools class to get in the game; it is called 
"CRS" and looks a little like the following:

class CRS {
   CoordianteReferneceSystem decode( String code );
   CoordianteReferenceSystem parseWKT( String wkt );
   CoordinateReferenceSystem lookupIdentifier( CoordianteReferenceSystem 
crs, boolean fullScan );
   MathTransform findMathTransform( CoordinateReferenceSystem source, 
CoordinateReferenceSystem target );
   //  ... other methods I don't personally use
}

There are two other things worth mentioning:
- There is a JTS utility class (called JTS) that will take that 
MathTransform above and use it to hack away at a JTS Geometry.
- If you want to customize your experience you can look up another 
GeoTools class called "Hints" in order to force XY order and all that 
kind of stuff

> Is anyone besides GeoTools using the GeoAPI interfaces for a CRS library implementation in Java?
>   
I better let Martin answer that one, I cannot remember.  The JScience 
project contains a copy of parts of GeoAPI but mostly they went their 
own way. Deegree 2.x contains a previous version of the GeoTools 
implementation (based on a set of OGC interfaces  rather than the ISO ones).

So "yes" different projects at different times, the question for me is 
"is this it" or are the ISO specifications going to change on us? They 
have been pretty good so far; one correction document in 2005 I think; 
but that is probably a discussion for the "standards" email list.

Jody



More information about the Discuss mailing list