Statistics
| Revision:

svn-gvsig-desktop / branches / F2 / libraries / libJCRS / src-test / es / idr / test / TestWKTandProj4Epsg.java @ 11279

History | View | Annotate | Download (2.95 KB)

1
package es.idr.test;
2

    
3
import java.sql.Connection;
4
import java.sql.PreparedStatement;
5
import java.sql.ResultSet;
6
import java.sql.SQLException;
7
import java.util.ArrayList;
8

    
9
import javax.units.ConversionException;
10
import javax.units.Unit;
11

    
12
import org.geotools.referencing.CRS;
13
import org.geotools.referencing.crs.DefaultGeographicCRS;
14
import org.geotools.referencing.crs.DefaultProjectedCRS;
15
import org.geotools.referencing.datum.DefaultGeodeticDatum;
16
import org.geotools.referencing.factory.epsg.HSQLDataSource;
17
import org.geotools.referencing.wkt.UnformattableObjectException;
18
import org.gvsig.crs.Crs;
19
import org.gvsig.crs.CrsException;
20
import org.gvsig.crs.Proj4;
21
import org.opengis.referencing.FactoryException;
22
import org.opengis.referencing.NoSuchAuthorityCodeException;
23
import org.opengis.referencing.crs.CoordinateReferenceSystem;
24

    
25
public class TestWKTandProj4Epsg {
26

    
27
        public static void main(String[] args) {
28
                HSQLDataSource ds = new HSQLDataSource();
29
                Connection conn;
30
                try {
31
                        conn = ds.getConnection();
32
                
33
                        final PreparedStatement stmt;
34
                stmt = conn.prepareStatement("SELECT COORD_REF_SYS_CODE, COORD_REF_SYS_NAME"
35
                                              + " FROM epsg_coordinatereferencesystem");
36
                ResultSet result;
37
                        
38
                        result = stmt.executeQuery();
39
                        
40
                ArrayList wkt = new ArrayList();
41
                ArrayList proj4 = new ArrayList();
42
                ArrayList name = new ArrayList();
43
                ArrayList codigo = new ArrayList();
44
                ArrayList fallos = new ArrayList();
45
                while (result.next()) {
46
                        int cod = result.getInt("COORD_REF_SYS_CODE");
47
                        codigo.add(String.valueOf(cod));
48
                        name.add(result.getString("COORD_REF_SYS_NAME"));
49
                        
50
                            try {
51
                                        Crs crs = new Crs(cod,1);
52
                                        wkt.add(crs.getWKT());
53
                                        Proj4 proj= new Proj4();
54
                                        proj4.add(proj.exportToProj4(crs));
55
                                        
56
                                } catch (CrsException e) {
57
                                        // TODO Auto-generated catch block
58
                                        e.printStackTrace();
59
                                } catch (NumberFormatException e) {
60
                                        // TODO Auto-generated catch block
61
                                        //e.printStackTrace();
62
                                        fallos.add(""+cod+": "+e);
63
                                } catch (ConversionException e) {
64
                                        // TODO Auto-generated catch block
65
                                        //e.printStackTrace();
66
                                        fallos.add(""+cod+": "+e);
67
                                }catch (UnformattableObjectException e) {
68
                                        // TODO Auto-generated catch block
69
                                        //e.printStackTrace();
70
                                        fallos.add(""+cod+": "+e);
71
                                }                        
72
                }
73
                for (int i = 0; i< codigo.size(); i++) {
74
                        System.out.println("C?digo: "+codigo.get(i)+"\tNombre: "+name.get(i));
75
                        System.out.println("Cadena WKT: "+wkt.get(i));
76
                        System.out.println("Cadena Proj4: "+name.get(i));
77
                }        
78
                for (int i = 0; i< fallos.size(); i++) {
79
                        System.out.println(fallos.get(i));
80
                        
81
                }        
82
               
83
                System.out.println("Numero CRSs: " + codigo.size());        
84
                System.out.println("Numero fallos: " + fallos.size());
85
                } catch (SQLException e1) {
86
                        // TODO Auto-generated catch block
87
                        e1.printStackTrace();
88
                }        
89
        }
90
}