org.geotools.gce.geotiff

Java Source Code / Java Documentation
1. 6.0 JDK Core
2. 6.0 JDK Modules
3. 6.0 JDK Modules com.sun
4. 6.0 JDK Modules com.sun.java
5. 6.0 JDK Modules sun
6. 6.0 JDK Platform
7. Ajax
8. Apache Harmony Java SE
9. Aspect oriented
10. Authentication Authorization
11. Blogger System
12. Build
13. Byte Code
14. Cache
15. Chart
16. Chat
17. Code Analyzer
18. Collaboration
19. Content Management System
20. Database Client
21. Database DBMS
22. Database JDBC Connection Pool
23. Database ORM
24. Development
25. EJB Server geronimo
26. EJB Server GlassFish
27. EJB Server JBoss 4.2.1
28. EJB Server resin 3.1.5
29. ERP CRM Financial
30. ESB
31. Forum
32. GIS
33. Graphic Library
34. Groupware
35. HTML Parser
36. IDE
37. IDE Eclipse
38. IDE Netbeans
39. Installer
40. Internationalization Localization
41. Inversion of Control
42. Issue Tracking
43. J2EE
44. JBoss
45. JMS
46. JMX
47. Library
48. Mail Clients
49. Net
50. Parser
51. PDF
52. Portal
53. Profiler
54. Project Management
55. Report
56. RSS RDF
57. Rule Engine
58. Science
59. Scripting
60. Search Engine
61. Security
62. Sevlet Container
63. Source Control
64. Swing Library
65. Template Engine
66. Test Coverage
67. Testing
68. UML
69. Web Crawler
70. Web Framework
71. Web Mail
72. Web Server
73. Web Services
74. Web Services apache cxf 2.0.1
75. Web Services AXIS2
76. Wiki Engine
77. Workflow Engines
78. XML
79. XML UI
Java
Java Tutorial
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
Photoshop Tutorials
Maya Tutorials
Flash Tutorials
3ds-Max Tutorials
Illustrator Tutorials
GIMP Tutorials
C# / C Sharp
C# / CSharp Tutorial
C# / CSharp Open Source
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
Python Tutorial
Python Open Source
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
XML
XML Tutorial
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
Java Source Code / Java Documentation » GIS » GeoTools 2.4.1 » org.geotools.gce.geotiff 
org.geotools.gce.geotiff
package org.geotools.data.geotiff A grid coverage exchange to manage the GeoTIFF Revision 1.0 format.

This package is going to be "evolutionary", rather than "revolutionary". As functionality is added to the package, this page will be updated. This page should be considered a current synopsis of the capabilities of the module.

Revision Date

May 31, 2005

Requirements

This package requires that the runtime environment have access to Java Advanced Imaging (JAI) and the JAI Image I/O extensions available from Sun. Specifically, the GeoTiffFormatFactorySpi will report itself unavailable if any of the following are unavailable:
  • javax.media.jai.JAI
  • com.sun.media.jai.operator.ImageReadDescriptor
  • com.sun.media.imageio.plugins.tiff.GeoTIFFTagSet

Other classes are of course necessary to successfully read in the GeoTIFF image. As they typically come bundled with one or more of the above, they are assumed to be present if all of the above are present.

CRS Information

The ability of the GeoTiff module to interpret and accurately express the geographic information encoded in the GeoTIFF file relies strongly on it's ability to use the Geotools framework to construct a meaningful coordinate reference system (CRS) object. Geotools has a number of Authority Factories which take care of constructing CRS information given the code assigned to that CRS.

