11import Kernel = require( "./Kernel" ) ;
22import Utils = require( "./Utils" ) ;
3- import LocationService , { LocationData } from "./LocationService" ;
3+ import LocationService , { LocationData } from "./LocationService" ;
44import Renderer = require( "./Renderer" ) ;
55import Camera , { CameraCore } from "./Camera" ;
66import Scene = require( "./Scene" ) ;
77import ImageUtils = require( "./Image" ) ;
88import EventHandler = require( "./EventHandler" ) ;
99import TiledLayer = require( "./layers/TiledLayer" ) ;
10- import { GoogleTiledLayer , GoogleLabelLayer } from "./layers/Google" ;
11- import { AutonaviTiledLayer , AutonaviLabelLayer } from "./layers/Autonavi" ;
10+ import { GoogleTiledLayer , GoogleLabelLayer } from "./layers/Google" ;
11+ import { AutonaviTiledLayer , AutonaviLabelLayer } from "./layers/Autonavi" ;
1212import LabelLayer from "./layers/LabelLayer" ;
1313import TrafficLayer from "./layers/TrafficLayer" ;
14- import { QihuTrafficLayer } from "./layers/Qihu" ;
14+ import { QihuTrafficLayer } from "./layers/Qihu" ;
1515import Atmosphere = require( "./graphics/Atmosphere" ) ;
1616import PoiLayer = require( "./layers/PoiLayer" ) ;
1717
@@ -32,12 +32,12 @@ class Globe {
3232 private lastRefreshTimestamp : number = - 1 ;
3333 private lastRefreshCameraCore : CameraCore = null ;
3434 private eventHandler : EventHandler = null ;
35- private allRefreshCount :number = 0 ;
36- private realRefreshCount :number = 0 ;
37- private beforeRenderCallbacks :RenderCallback [ ] = [ ] ;
38- private afterRenderCallbacks :RenderCallback [ ] = [ ] ;
35+ private allRefreshCount : number = 0 ;
36+ private realRefreshCount : number = 0 ;
37+ private beforeRenderCallbacks : RenderCallback [ ] = [ ] ;
38+ private afterRenderCallbacks : RenderCallback [ ] = [ ] ;
3939
40- constructor ( private canvas : HTMLCanvasElement , level :number = initLevel , lonlat : number [ ] = [ 116.3975 , 39.9085 ] ) {
40+ constructor ( private canvas : HTMLCanvasElement , level : number = initLevel , lonlat : number [ ] = [ 116.3975 , 39.9085 ] ) {
4141 Kernel . globe = this ;
4242 Kernel . canvas = canvas ;
4343 this . renderer = new Renderer ( canvas , this . _onBeforeRender . bind ( this ) , this . _onAfterRender . bind ( this ) ) ;
@@ -75,39 +75,36 @@ class Globe {
7575 // });
7676 // }
7777
78- // if(Utils.isMobile()){
79- // Utils.subscribe('location', (data:LocationData) => {
80- // console.log(data);
81- // this.afterRenderCallbacks.push(() => {
82- // this.showLocation(data);
83- // });
84- // });
85- // LocationService.getRobustLocation();
86- // LocationService.getLocation();
87- // LocationService.watchPosition();
88- // }
78+ Utils . subscribe ( 'location' , ( data : LocationData ) => {
79+ console . info ( data ) ;
80+ this . afterRenderCallbacks . push ( ( ) => {
81+ this . showLocation ( data ) ;
82+ } ) ;
83+ } ) ;
84+ LocationService . getRobustLocation ( ) ;
85+ LocationService . getLocation ( ) ;
86+ // LocationService.watchPosition();
8987 }
9088
91- showLocation ( locationData : LocationData ) {
89+ showLocation ( locationData : LocationData ) {
9290 var lon = locationData . lng ;
9391 var lat = locationData . lat ;
94- this . poiLayer . clear ( ) ;
95- this . poiLayer . addPoi ( lon , lat , "" , "" , "" , "" ) ;
92+ // this.poiLayer.clear();
93+ // this.poiLayer.addPoi(lon, lat, "", "", "", "");
9694 this . eventHandler . moveLonLatToCanvas ( lon , lat , this . canvas . width / 2 , this . canvas . height / 2 ) ;
9795 var accuracy = locationData . accuracy ;
98- var level :number = 8 ;
99- if ( accuracy <= 100 ) {
96+ var level : number = 8 ;
97+ if ( accuracy <= 100 ) {
10098 level = 16 ;
101- } else if ( accuracy <= 1000 ) {
99+ } else if ( accuracy <= 1000 ) {
102100 level = 13 ;
103- } else {
101+ } else {
104102 level = 11 ;
105103 }
106104 this . setLevel ( level ) ;
107105 }
108106
109107 setTiledLayer ( tiledLayer : TiledLayer ) {
110- // clearTimeout(this.idTimeOut);
111108 //在更换切片图层的类型时清空缓存的图片
112109 ImageUtils . clear ( ) ;
113110 if ( this . tiledLayer ) {
@@ -122,35 +119,35 @@ class Globe {
122119 this . refresh ( true ) ;
123120 }
124121
125- showLabelLayer ( ) {
126- if ( this . labelLayer ) {
122+ showLabelLayer ( ) {
123+ if ( this . labelLayer ) {
127124 this . labelLayer . visible = true ;
128125 }
129126 }
130127
131- hideLabelLayer ( ) {
132- if ( this . labelLayer ) {
128+ hideLabelLayer ( ) {
129+ if ( this . labelLayer ) {
133130 this . labelLayer . visible = false ;
134131 }
135132 }
136133
137- showTrafficLayer ( ) {
138- if ( this . trafficLayer ) {
134+ showTrafficLayer ( ) {
135+ if ( this . trafficLayer ) {
139136 this . trafficLayer . visible = true ;
140137 }
141138 }
142139
143- hideTrafficLayer ( ) {
144- if ( this . trafficLayer ) {
140+ hideTrafficLayer ( ) {
141+ if ( this . trafficLayer ) {
145142 this . trafficLayer . visible = false ;
146143 }
147144 }
148145
149- getLevel ( ) {
146+ getLevel ( ) {
150147 return this . camera . getLevel ( ) ;
151148 }
152149
153- zoomIn ( ) {
150+ zoomIn ( ) {
154151 this . setLevel ( this . getLevel ( ) + 1 ) ;
155152 }
156153
@@ -164,35 +161,34 @@ class Globe {
164161 return this . camera . isAnimating ( ) ;
165162 }
166163
167- animateToLevel ( level : number , cb ?: ( ) => void ) {
164+ animateToLevel ( level : number , cb ?: ( ) => void ) {
168165 if ( ! this . isAnimating ( ) ) {
169- if ( level < Kernel . MIN_LEVEL ) {
166+ if ( level < Kernel . MIN_LEVEL ) {
170167 level = Kernel . MIN_LEVEL ;
171168 }
172- if ( level > Kernel . MAX_LEVEL ) {
169+ if ( level > Kernel . MAX_LEVEL ) {
173170 level = Kernel . MAX_LEVEL ;
174171 }
175- // level = level > Kernel.MAX_LEVEL ? Kernel.MAX_LEVEL : level;
176172 if ( level !== this . getLevel ( ) ) {
177173 this . camera . animateToLevel ( level , cb ) ;
178174 }
179175 }
180176 }
181177
182- animateOut ( cb ?: ( ) => void ) {
178+ animateOut ( cb ?: ( ) => void ) {
183179 this . animateToLevel ( this . getLevel ( ) - 1 , cb ) ;
184180 }
185181
186- animateIn ( cb ?: ( ) => void ) {
182+ animateIn ( cb ?: ( ) => void ) {
187183 this . animateToLevel ( this . getLevel ( ) + 1 , cb ) ;
188184 }
189185
190- private _onBeforeRender ( renderer : Renderer ) {
186+ private _onBeforeRender ( renderer : Renderer ) {
191187 // this.beforeRenderCallbacks.forEach((callback) => callback());
192188 this . refresh ( ) ;
193189 }
194190
195- private _onAfterRender ( render : Renderer ) {
191+ private _onAfterRender ( render : Renderer ) {
196192 this . afterRenderCallbacks . forEach ( ( callback ) => callback ( ) ) ;
197193 this . afterRenderCallbacks = [ ] ;
198194 }
@@ -209,7 +205,7 @@ class Globe {
209205 // }, this.REFRESH_INTERVAL);
210206 // }
211207
212- logRefreshInfo ( ) {
208+ logRefreshInfo ( ) {
213209 console . log ( this . realRefreshCount , this . allRefreshCount , this . realRefreshCount / this . allRefreshCount ) ;
214210 }
215211
@@ -224,19 +220,19 @@ class Globe {
224220 return ;
225221 }
226222
227- if ( this . debugStopRefreshTiles ) {
223+ if ( this . debugStopRefreshTiles ) {
228224 return ;
229225 }
230-
226+
231227 var newCameraCore = this . camera . getCameraCore ( ) ;
232228 // var isNeedRefresh = force || !newCameraCore.equals(this.cameraCore);
233229 var isNeedRefresh = false ;
234- if ( force ) {
230+ if ( force ) {
235231 isNeedRefresh = true ;
236- } else {
237- if ( newCameraCore . equals ( this . lastRefreshCameraCore ) ) {
232+ } else {
233+ if ( newCameraCore . equals ( this . lastRefreshCameraCore ) ) {
238234 isNeedRefresh = false ;
239- } else {
235+ } else {
240236 isNeedRefresh = timestamp - this . lastRefreshTimestamp >= this . REFRESH_INTERVAL ;
241237 }
242238 }
@@ -254,18 +250,18 @@ class Globe {
254250
255251 var a = ! ! ( this . labelLayer && this . labelLayer . visible ) ;
256252 var b = ! ! ( this . trafficLayer && this . trafficLayer . visible ) ;
257- if ( a || b ) {
253+ if ( a || b ) {
258254 var lastLevelTileGrids = this . tiledLayer . getLastLevelVisibleTileGrids ( ) ;
259- if ( a ) {
255+ if ( a ) {
260256 this . labelLayer . updateTiles ( this . getLevel ( ) , lastLevelTileGrids ) ;
261257 }
262- if ( b ) {
258+ if ( b ) {
263259 this . trafficLayer . updateTiles ( this . getLevel ( ) , lastLevelTileGrids ) ;
264260 }
265261 }
266262 }
267263
268- getExtents ( level ?: number ) {
264+ getExtents ( level ?: number ) {
269265 return this . tiledLayer . getExtents ( level ) ;
270266 }
271267
0 commit comments