Changeset 2454
- Timestamp:
- 12/05/07 04:08:12 (13 months ago)
- Location:
- lang/actionscript/swfgmap/trunk
- Files:
-
- 3 added
- 4 modified
-
gyuque/gmap/GridHash.as (added)
-
gyuque/gmap/ViewportUpdater.as (modified) (3 diffs)
-
gyuque/gmap/googlemaps/GMapMapLayer.as (modified) (1 diff)
-
gyuque/gmap/googlemaps/GMapMapTile.as (modified) (2 diffs)
-
helper-js (added)
-
helper-js/getTileVer.js (added)
-
testapp.html (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
lang/actionscript/swfgmap/trunk/gyuque/gmap/ViewportUpdater.as
r2452 r2454 5 5 private var mCurViewport:GMapViewport = null; 6 6 private var mListener:IMeshMap; 7 private var mGHash:GridHash; 8 9 private var mReqQueue:XYQueue; 7 10 8 11 public function ViewportUpdater(listener:IMeshMap) 9 12 { 10 13 mListener = listener; 14 mGHash = new GridHash(); 11 15 } 12 16 … … 28 32 } 29 33 34 private function spread(tx:int, ty:int):void 35 { 36 checkAndLoad(tx , ty - 1); 37 checkAndLoad(tx + 1, ty ); 38 checkAndLoad(tx , ty + 1); 39 checkAndLoad(tx - 1, ty ); 40 } 41 42 private function checkAndLoad(tx:int, ty:int):void 43 { 44 if (!mGHash.peek(tx, ty)) 45 { 46 mGHash.poke(tx, ty, 1); 47 mListener.loadTile(tx, ty); 48 } 49 } 50 30 51 private function loadCenterTile():void 31 52 { … … 34 55 35 56 mListener.setTileOffset(tiledata.offset.x, tiledata.offset.y); 36 mListener.loadTile(tiledata.tile_index.x, tiledata.tile_index.y); 57 58 checkAndLoad(tiledata.tile_index.x, tiledata.tile_index.y); 59 spread(tiledata.tile_index.x, tiledata.tile_index.y); 37 60 } 38 61 } 39 62 } 63 64 class XYQueue 65 { 66 private var Xs:Array; 67 private var Ys:Array; 68 69 public function consume(out:Object):Boolean 70 { 71 if (Xs.length < 1) return false; 72 73 out.x = Xs.shift(); 74 out.y = Ys.shift(); 75 return true; 76 } 77 78 public function get empty():Boolean 79 { 80 return Xs.length < 1; 81 } 82 83 public function push(x:int, y:int):void 84 { 85 Xs.push(x); 86 Ys.push(y); 87 } 88 } -
lang/actionscript/swfgmap/trunk/gyuque/gmap/googlemaps/GMapMapLayer.as
r2452 r2454 45 45 var tile:GMapMapTile = new GMapMapTile(tx, ty, GMapCalc.calcMapsZoomIndex(mViewport.zoom)); 46 46 47 addChild(tile.loadTile()); 47 addChild(tile); 48 tile.loadTile(); 49 // addChild(tile.loadTile()); 48 50 49 51 var c:int = GMapCalc.TILE_SIZE/2; -
lang/actionscript/swfgmap/trunk/gyuque/gmap/googlemaps/GMapMapTile.as
r2429 r2454 3 3 import flash.display.*; 4 4 import flash.net.URLRequest; 5 6 import gyuque.gmap.*; 5 7 6 8 public class GMapMapTile extends Loader … … 10 12 { 11 13 var server_index:int = tx%4; 12 mTileURL = "http://mt"+server_index+".google.com/mt?n=404&v= w2.61&x="+tx+"&y="+ty+"&zoom="+z;14 mTileURL = "http://mt"+server_index+".google.com/mt?n=404&v=ap.63&x="+tx+"&y="+ty+"&zoom="+z; 13 15 } 14 16 15 17 public function loadTile():Loader 16 18 { 19 GMapView(stage.getChildAt(0)).puts(mTileURL); 17 20 var req:URLRequest = new URLRequest(mTileURL); 18 21 load(req); -
lang/actionscript/swfgmap/trunk/testapp.html
r2413 r2454 6 6 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 7 7 <title>TestApp</title> 8 <script src="http://maps.google.com/maps?file=api&v=2"></script> 9 <script src="./helper-js/getTileVer.js"></script> 8 10 </head> 9 11 <body>
![(please configure the [header_logo] section in trac.ini)](/share/chrome/site/your_project_logo.png)