/[projects]/dao/FuldDaekningWorker/src/dk/daoas/fulddaekning/LookupMain.java
ViewVC logotype

Diff of /dao/FuldDaekningWorker/src/dk/daoas/fulddaekning/LookupMain.java

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 2596 by torben, Sun Jun 14 16:42:08 2015 UTC revision 2597 by torben, Mon Jul 13 10:16:41 2015 UTC
# Line 6  import geocode.kdtree.KDTree; Line 6  import geocode.kdtree.KDTree;
6  import java.io.File;  import java.io.File;
7  import java.io.FileReader;  import java.io.FileReader;
8  import java.sql.SQLException;  import java.sql.SQLException;
9    import java.util.HashMap;
10  import java.util.List;  import java.util.List;
11    import java.util.Map;
12  import java.util.Set;  import java.util.Set;
13  import java.util.logging.FileHandler;  import java.util.logging.FileHandler;
14  import java.util.logging.Level;  import java.util.logging.Level;
# Line 35  public class LookupMain { Line 37  public class LookupMain {
37                    
38                    
39                    
40          private static List<GeoPoint> alleDaekkedeAdresser;          
41    
42                    
43                    
# Line 85  public class LookupMain { Line 87  public class LookupMain {
87                                    
88                  long start = System.currentTimeMillis();                  long start = System.currentTimeMillis();
89                                    
90                    int antalDaekkedeAdresser = -1;
91                    
92                  if (testRun == false) {                  if (testRun == false) {
93                                    
94                          logger.info("Finder postnumre");                          logger.info("Finder postnumre");
# Line 99  public class LookupMain { Line 103  public class LookupMain {
103                                                    
104    
105                          logger.info("Henter alle daekkede adresser");                          logger.info("Henter alle daekkede adresser");
106                          alleDaekkedeAdresser = db.hentAlleDaekkedeAdresser();                          antalDaekkedeAdresser = db.hentAlleDaekkedeAdresser();
107                          logger.info( "AlleDaekkedeAdresser.length=" + alleDaekkedeAdresser.size());                          logger.info( "AlleDaekkedeAdresser.length=" + antalDaekkedeAdresser );
108                                                    
109                          KDTree<GeoPoint> addressTree = new KDTree<GeoPoint>(alleDaekkedeAdresser);                          Map<Short, List<GeoPoint>> addrHoList = db.getDaekkedeAdresserHO();
110                            
111                            Map<Short, KDTree<GeoPoint>> hoTrees = new HashMap<Short,KDTree<GeoPoint>>();
112                            
113                            for ( Map.Entry<Short, List<GeoPoint>> entry : addrHoList.entrySet() ) {
114                                    short ho = entry.getKey();
115                                    List<GeoPoint> geopoints = entry.getValue();
116                                    
117                                    logger.info("Opbygger KDTree for " + ho + " - antal=" + geopoints.size() );
118                                    KDTree<GeoPoint> addressTree = new KDTree<GeoPoint>( geopoints );
119                                    hoTrees.put(ho, addressTree);                          
120                            }
121                                                    
122                          db.resetResultTable();                          db.resetResultTable();
123                                    
# Line 113  public class LookupMain { Line 128  public class LookupMain {
128                                                    
129                          for (Adresse qAdresse : ikkeDaekkede) {                          for (Adresse qAdresse : ikkeDaekkede) {
130                                                                    
131                                    short ho = qAdresse.ho;
132                                    KDTree<GeoPoint> addressTree = hoTrees.get(ho);
133                                                                    
134                                  LookupResult result = new LookupResult();                                  LookupResult result = new LookupResult();
135                                  result.bedsteAdr = (Adresse) addressTree.findNearest(qAdresse);                                  result.bedsteAdr = (Adresse) addressTree.findNearest(qAdresse);
# Line 173  public class LookupMain { Line 190  public class LookupMain {
190                                    
191    
192                  logger.info("Fuld load done : " + formatMilliSeconds(elapsed) );                  logger.info("Fuld load done : " + formatMilliSeconds(elapsed) );
193                  logger.info("Antal daekkede : " + alleDaekkedeAdresser.size() );                  logger.info("Antal daekkede : " + antalDaekkedeAdresser );
194                  logger.info("Antal ikke-daekkede : " + ikkeDaekkede.length );                  logger.info("Antal ikke-daekkede : " + ikkeDaekkede.length );
195                  logger.info("Heraf, antal fundne : " + antalFundne );                  logger.info("Heraf, antal fundne : " + antalFundne );
196                  logger.info("Fandt adresser til : " + (antalFundne*100.0)/ikkeDaekkede.length + "%" );                  logger.info("Fandt adresser til : " + (antalFundne*100.0)/ikkeDaekkede.length + "%" );

Legend:
Removed from v.2596  
changed lines
  Added in v.2597

  ViewVC Help
Powered by ViewVC 1.1.20