Statistics
| Revision:

root / org.gvsig.jcrs / libJCRS / src-test / es / idr / test / TestWKTandProj4Epsg.java @ 38

History | View | Annotate | Download (3.93 KB)

1
package es.idr.test;
2

    
3
import java.io.BufferedWriter;
4
import java.io.FileWriter;
5
import java.io.IOException;
6
import java.sql.Connection;
7
import java.sql.PreparedStatement;
8
import java.sql.ResultSet;
9
import java.sql.SQLException;
10
import java.util.ArrayList;
11

    
12
import javax.units.ConversionException;
13

    
14
import org.geotools.referencing.factory.epsg.HSQLDataSource;
15
import org.geotools.referencing.wkt.UnformattableObjectException;
16
import org.gvsig.crs.Crs;
17
import org.gvsig.crs.CrsException;
18
import org.gvsig.crs.CrsFactory;
19
import org.gvsig.crs.CrsGT;
20
import org.gvsig.crs.ICrs;
21
import org.gvsig.crs.Proj4;
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
                        int indice = 0;
33
                        int fallo = 0;
34
                        final PreparedStatement stmt;
35
                stmt = conn.prepareStatement("SELECT COORD_REF_SYS_CODE, COORD_REF_SYS_NAME"
36
                                                                          +" FROM epsg_coordinatereferencesystem ");
37
                                                                          //+" WHERE COORD_REF_SYS_CODE>29372");
38
                ResultSet result;
39
                        
40
                        result = stmt.executeQuery();
41
                                      
42
                String filename = "salida.txt";
43
                
44
                BufferedWriter bw =  new BufferedWriter(new FileWriter(filename));
45
               
46
                while (result.next()) {
47
                        ICrs crs = null;
48
                        int cod = result.getInt("COORD_REF_SYS_CODE");
49
                        try {
50
                                
51
                                        crs = new CrsFactory().getCRS("EPSG:"+cod);
52
                                        if (crs instanceof CrsGT) {
53
//                                                //continue;
54
                                                if (crs.getProj4String() == null){
55
                                                        bw.write("C?digo: "+cod+"\tNombre: "+result.getString("COORD_REF_SYS_NAME")+"\n");
56
                                                bw.write("Cadena WKT: "+crs.getWKT()+"\n");
57
                                                bw.write("Cadena Proj4: No cadena proj4 \n");
58
                                                bw.write("Fallo: Fallo generando en cadena proj4 \n");                                
59
                                                bw.write("\n\n");
60
                                                }
61
                                        }                                                
62
                                        else {
63
                                                if (crs != null) {
64
                                                        bw.write("C?digo: "+cod+"\tNombre: "+result.getString("COORD_REF_SYS_NAME")+"\n");
65
                                                bw.write("Cadena WKT: "+crs.getWKT()+"\n");
66
                                                bw.write("Cadena Proj4: "+crs.getProj4String()+"\n");
67
                                                bw.write("Fallo: Creado con crs antiguo \n");                                
68
                                                bw.write("\n\n");
69
                                                }
70
                                                else {
71
                                                        bw.write("C?digo: "+cod+"\tNombre: "+result.getString("COORD_REF_SYS_NAME")+"\n");
72
                                                        bw.write("Fallo: Falla tanto geotools como crs antiguo \n");                                
73
                                                bw.write("\n\n");
74
                                                }
75
                                        
76
                                        }
77
                                                
78
                                        
79
                                } catch (CrsException e) {
80
                                        bw.write("C?digo: "+cod+"\tNombre: "+result.getString("COORD_REF_SYS_NAME")+"\n");
81
                                bw.write("Cadena WKT: No cadena wkt \n");
82
                                bw.write("Cadena Proj4: No cadena proj4\n");
83
                                bw.write("Fallo: "+e+" \n");                                
84
                                bw.write("\n\n");
85
                                } catch (NumberFormatException e) {
86
                                        bw.write("C?digo: "+cod+"\tNombre: "+result.getString("COORD_REF_SYS_NAME")+"\n");
87
                                bw.write("Cadena WKT: No cadena wkt \n");
88
                                bw.write("Cadena Proj4: No cadena proj4\n");
89
                                bw.write("Fallo: "+e+" \n");                                
90
                                bw.write("\n\n");
91
                                } catch (ConversionException e) {
92
                                        bw.write("C?digo: "+cod+"\tNombre: "+result.getString("COORD_REF_SYS_NAME")+"\n");
93
                                bw.write("Cadena WKT: No cadena wkt \n");
94
                                bw.write("Cadena Proj4: No cadena proj4\n");
95
                                bw.write("Fallo: "+e+" \n");                                
96
                                bw.write("\n\n");
97
                                }catch (UnformattableObjectException e) {                                        
98
                                }                                
99
                }
100
                        
101
                bw.flush();
102
                bw.close();
103
               
104
                } catch (SQLException e1) {
105
                        // TODO Auto-generated catch block
106
                        e1.printStackTrace();
107
                } catch (IOException e) {
108
                        // TODO Auto-generated catch block
109
                        e.printStackTrace();
110
                }        
111
        }
112
}