Java GIS Collaboration

From OSGeo
Jump to navigation Jump to search

Collaboration?

This page serves as a placeholder for information and discussion about possible opportunities for collaboration between FOSS GIS programs written in Java. This is an attempt to move from talk to action, since we (members of the FOSS GIS Java community) usually just nod and say "yeah, we should collaborate" and it ends there.

Java-based GIS Projects

What components?

  • GeoAPI (OGC/ISO specifications)
  • GeoTools
  • JTS

Contacts

People from each team who are taking part in this discussion:

OpenJUMP - Landon Blake (sunburned.surveyor@gmail.com)

uDig / GeoTools / GeoAPI - Cory Horner (chorner at refractions.net)

Problems

Licensing

  • LGPL vs GPL: everyone can use the LGPL code; GPL code will get less reuse.

Feature

  • Different Feature Models. This makes it difficult to share code. For example, you can't just plug-in a data source from the GeoTools library into OpenJUMP because it won't give you JUMP Feature objects. It gives you GeoTools Feature objects, which OpenJUMP can't use. :] We can work towards a common Feature implementation, but that is difficult in many cases because so much existing code has been written. In the case of OpenJUMP a lot of code is written and also published bia public interfaces to plug-in developers, which makes it much harder to refactor code. (If you want to change things you break a lot of plug-ins.) One solution may be to design, produce, and maintain code that converts between the different object features.

Ideas

  • draw a picture (who is using what right now?)
  • have an IRC meeting and figure out where we can collaborate
  • a BOF at FOSS4G2007 ?

Opportunities for Collaboration

  • Systems built on JTS. (Spatial Relationship Constraints, Geometry Constraints, Topology)
  • GIS Components that don't depend directly on the existing feature models. (Annotation/Map Labels Model, Non-Spatial Features)

Action - Not Talking

GeoJOP DataObject Framework Shared CRS and CRS Transformation Library

OSGeo Member Java Code Inventory

The purpose of this section is to catalog the inventories of Java code being developed and maintained by OSGeo members. This inventory may reduce code duplication and enhance code reuse. All the code listed in the inventories should be released under a FOSS license and should be at least loosely related to the development of geospatial software.

The Sunburned Surveyor's Inventory

Project Name: Docking Window Utilities

Status: Stable

License: GPL

Description: Utility classes for working with InfoNode's docking window framework.