01: package com.vividsolutions.jump.workbench.imagery.geotiff;
02:
03: /*
04: * The Unified Mapping Platform (JUMP) is an extensible, interactive GUI
05: * for visualizing and manipulating spatial features with geometry and attributes.
06: *
07: * Copyright (C) 2003 Vivid Solutions
08: *
09: * This program is free software; you can redistribute it and/or
10: * modify it under the terms of the GNU General Public License
11: * as published by the Free Software Foundation; either version 2
12: * of the License, or (at your option) any later version.
13: *
14: * This program is distributed in the hope that it will be useful,
15: * but WITHOUT ANY WARRANTY; without even the implied warranty of
16: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17: * GNU General Public License for more details.
18: *
19: * You should have received a copy of the GNU General Public License
20: * along with this program; if not, write to the Free Software
21: * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
22: *
23: * For more information, contact:
24: *
25: * Vivid Solutions
26: * Suite #1A
27: * 2328 Government Street
28: * Victoria BC V8T 5G5
29: * Canada
30: *
31: * (250)385-6040
32: * www.vividsolutions.com
33: */
34: import com.vividsolutions.jts.geom.Envelope;
35: import com.vividsolutions.jump.JUMPException;
36: import com.vividsolutions.jump.feature.Feature;
37: import com.vividsolutions.jump.workbench.imagery.ReferencedImage;
38: import com.vividsolutions.jump.workbench.ui.Viewport;
39:
40: /**
41: * <p> </p>
42: * <p> </p>
43: * <p>Copyright: Copyright (c) 2002</p>
44: * <p>Company: </p>
45: * @author unascribed
46: * @version 1.0
47: */
48: public class GeoTIFFImage implements ReferencedImage {
49: private GeoTIFFRaster gtr;
50: private RasterPainter rasterPainter;
51:
52: public GeoTIFFImage(String location) throws JUMPException {
53: init(location);
54: }
55:
56: public Envelope getEnvelope() {
57: return gtr.getEnvelope();
58: }
59:
60: private void init(String location) throws JUMPException {
61: try {
62: gtr = new GeoTIFFRaster(location);
63: rasterPainter = new RasterPainter(gtr);
64: } catch (Exception ex) {
65: gtr = null;
66: throw new JUMPException(ex.getMessage());
67: }
68: }
69:
70: public void paint(Feature f, java.awt.Graphics2D g,
71: Viewport viewport) throws JUMPException {
72: try {
73: rasterPainter.paint(g, viewport);
74: } catch (Exception ex) {
75: throw new JUMPException(ex.getMessage());
76: }
77: }
78:
79: public String getType() {
80: return "GeoTiff";
81: }
82:
83: }
|