/* RequireJS 2.1.20 Copyright (c) 2010-2015, The Dojo Foundation All Rights Reserved. Available via the MIT or new BSD license. see: http://github.com/jrburke/requirejs for details */ var requirejs,require,define; (function(v){function k(f){return"[object Function]"===aa.call(f)}function q(f){return"[object Array]"===aa.call(f)}function f(f,p){if(f){var t;for(t=0;tthis.depCount&&!this.defined){if(k(x)){if(this.events.error&&this.map.isDefine||F.onError!== z)try{w=O.execCb(q,x,p,w)}catch(A){f=A}else w=O.execCb(q,x,p,w);this.map.isDefine&&void 0===w&&((p=this.module)?w=p.exports:this.usingExports&&(w=this.exports));if(f)return f.requireMap=this.map,f.requireModules=this.map.isDefine?[this.map.id]:null,f.requireType=this.map.isDefine?"define":"require",T(this.error=f)}else w=x;this.exports=w;if(this.map.isDefine&&!this.ignore&&(W[q]=w,F.onResourceLoad))F.onResourceLoad(O,this.map,this.depMaps);U(q);this.defined=!0}this.defining=!1;this.defined&&!this.defineEmitted&& (this.defineEmitted=!0,this.emit("defined",this.exports),this.defineEmitComplete=!0)}}},callPlugin:function(){var f=this.map,p=f.id,k=I(f.prefix);this.depMaps.push(k);Q(k,"defined",D(this,function(k){var q,A;A=w(qa,this.map.id);var v=this.map.name,z=this.map.parentMap?this.map.parentMap.name:null,C=O.makeRequire(f.parentMap,{enableBuildCallback:!0});if(this.map.unnormalized){if(k.normalize&&(v=k.normalize(v,function(f){return E(f,z,!0)})||""),k=I(f.prefix+"!"+v,this.map.parentMap),Q(k,"defined",D(this, function(f){this.init([],function(){return f},null,{enabled:!0,ignore:!0})})),A=w(V,k.id)){this.depMaps.push(k);if(this.events.error)A.on("error",D(this,function(f){this.emit("error",f)}));A.enable()}}else A?(this.map.url=O.nameToUrl(A),this.load()):(q=D(this,function(f){this.init([],function(){return f},null,{enabled:!0})}),q.error=D(this,function(f){this.inited=!0;this.error=f;f.requireModules=[p];x(V,function(f){0===f.map.id.indexOf(p+"_unnormalized")&&U(f.map.id)});T(f)}),q.fromText=D(this,function(k, w){var x=f.name,A=I(x),v=ha;w&&(k=w);v&&(ha=!1);L(A);t(R.config,p)&&(R.config[x]=R.config[p]);try{F.exec(k)}catch(D){return T(B("fromtexteval","fromText eval for "+p+" failed: "+D,D,[p]))}v&&(ha=!0);this.depMaps.push(A);O.completeLoad(x);C([x],q)}),k.load(f.name,C,q,R))}));O.enable(k,this);this.pluginMaps[k.id]=k},enable:function(){la[this.map.id]=this;this.enabling=this.enabled=!0;f(this.depMaps,D(this,function(f,p){var k,q;if("string"===typeof f){f=I(f,this.map.isDefine?this.map:this.map.parentMap, !1,!this.skipMap);this.depMaps[p]=f;if(k=w(ga,f.id)){this.depExports[p]=k(this);return}this.depCount+=1;Q(f,"defined",D(this,function(f){this.undefed||(this.defineDep(p,f),this.check())}));this.errback?Q(f,"error",D(this,this.errback)):this.events.error&&Q(f,"error",D(this,function(f){this.emit("error",f)}))}k=f.id;q=V[k];t(ga,k)||!q||q.enabled||O.enable(f,this)}));x(this.pluginMaps,D(this,function(f){var p=w(V,f.id);p&&!p.enabled&&O.enable(f,this)}));this.enabling=!1;this.check()},on:function(f, p){var t=this.events[f];t||(t=this.events[f]=[]);t.push(p)},emit:function(p,t){f(this.events[p],function(f){f(t)});"error"===p&&delete this.events[p]}};O={config:R,contextName:J,registry:V,defined:W,urlFetched:ka,defQueue:ba,defQueueMap:{},Module:oa,makeModuleMap:I,nextTick:F.nextTick,onError:T,configure:function(p){p.baseUrl&&"/"!==p.baseUrl.charAt(p.baseUrl.length-1)&&(p.baseUrl+="/");var t=R.shim,k={paths:!0,bundles:!0,config:!0,map:!0};x(p,function(f,p){k[p]?(R[p]||(R[p]={}),A(R[p],f,!0,!0)): R[p]=f});p.bundles&&x(p.bundles,function(p,t){f(p,function(f){f!==t&&(qa[f]=t)})});p.shim&&(x(p.shim,function(f,p){q(f)&&(f={deps:f});!f.exports&&!f.init||f.exportsFn||(f.exportsFn=O.makeShimExports(f));t[p]=f}),R.shim=t);p.packages&&f(p.packages,function(f){var p;f="string"===typeof f?{name:f}:f;p=f.name;f.location&&(R.paths[p]=f.location);R.pkgs[p]=f.name+"/"+(f.main||"main").replace(ra,"").replace(Z,"")});x(V,function(f,p){f.inited||f.map.unnormalized||(f.map=I(p,null,!0))});(p.deps||p.callback)&& O.require(p.deps||[],p.callback)},makeShimExports:function(f){return function(){var p;f.init&&(p=f.init.apply(v,arguments));return p||f.exports&&C(f.exports)}},makeRequire:function(f,q){function x(p,w,A){var v,D;q.enableBuildCallback&&w&&k(w)&&(w.__requireJsBuild=!0);if("string"===typeof p){if(k(w))return T(B("requireargs","Invalid require call"),A);if(f&&t(ga,p))return ga[p](V[f.id]);if(F.get)return F.get(O,p,f,x);v=I(p,f,!1,!0);v=v.id;return t(W,v)?W[v]:T(B("notloaded",'Module name "'+v+'" has not been loaded yet for context: '+ J+(f?"":". Use require([])")))}fa();O.nextTick(function(){fa();D=L(I(null,f));D.skipMap=q.skipMap;D.init(p,w,A,{enabled:!0});da()});return x}q=q||{};A(x,{isBrowser:M,toUrl:function(p){var t,k=p.lastIndexOf("."),q=p.split("/")[0];-1!==k&&("."!==q&&".."!==q||1q.attachEvent.toString().indexOf("[native code")||S?(q.addEventListener("load",f.onScriptLoad,!1),q.addEventListener("error", f.onScriptError,!1)):(ha=!0,q.attachEvent("onreadystatechange",f.onScriptLoad));q.src=t;U=q;L?J.insertBefore(q,L):J.appendChild(q);U=null;return q}if(ja)try{importScripts(t),f.completeLoad(p)}catch(w){f.onError(B("importscripts","importScripts failed for "+p+" at "+t,w,[p]))}};M&&!T.skipDataMain&&p(document.getElementsByTagName("script"),function(f){J||(J=f.parentNode);if(N=f.getAttribute("data-main"))return I=N,T.baseUrl||(Q=I.split("/"),I=Q.pop(),Y=Q.length?Q.join("/")+"/":"./",T.baseUrl=Y),I=I.replace(Z, ""),F.jsExtRegExp.test(I)&&(I=N),T.deps=T.deps?T.deps.concat(I):[I],!0});define=function(f,p,t){var w,x;"string"!==typeof f&&(t=p,p=f,f=null);q(p)||(t=p,p=null);!p&&k(t)&&(p=[],t.length&&(t.toString().replace(da,"").replace(ea,function(f,t){p.push(t)}),p=(1===t.length?["require"]:["require","exports","module"]).concat(p)));ha&&(w=U||G())&&(f||(f=w.getAttribute("data-requiremodule")),x=ca[w.getAttribute("data-requirecontext")]);x?(x.defQueue.push([f,p,t]),x.defQueueMap[f]=!0):ia.push([f,p,t])};define.amd= {jQuery:!0};F.exec=function(f){return eval(f)};F(T)}})(this);define("../ThirdParty/requirejs-2.1.20/require",function(){}); define("scene/GwUnderground.js",[],function(){function v(k,q){this._earthCtrl=k;this.coreMap=k.coreMap;var f=Geoworld.defaultValue(q,{});this._depth=Geoworld.defaultValue(f.depth,5E3);this._alpha=Geoworld.defaultValue(f.alpha,0.5);this.enable=Geoworld.defaultValue(f.enable,!1)}v.prototype._updateImageryLayersAlpha=function(k){this.coreMap.scene.globe.baseColor.withAlpha(k);for(var q=this._earthCtrl.imageryLayers._layers,f=0,p=q.length;fGeoworld.Cartesian2.distance(k,this.mMousePrevPoint)||(this.mLeftButtonDown&&this.onLButtonDrag(k)&&(this.mMousePrevPoint=k,this.mLeftButtonDrag=!0),this.mMidButtonDown&&this.onMButtonDrag(k)&&(this.mMousePrevPoint= k,this.mMidButtonDrag=!0),this.mRightButtonDown&&this.onRButtonDrag(k)&&(this.mMousePrevPoint=k,this.mRightButtonDrag=!0),this.mMousePrevPoint=k)},onMouseWheel:function(k,q){},onKeyDown:function(k){},onKeyUp:function(k){},calculateLength:function(k,q){for(var f=0,p=k.length,t=0;tthis._camera.positionCartographic.height)||this._camera.zoomIn(f)};q.prototype.zoomOut=function(f){this._camera.zoomOut(f)};q.prototype.zoom=function(f){};q.prototype.moveHeading=function(f){f=Geoworld.defaultValue(f,1);f=Geoworld.Math.toDegrees(this._coreMap.camera.heading)+f;var t=this._coreMap.camera.pitch;this._coreMap.camera.setView({orientation:{heading:Geoworld.Math.toRadians(f),pitch:t,endTransform:Geoworld.Matrix4.IDENTITY}})}; q.prototype.pickFromRay=function(f,t,k){f=this._camera.getPickRay(f);t=this._coreMap.scene.pickFromRay(f,t,k);return Geoworld.defined(t)?t.position:void 0};q.prototype.flyTo=function(f,t,k,q,A,v,z,C){this._camera.flyTo({destination:Geoworld.Cartesian3.fromDegrees(f,t,k),orientation:{heading:Geoworld.Math.toRadians(q),pitch:Geoworld.Math.toRadians(A),roll:Geoworld.Math.toRadians(v)},duration:z,complete:C})};q.prototype.flyToTarget=function(f,t,k,q,A,v,z,C,B){this._camera.flyTo({destination:Geoworld.Cartesian3.fromDegrees(f, t,k),orientation:{heading:Geoworld.Math.toRadians(q),pitch:Geoworld.Math.toRadians(A),roll:Geoworld.Math.toRadians(v)},duration:C})};var f=new Geoworld.BoundingSphere;q.prototype.getPoseByData=function(p,t,k,q,A){var v=!1;if(0==p.length)return v;for(var z=new Geoworld.BoundingSphere,C=0;Cf&&(f=1.5);this._coreMap.scene.screenSpaceCameraController.defaultGroundRoamingHeight=f}},undergroundMode:{get:function(){return this._undergroundMode},set:function(f){(this._undergroundMode=f)?this.underground.activate():this.underground.disable()}},imageryLayeralpha:{get:function(){return this.underground.alpha}, set:function(f){this.underground.alpha=f}},position:{get:function(){var f=Geoworld.Cartographic.fromCartesian(this._camera.position);f.longitude=Geoworld.Math.toDegrees(f.longitude);f.latitude=Geoworld.Math.toDegrees(f.latitude);return f}},heading:{get:function(){return Geoworld.Math.toDegrees(this._camera.heading)}},pitch:{get:function(){return Geoworld.Math.toDegrees(this._camera.pitch)}},roll:{get:function(){return Geoworld.Math.toDegrees(this._camera.roll)}}});return q}); define("../Interface/Tools/GwTool.js",[],function(){new Geoworld.Ray;new Geoworld.Cartesian3;new Geoworld.Cartesian3;var v=Class.extend({__init__:function(){this.mCoreMap=this.mEarthCtrl=null;this.name="Tool";this.mEnable=!0;this.mRightButtonDrag=this.mMidButtonDrag=this.mLeftButtonDrag=this.mAltDown=this.mCtrlDown=this.mShiftDown=this.mRightButtonDown=this.mMidButtonDown=this.mLeftButtonDown=!1;this.mLastMouseDownTime=0;this.mCallback=null},initialize:function(k,q,f){this.mEarthCtrl=k;this.mCoreMap= k.coreMap;this.mCallback=q;this.mEnable=void 0!==f?f:!0;this.mRenderObjectSet={}},destory:function(){},clearResult:function(){},onActive:function(){this.mEnable=!0},onDeactive:function(){this.mEnable=!1;Geoworld.defined(this.mPoly)&&this.mPoly.destory()},onInputMessage:function(k){if(!1!==this.mEnable){var q=new Geoworld.Cartesian2(k.offsetX,k.offsetY);"pointerdown"===k.type?(0===k.button?this.onLButtonDown&&this.onLButtonDown(q):1===k.button?this.onMButtonDown&&this.onMButtonDown(q):2===k.button&& this.onRButtonDown&&this.onRButtonDown(q),this.mLastMouseDownTime=k.timeStamp):"pointerup"===k.type?0===k.button?this.onLButtonUp&&this.onLButtonUp(q):1===k.button?this.onMButtonUp&&this.onMButtonUp(q):2===k.button&&this.onRButtonUp&&this.onRButtonUp(q):"pointermove"===k.type&&this.onMouseMove&&this.onMouseMove(q)}},onLButtonDown:function(k){this.mMouseDownPoint=this.mMousePrevPoint=k;this.mLeftButtonDown=!0},onLButtonUp:function(k){this.mLeftButtonDown=!1;return this.mLeftButtonDrag?this.mLeftButtonDrag= !1:!0},onLButtonDoubeClick:function(k){this.mMouseDownPoint=this.mMousePrevPoint=k},onLButtonDrag:function(k){return!0},onMButtonDown:function(k){this.mMouseDownPoint=this.mMousePrevPoint=k;this.mMidButtonDown=!0},onMButtonUp:function(k){this.mMidButtonDown=!1;return this.mMidButtonDrag?this.mMidButtonDrag=!1:!0},onMButtonDoubeClick:function(k){this.mMouseDownPoint=this.mMousePrevPoint=k},onMButtonDrag:function(k){return!0},onRButtonDown:function(k){this.mMouseDownPoint=this.mMousePrevPoint=k;this.mRightButtonDown= !0},onRButtonUp:function(k){this.mRightButtonDown=!1;return this.mRightButtonDrag?this.mRightButtonDrag=!1:!0},onRButtonDoubeClick:function(k){this.mMouseDownPoint=this.mMousePrevPoint=k},onRButtonDrag:function(k){return!0},onMouseMove:function(k){!1===this.mLeftButtonDown&&!1===this.mMidButtonDown&&!1===this.mRightButtonDown?this.mMousePrevPoint=k:10>Geoworld.Cartesian2.distance(k,this.mMousePrevPoint)||(this.mLeftButtonDown&&this.onLButtonDrag(k)&&(this.mMousePrevPoint=k,this.mLeftButtonDrag=!0), this.mMidButtonDown&&this.onMButtonDrag(k)&&(this.mMousePrevPoint=k,this.mMidButtonDrag=!0),this.mRightButtonDown&&this.onRButtonDrag(k)&&(this.mMousePrevPoint=k,this.mRightButtonDrag=!0),this.mMousePrevPoint=k)},onMouseWheel:function(k,q){},onKeyDown:function(k){},onKeyUp:function(k){},calculateLength:function(k,q){for(var f=0,p=k.length,t=0;t