diff --git a/README.md b/README.md index c0d8a28..ae4c0f7 100644 --- a/README.md +++ b/README.md @@ -31,7 +31,7 @@ Demo: https://ispring.github.io/WebGlobe/index.html - bundle用于将TypeScript版本的模块打包成一个JavaScript压缩文件 - build用于执行以上所有的task - 6. 通过index-src.html可以加载AMD格式的源码,方便调试;通过index-bundle.html可以加载打打包压缩后的JavaScript文件,减少了网络请求数量,减少了文件体积,用于生产环境。 + 6. 通过index-src.html可以加载AMD格式的源码,方便调试;通过index-bundle.html可以加载打打包压缩后的JavaScript文件,减少了文件体积和网络请求数量,用于生产环境。 diff --git a/src/world/ArcGISTiledLayer.ts b/src/world/ArcGISTiledLayer.ts index a47e4bf..c410716 100644 --- a/src/world/ArcGISTiledLayer.ts +++ b/src/world/ArcGISTiledLayer.ts @@ -8,9 +8,8 @@ class ArcGISTiledLayer extends TiledLayer{ } getImageUrl(level: number, row: number, column: number) { - //使用代理 var url = Kernel.proxy + "?" + this.url + "/tile/" + level + "/" + row + "/" + column; - return url; + return this.wrapUrlWithProxy(url); } } diff --git a/src/world/AutonaviTiledLayer.ts b/src/world/AutonaviTiledLayer.ts index d84ee9d..dbb797f 100644 --- a/src/world/AutonaviTiledLayer.ts +++ b/src/world/AutonaviTiledLayer.ts @@ -7,8 +7,8 @@ class AutonaviTiledLayer extends TiledLayer{ //使用代理 var sum = level + row + column; var serverIdx = 1 + sum % 4; //1、2、3、4 - var url = Kernel.proxy + "?//webrd0" + serverIdx + ".is.autonavi.com/appmaptile?x=" + column + "&y=" + row + "&z=" + level + "&lang=zh_cn&size=1&scale=1&style=8"; - return url; + var url = "//webrd0" + serverIdx + ".is.autonavi.com/appmaptile?x=" + column + "&y=" + row + "&z=" + level + "&lang=zh_cn&size=1&scale=1&style=8"; + return this.wrapUrlWithProxy(url); } } diff --git a/src/world/PerspectiveCamera.ts b/src/world/PerspectiveCamera.ts index 7baa8d8..2d90c33 100644 --- a/src/world/PerspectiveCamera.ts +++ b/src/world/PerspectiveCamera.ts @@ -301,7 +301,6 @@ class PerspectiveCamera extends Object3D { var deltaY = (newPosition.y - oldPosition.y) / count; var deltaZ = (newPosition.z - oldPosition.z) / count; var start:number = -1; - console.time("animating"); var callback = (timestap: number) => { if(start < 0){ start = timestap; @@ -311,7 +310,6 @@ class PerspectiveCamera extends Object3D { this.matrix = newMat; this.animating = false; cb(); - console.timeEnd("animating"); }else{ var p = this.getPosition(); this.setPosition(p.x + deltaX, p.y + deltaY, p.z + deltaZ); diff --git a/src/world/Renderer.ts b/src/world/Renderer.ts index b051c84..317b9fb 100644 --- a/src/world/Renderer.ts +++ b/src/world/Renderer.ts @@ -1,4 +1,4 @@ -/// +/// import Kernel = require("./Kernel"); import EventUtils = require("./Event"); import Scene = require("./Scene"); diff --git a/src/world/SubTiledLayer.ts b/src/world/SubTiledLayer.ts index eefcdae..c9ca3fa 100644 --- a/src/world/SubTiledLayer.ts +++ b/src/world/SubTiledLayer.ts @@ -40,13 +40,13 @@ class SubTiledLayer extends Object3DComponents { } //调用其父的getImageUrl - getImageUrl(level: number, row: number, column: number) { - var url = ""; - if (this.tiledLayer) { - url = this.tiledLayer.getImageUrl(level, row, column); - } - return url; - } + // getImageUrl(level: number, row: number, column: number) { + // var url = ""; + // if (this.tiledLayer) { + // url = this.tiledLayer.getImageUrl(level, row, column); + // } + // return url; + // } //重写Object3DComponents的destroy方法 destroy() { diff --git a/src/world/TiledLayer.ts b/src/world/TiledLayer.ts index 7d2e1d5..598f676 100644 --- a/src/world/TiledLayer.ts +++ b/src/world/TiledLayer.ts @@ -1,19 +1,25 @@ /// +import Kernel = require('./Kernel'); import Object3DComponents = require('./Object3DComponents'); import SubTiledLayer = require('./SubTiledLayer'); -class TiledLayer extends Object3DComponents { +abstract class TiledLayer extends Object3DComponents { //重写 add(subTiledLayer: SubTiledLayer) { super.add(subTiledLayer); subTiledLayer.tiledLayer = this; } - //根据切片的层级以及行列号获取图片的url,抽象方法,供子类实现 - getImageUrl(level: number, row: number, column: number) { - return ""; + protected wrapUrlWithProxy(url: string): string{ + if(Kernel.proxy){ + return Kernel.proxy + "?" + url; + } + return url; } + //根据切片的层级以及行列号获取图片的url,抽象方法,供子类实现 + abstract getImageUrl(level: number, row: number, column: number): string + //根据传入的level更新SubTiledLayer的数量 updateSubLayerCount(level: number) { var subLayerCount = this.children.length;