MODULE REFERENCING ================== Module Maintainer: - Martin IP Review: - Martin, March, 2006 - Jody Garnett, August 5th, 2006 Referencing is at one level a "pure" implementation of GeoAPI interfaces, up to the level of coordinate reference systems. There is all kinds of fun reprojection stuff happening here, some of which is ported from proj4 (with permission). There has been a lot of email on this subject, and I am going to let Martin update this file with anything appropriate. org.geotools.factory -------------------- Basis for a factory implemenation, based on java SPI technology forming the core of the geotools plugin system. These constructs we revised for GeoTools 2.1 to make use of some JAI and provide a mechaism for "hinting" the lookup process when needed by client applications. IP: - FactoryFinder file was based on SAXFactory and is credited - updated headers as needed org.geotools.geometry --------------------- Captures some geometry ideas, not yet a full implementation of the GeoAPI interfaces targeted. IP: - some files (C) 2004, Institut de Recherche pour le Développement - updated headers org.geotools.io --------------- Appears to be focused on the usual text suspects, EOL and TAB. IP: - updated headers as required org.geotools.math ----------------- Contains formula for a line and other madness, mostly utility classes for elsewhere. IP: - Package html cites the following references: http://www.worldserver.com/turk/opensource/ http://mathworld.wolfram.com/ - updatded headers as required. org.geotools.measure -------------------- Support for unit parameter objects capturing common constructs like angle and latitude. IP: - range of (C) found (and maintained) in headers (C) 2001, Institut de Recherche pour le Développement (C) 1999, Fisheries and Oceans Canada (C) 1998, Pêches et Océans Canada The two last ("Fisheries and Oceans Canada" and "Pêches et Océans Canada") are actually the same thing and could be merged in a single copyright. - updated headers as to (C) 200x - 2006 PMC as required org.geotools.metadata.iso org.geotools.metadata.iso.citation org.geotools.metadata.iso.constraint org.geotools.metadata.iso.content org.geotools.metadata.iso.distribution org.geotools.metadata.iso.extent org.geotools.metadata.iso.identification org.geotools.metadata.iso.lineage org.geotools.metadata.iso.maintenance org.geotools.metadata.iso.quaility org.geotools.metadata.iso.spatial ----------------------------------------- Created in GeoTools 2.1, these classes provide the basis for ISO based metadata (such as Citation). An attempt was made to provide query support, based on MetadataEntity for GeoTools 2.1. Some very interesting ideas here :-) IP: - updated headers - range of (C) found in headers (C) 2004-2006, GeoTools Project Managment Committee (PMC) (C) 2004, Institut de Recherche pour le Développement - Credit given in header for the abstractions used: This package contains documentation from OpenGIS specifications. OpenGIS consortium's work is fully acknowledged here. org.geotools.metadata.sql ------------------------- Appears to be low-level support for metadata wrapped over an SQL result set, interested to know if this is used. (Answer: not yet used in Geotools. Used in at least one external project however. It could be used in a future Geotools version as a more convenient and more detailled way to store pre-defined Citations (EPSG, ESRI, etc...) than hard-coded constants.) IP: - range of (C) found in headers (C) 2004-2006, GeoTools Project Managment Committee (PMC) (C) 2004, Institut de Recherche pour le Développement - updated headers org.geotools.nature ------------------- Collection of Algorithms for hacking at natural phenomenons. IP: - package html cites the following: http://webexhibits.org/calendars/year-astronomy.html http://www.treasure-troves.com/astro/TropicalYear.html Unesco technical papers in marine science #40,#44,#45,#50 - range of (C) found in headers: (C) 2003-2006, GeoTools Project Managment Committee (PMC) (C) 2001, Institut de Recherche pour le Développement (C) 1999, Pêches et Océans Canada - updated headers - Calendar, SeaWater, SunRelativePosition contains note allowing JScience to distribute using BSD style license The full org.geotools.nature may be removed from Geotools distribution if JScience decide to includes them in their own distribution. JScience is probably a more appropriate place than Geotools for them. org.geotools.parameter ---------------------- Parameter implementation, informed by an OGC specification. Contains an breakdown of paramters and parameter groups with enough metadata to allow for automation. IP: - range of (C) found in headers: (C) 2004-2006, GeoTools Project Managment Committee (PMC) (C) 2001, Institut de Recherche pour le Développement - updated headers org.geotools.referencing ------------------------ Contains the CRS utility class, a GeodeticCalculator and other high level api for putting the referencing system to good use. IP: - range of (C) found in headers: (C) 2003-2006, GeoTools Project Managment Committee (PMC) (C) 2001, Institut de Recherche pour le Développement - OGC credited with some abstrations: This package contains documentation from OpenGIS specifications. OpenGIS consortium's work is fully acknowledged here. - GeodeticCalculator contains the following reference: Portions of this file is adapted from Fortran code provided by NOAA. Programmed for CDC-6600 by LCDR L.Pfeifer NGS ROCKVILLE MD 18FEB75 Modified for IBM SYSTEM 360 by John G.Gergen NGS ROCKVILLE MD 7507 Source: ftp://ftp.ngs.noaa.gov/pub/pcsoft/for_inv.3d/source/ The above-cited NOAA code is in public domain. - updated headers org.geotools.referencing.crs ---------------------------- Implementation of coordinate reference systems, based on geoapi interfaces. IP: - range of (C) information found: (C) 2003-2006, GeoTools Project Managment Committee (PMC) (C) 2001, Institut de Recherche pour le Développement - OGC credited with some abstrations: This package contains documentation from OpenGIS specifications. OpenGIS consortium's work is fully acknowledged here. - updated headers org.geotools.referencing.cs --------------------------- Implementation of coordinate systems, based on geoapi interfaces. IP: - range of (C) information found: (C) 2004-2006, GeoTools Project Managment Committee (PMC) (C) 2004, Institut de Recherche pour le Développement - OGC credited with some abstrations: This package contains documentation from OpenGIS specifications. OpenGIS consortium's work is fully acknowledged here. - updated headers org.geotools.referencing.datum ------------------------------ IP: - range of (C) information found: (C) 2003-2006, GeoTools Project Managment Committee (PMC) (C) 2001, Institut de Recherche pour le Développement - OGC credited with some abstrations: This package contains documentation from OpenGIS specifications. OpenGIS consortium's work is fully acknowledged here. - NOAA public domain is credited in DefaultEllipsoid: This class contains formulas from the public FTP area of NOAA. NOAAS's work is fully acknowledged here. - updated headers org.geotools.referencing.factory -------------------------------- Here is where factories are used to address some of the complexities of the who geospaital "standard" scene :-) The DatumAliasesTable.txt is used to great effect to allow the various parsers to be more forgiving. IP: - range of (C) information found: (C) 2005-2006, GeoTools Project Managment Committee (PMC) (C) 2005, Institut de Recherche pour le Développement - OGC credited with some abstrations: This package contains documentation from OpenGIS specifications. OpenGIS consortium's work is fully acknowledged here. - updated headers - DatumAliasesTable.txt appears to be out own data product, marked as (C) 2005 PMC on the guess that it matches DatumAliases.java org.geotools.referencing.factory.epsg ------------------------------------- Contains base support for an EPSG support, compare and contrast with the referencing plugins for PostGRES, and HSQL and the like available in the plugin folder. IP: - range of (C) information found: (C) 2005-2006, GeoTools Project Managment Committee (PMC) (C) 2005, Institut de Recherche pour le Développement - OGC credited with some abstrations: This package contains documentation from OpenGIS specifications. OpenGIS consortium's work is fully acknowledged here. - updated headers org.geotools.referencing.factory.wms ------------------------------------ Created by Refractions for a project in early 2004 and donated to the GeoTools community, supports additional AUTO projects defined by the WMS specification in Appendix B. IP: - updated headers org.geotools.referencing.operation ---------------------------------- Seems to define various math operations, probably the basis for reprojection. Most files date from 2004. IP: - range of (C) information found: (C) 2004-2006, GeoTools Project Managment Committee (PMC) (C) 2004, Institut de Recherche pour le Développement - OGC credited with some abstrations: This package contains documentation from OpenGIS specifications. OpenGIS consortium's work is fully acknowledged here. - updated headers org.geotools.referencing.operation.matrix ----------------------------------------- Defines some basic matrix math, onto of Java 3D vecmath. IP: - range of (C) information found: (C) 2005-2006, GeoTools Project Managment Committee (PMC) (C) 2005, Institut de Recherche pour le Développement - updated headers org.geotools.referencing.operation.projection --------------------------------------------- Fun with math projections, this is interesting in that we have been given permission to relicense some derrived code from the proj4 project. IP: - range of (C) found in headers: (C) 2003-2006, Geotools Project Managment Committee (PMC) (C) 2000, Frank Warmerdam (C) 1999, Fisheries and Oceans Canada (C) 1995, Gerald Evenden (C) 2005, Institut de Recherche pour le Développement - Frank has provided permission to relicense as LGPL This package contains formulas from the PROJ package of USGS. USGS's work is fully acknowledged here. This derived work has been relicensed under LGPL with Frank Warmerdam's permission. - update headers org.geotools.referencing.operation.transform -------------------------------------------- Math transformation functions. IP: - OGC credited with interfaces/documentation: This package contains documentation from OpenGIS specifications. OpenGIS consortium's work is fully acknowledged here. - updated headers org.geotools.referencing.wkt ---------------------------- Support for reading and writing well known text. IP: - contains a range of (C) in headers: (C) 2003-2006, Geotools Project Managment Committee (PMC) (C) 2002, Institut de Recherche pour le Développement - update headers org.geotools.resources ---------------------- Seems to be a collection of crazy utility classes. - range of (C) found in headers: (C) 2003-2006, Geotools Project Managment Committee (PMC) (C) 2001, Institut de Recherche pour le Développement - umodifiableArrayList incorrectly credited OGC specification ;-) - updated headers org.geotools.resources.geometry ------------------------------- Some neat, and more performant implementations for hacking Java 2d. - range of (C) found in headers: (C) 2003-2006, Geotools Project Managment Committee (PMC) (C) 2001, Institut de Recherche pour le Développement - updated headers org.geotools.resources.i18n --------------------------- Contains a breakdown of resource bundle/property files that have been processed to use number based lookup for speed, compile-time safety and to minimize resource use. IP: - updated generator program so genreated files will have correct header next time - updated header of generated files (so we can just get on with it) - updated headers as needed - range of (C) found in headers (C) 2003-2006, Geotools Project Managment Committee (PMC) (C) 2001, Institut de Recherche pour le Développement - property files lack (C) notice in comment, added - updated headers org.geotools.util ----------------- IP: - LRULinkedHashMap missing header, sent email to simone - MapEntry incorrectly credited to OGC - range of (c) found in headers (C) 2004-2006, Geotools Project Managment Committee (PMC) (C) 2004, Institut de Recherche pour le Développement - headers updated org.geotools.factory (test) org.geotools.measure (test) org.geotools.parameter (test) org.geotools.referencing (test) org.geotools.referencing.factory (test) org.geotools.referencing.factory.wms (test) org.geotools.referencing.operation (test) org.geotools.referencing.operation.projection (test) org.geotools.referencing.operation.transform (test) org.geotools.resources (test) org.geotools.util (test) org.geotools.math (test) ---------------------------------------------------- Fun with JUnit. IP: - updated headers - range of (C) in headers (C) 2003-2006, Geotools Project Managment Committee (PMC) (C) 2003, Institut de Recherche pour le Développement (C) 1998, Pêches et Océans Canada - updated headers - scripts, not sure what this is. Answer from Martin: a kind of executable test suite in text form. Contains source and target CRS, source points and expected target points. The test suite performs the projection and fires a test failure if the computed points is significantly different than the target points specified in the script. The OpenGIS test script is modified from an OGC script. All other test scripts are Rueben Schulz's work (as far as I know). Rueben did this job as a Geotools contributor. - wkt for CoordinateReferenceSystem.txt - should confirm source of data? Answer for Martin: they are mostly test scripts with comments, source and target points trimmed out. So they are mostly Rueben's derivative work.