The central problem is that a complete CRS is composed of many smaller pieces (coordinate systems (CS), datums, and coordinate operations.) Each of these smaller peices is assigned a code for berevity. So when a GeoTIFF file is written, the coordinate information can either be a single code representing the entire CRS (if you're lucky), or a combination of each of the component codes. Reading a GeoTIFF involves the reverse process: looking up either a single code or a collection of the component codes and building up a CRS object from these components.

Geotools supports the looking up of EPSG codes in plugins. Therefore it is critical that the environment inside which the GeoTIFF plugin is running contain the appropriate epsg authority factory plugins. Unfortunately, the definition of "appropriate" varies according to the type of GeoTIFF file you are trying to read. If you know that your GeoTIFF file contains only codes for complete CRSes, then you can use an EPSG plugin which only looks up complete CRSes (e.g., epsg-wkt, the property file based EPSG authority factory.) If, however, you want to be able to handle more types of GeoTIFF files (perhaps you do not know where your GeoTIFF files are coming from), you must choose an EPSG authority factory which can lookup components of a CRS (e.g., epsg-access, the MS Access backed authority factory.)

In short, the exact means by which EPSG codes are turned into actual Java Objects is left up to the application writer. Ensure that the capabilities you have configured match the requirements imposed by the data you are trying to read.

Current Functionality

The current iteration of the GeoTIFF plugin will read GeoTIFF files with the following restrictions:

  • The coordinate system must be either projected or geographic (geodetic coordinate systems not supported.)
  • The EPSG authority factory plugin chosen by the application writer must successfully construct everything necessary to represent the scene coordinates.
  • The Raster to Model transformation must be a simple translation.
  • This plugin does not use the "Hints" mechanism as of yet. I don't know how to have the user specify the EPSG factories they wish to use.
  • When constructing a user defined projected CRS, the Cartesian CS associated with the system always has easting as the first axis and northing as the second axis, and the units are always the length units defined in the GeoTIFF file. I do not know if it is possible to have a different combination.

The GeoTIFF plugin currently does not write GeoTIFF files. The current obstacles to writing a GeoTIFF file are:

  1. The GeoTiffIIOMetadataAdapter cannot modify the IIOMetadata object (e.g., it's read-only).
  2. No mechanism exists to examine the parameters of a coordinate system and produce an EPSG code.

Key features of the package:

  1. Has a reasonable level of isolation from the Geotools library ala the GeoAPI interfaces. Areas of best isolation are CRS, and areas of worst isolation are the grid coverage exchange API.
  2. Utilizes the JAI ImageI/O tools to perform the actual file I/O.
  3. Interprets metadata retrieved as IIOMetadata.
  4. Functionality is logically subdivided:
    • Classes required to interface to Geotools.
    • An adapter class to retrieve GeoKeys from the IIOMetadata by symbolic name (GeoTiffIIOMetadataAdapter).
    • An adapter class to interpret the values in the GeoKeys and create a corresponding coordinate system with a factory (GeoTiffCoordinateSystemAdapter).

License Information

The GeoTIFF plugin for Geotools is public domain. The GeoTiffIIOMetadataAdapter is Copyright 2004 by Mike Gelbin and released under a liberal license as noted in that file.
Java Source File NameTypeComment
GeoTiffException.javaClass This exception is thrown when the problem with reading the GeoTiff file has to do with constructing either the raster to model transform, or the coordinate system.
GeoTiffFormat.javaClass Provides basic information about the GeoTIFF format IO.
GeoTiffFormatFactorySpi.javaClass The GeoTiffFormatFactorySpi should never be instantiated directly by user code.
GeoTiffReader.javaClass this class is responsible for exposing the data and the Georeferencing metadata available to the Geotools library.
GeoTiffReaderTest.javaClass Testing GeoTiffReader as well as IIOMetadataDumper .
GeoTiffServiceTest.javaClass Testing GeoTiffFormatFactorySpi .
GeoTiffWriteParams.javaClass Subclass of GeoToolsWriteParams the allows the user to specify parameters to control the process of writing out a GeoTiff file through standards ImageWriteParam (with possible extensions).
GeoTiffWriter.javaClass
GeoTiffWriterTest.javaClass
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.