| 
									
										
										
										
											2016-07-26 00:42:53 -04:00
										 |  |  | 'use strict'; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | var S2 = require('../src/s2geometry.js').S2; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | var level = 15; | 
					
						
							| 
									
										
										
										
											2016-07-28 00:37:43 -04:00
										 |  |  | 
 | 
					
						
							|  |  |  | // Provo, UT (Center St)
 | 
					
						
							|  |  |  | // '9749618446378729472' '4/032212303102210' '40.256312,-111.709298' 15
 | 
					
						
							|  |  |  | //                        4/032212303102210
 | 
					
						
							|  |  |  | //var lat = 40.2574448;
 | 
					
						
							|  |  |  | //var lng = -111.7089464;
 | 
					
						
							|  |  |  | var latlng = { lat: 40.256312, lng: -111.709298 }; | 
					
						
							|  |  |  | var cell = S2.S2Cell.FromLatLng(latlng, level); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | console.log(cell.toHilbertQuadkey(), '4/032212303102210' === cell.toHilbertQuadkey()); | 
					
						
							|  |  |  | console.log(cell.getLatLng(), '40.256312,-111.709298' === cell.getLatLng(), '40.256312,-111.709298'); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // Startup Building in Provo
 | 
					
						
							|  |  |  | // '9749615171466166272' '4/032212302322233' '40.226063,-111.664582' 15
 | 
					
						
							|  |  |  | //                        4/032212302322233
 | 
					
						
							|  |  |  | //var lat = 40.2262363;
 | 
					
						
							|  |  |  | //var lng = -111.6630927;
 | 
					
						
							|  |  |  | var latlng = { lat: 40.226063, lng: -111.664582 }; | 
					
						
							| 
									
										
										
										
											2016-07-26 00:42:53 -04:00
										 |  |  | var cell = S2.S2Cell.FromLatLng(latlng, level); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-07-28 00:37:43 -04:00
										 |  |  | console.log(cell.toHilbertQuadkey(), '4/032212302322233' === cell.toHilbertQuadkey()); | 
					
						
							|  |  |  | console.log(cell.getLatLng(), '40.226063,-111.664582' === cell.getLatLng(), '40.226063,-111.664582'); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | /* | 
					
						
							| 
									
										
										
										
											2016-07-26 00:42:53 -04:00
										 |  |  | cell.getNeighbors();  // [ cellLeft, cellDown, cellRight, cellUp ]
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | latlng = cell.getLatLng();     // { lat: 40.2574448, lng: -111.7089464 }
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-07-28 00:37:43 -04:00
										 |  |  | console.log(orig); | 
					
						
							|  |  |  | console.log(latlng); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-07-26 00:42:53 -04:00
										 |  |  | if (40 === Math.round(latlng.lat) && -112 === Math.round(latlng.lng)) { | 
					
						
							|  |  |  |   console.log('OK'); | 
					
						
							|  |  |  |   process.exit(0); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | else { | 
					
						
							|  |  |  |   console.log('[ERROR] latitude and longitude were not the expected values:'); | 
					
						
							|  |  |  |   console.log(latlng); | 
					
						
							|  |  |  |   process.exit(1); | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2016-07-28 00:37:43 -04:00
										 |  |  | */ |