231 lines
201 KiB
JavaScript
231 lines
201 KiB
JavaScript
|
|
/**
|
||
|
|
* Cesium - https://github.com/AnalyticalGraphicsInc/cesium
|
||
|
|
*
|
||
|
|
* Copyright 2011-2017 Cesium Contributors
|
||
|
|
*
|
||
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||
|
|
* you may not use this file except in compliance with the License.
|
||
|
|
* You may obtain a copy of the License at
|
||
|
|
*
|
||
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||
|
|
*
|
||
|
|
* Unless required by applicable law or agreed to in writing, software
|
||
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||
|
|
* See the License for the specific language governing permissions and
|
||
|
|
* limitations under the License.
|
||
|
|
*
|
||
|
|
* Columbus View (Pat. Pend.)
|
||
|
|
*
|
||
|
|
* Portions licensed separately.
|
||
|
|
* See https://github.com/AnalyticalGraphicsInc/cesium/blob/master/LICENSE.md for full licensing details.
|
||
|
|
*/
|
||
|
|
/**
|
||
|
|
@license
|
||
|
|
mersenne-twister.js - https://gist.github.com/banksean/300494
|
||
|
|
|
||
|
|
Copyright (C) 1997 - 2002, Makoto Matsumoto and Takuji Nishimura,
|
||
|
|
All rights reserved.
|
||
|
|
|
||
|
|
Redistribution and use in source and binary forms, with or without
|
||
|
|
modification, are permitted provided that the following conditions
|
||
|
|
are met:
|
||
|
|
|
||
|
|
1. Redistributions of source code must retain the above copyright
|
||
|
|
notice, this list of conditions and the following disclaimer.
|
||
|
|
|
||
|
|
2. Redistributions in binary form must reproduce the above copyright
|
||
|
|
notice, this list of conditions and the following disclaimer in the
|
||
|
|
documentation and/or other materials provided with the distribution.
|
||
|
|
|
||
|
|
3. The names of its contributors may not be used to endorse or promote
|
||
|
|
products derived from this software without specific prior written
|
||
|
|
permission.
|
||
|
|
|
||
|
|
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||
|
|
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||
|
|
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||
|
|
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||
|
|
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||
|
|
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||
|
|
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||
|
|
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||
|
|
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||
|
|
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||
|
|
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||
|
|
*/
|
||
|
|
|
||
|
|
/**
|
||
|
|
@license
|
||
|
|
when.js - https://github.com/cujojs/when
|
||
|
|
|
||
|
|
MIT License (c) copyright B Cavalier & J Hann
|
||
|
|
|
||
|
|
* A lightweight CommonJS Promises/A and when() implementation
|
||
|
|
* when is part of the cujo.js family of libraries (http://cujojs.com/)
|
||
|
|
*
|
||
|
|
* Licensed under the MIT License at:
|
||
|
|
* http://www.opensource.org/licenses/mit-license.php
|
||
|
|
*
|
||
|
|
* @version 1.7.1
|
||
|
|
*/
|
||
|
|
|
||
|
|
/**
|
||
|
|
@license
|
||
|
|
sprintf.js from the php.js project - https://github.com/kvz/phpjs
|
||
|
|
Directly from https://github.com/kvz/phpjs/blob/master/functions/strings/sprintf.js
|
||
|
|
|
||
|
|
php.js is copyright 2012 Kevin van Zonneveld.
|
||
|
|
|
||
|
|
Portions copyright Brett Zamir (http://brett-zamir.me), Kevin van Zonneveld
|
||
|
|
(http://kevin.vanzonneveld.net), Onno Marsman, Theriault, Michael White
|
||
|
|
(http://getsprink.com), Waldo Malqui Silva, Paulo Freitas, Jack, Jonas
|
||
|
|
Raoni Soares Silva (http://www.jsfromhell.com), Philip Peterson, Legaev
|
||
|
|
Andrey, Ates Goral (http://magnetiq.com), Alex, Ratheous, Martijn Wieringa,
|
||
|
|
Rafa? Kukawski (http://blog.kukawski.pl), lmeyrick
|
||
|
|
(https://sourceforge.net/projects/bcmath-js/), Nate, Philippe Baumann,
|
||
|
|
Enrique Gonzalez, Webtoolkit.info (http://www.webtoolkit.info/), Carlos R.
|
||
|
|
L. Rodrigues (http://www.jsfromhell.com), Ash Searle
|
||
|
|
(http://hexmen.com/blog/), Jani Hartikainen, travc, Ole Vrijenhoek,
|
||
|
|
Erkekjetter, Michael Grier, Rafa? Kukawski (http://kukawski.pl), Johnny
|
||
|
|
Mast (http://www.phpvrouwen.nl), T.Wild, d3x,
|
||
|
|
http://stackoverflow.com/questions/57803/how-to-convert-decimal-to-hex-in-javascript,
|
||
|
|
Rafa? Kukawski (http://blog.kukawski.pl/), stag019, pilus, WebDevHobo
|
||
|
|
(http://webdevhobo.blogspot.com/), marrtins, GeekFG
|
||
|
|
(http://geekfg.blogspot.com), Andrea Giammarchi
|
||
|
|
(http://webreflection.blogspot.com), Arpad Ray (mailto:arpad@php.net),
|
||
|
|
gorthaur, Paul Smith, Tim de Koning (http://www.kingsquare.nl), Joris, Oleg
|
||
|
|
Eremeev, Steve Hilder, majak, gettimeofday, KELAN, Josh Fraser
|
||
|
|
(http://onlineaspect.com/2007/06/08/auto-detect-a-time-zone-with-javascript/),
|
||
|
|
Marc Palau, Martin
|
||
|
|
(http://www.erlenwiese.de/), Breaking Par Consulting Inc
|
||
|
|
(http://www.breakingpar.com/bkp/home.nsf/0/87256B280015193F87256CFB006C45F7),
|
||
|
|
Chris, Mirek Slugen, saulius, Alfonso Jimenez
|
||
|
|
(http://www.alfonsojimenez.com), Diplom@t (http://difane.com/), felix,
|
||
|
|
Mailfaker (http://www.weedem.fr/), Tyler Akins (http://rumkin.com), Caio
|
||
|
|
Ariede (http://caioariede.com), Robin, Kankrelune
|
||
|
|
(http://www.webfaktory.info/), Karol Kowalski, Imgen Tata
|
||
|
|
(http://www.myipdf.com/), mdsjack (http://www.mdsjack.bo.it), Dreamer,
|
||
|
|
Felix Geisendoerfer (http://www.debuggable.com/felix), Lars Fischer, AJ,
|
||
|
|
David, Aman Gupta, Michael White, Public Domain
|
||
|
|
(http://www.json.org/json2.js), Steven Levithan
|
||
|
|
(http://blog.stevenlevithan.com), Sakimori, Pellentesque Malesuada,
|
||
|
|
Thunder.m, Dj (http://phpjs.org/functions/htmlentities:425#comment_134018),
|
||
|
|
Steve Clay, David James, Francois, class_exists, nobbler, T. Wild, Itsacon
|
||
|
|
(http://www.itsacon.net/), date, Ole Vrijenhoek (http://www.nervous.nl/),
|
||
|
|
Fox, Raphael (Ao RUDLER), Marco, noname, Mateusz "loonquawl" Zalega, Frank
|
||
|
|
Forte, Arno, ger, mktime, john (http://www.jd-tech.net), Nick Kolosov
|
||
|
|
(http://sammy.ru), marc andreu, Scott Cariss, Douglas Crockford
|
||
|
|
(http://javascript.crockford.com), madipta, Slawomir Kaniecki,
|
||
|
|
ReverseSyntax, Nathan, Alex Wilson, kenneth, Bayron Guevara, Adam Wallner
|
||
|
|
(http://web2.bitbaro.hu/), paulo kuong, jmweb, Lincoln Ramsay, djmix,
|
||
|
|
Pyerre, Jon Hohle, Thiago Mata (http://thiagomata.blog.com), lmeyrick
|
||
|
|
(https://sourceforge.net/projects/bcmath-js/this.), Linuxworld, duncan,
|
||
|
|
Gilbert, Sanjoy Roy, Shingo, sankai, Oskar Larsson H?gfeldt
|
||
|
|
(http://oskar-lh.name/), Denny Wardhana, 0m3r, Everlasto, Subhasis Deb,
|
||
|
|
josh, jd, Pier Paolo Ramon (http://www.mastersoup.com/), P, merabi, Soren
|
||
|
|
Hansen, Eugene Bulkin (http://doubleaw.com/), Der Simon
|
||
|
|
(http://innerdom.sourceforge.net/), echo is bad, Ozh, XoraX
|
||
|
|
(http://www.xorax.info), EdorFaus, JB, J A R, Marc Jansen, Francesco, LH,
|
||
|
|
Stoyan Kyosev (http://www.svest.org/), nord_ua, omid
|
||
|
|
(http://phpjs.org/functions/380:380#comment_137122), Brad Touesnard, MeEtc
|
||
|
|
(http://yass.meetcweb.com), Peter-Paul Koch
|
||
|
|
(http://www.quirksmode.org/js/beat.html), Olivier Louvignes
|
||
|
|
(http://mg-crea.com/), T0bsn, Tim Wiel, Bryan Elliott, Jalal Berrami,
|
||
|
|
Martin, JT, David Randall, Thomas Beaucourt (http://www.webapp.fr), taith,
|
||
|
|
vlado houba, Pierre-Luc Paour, Kristof Coomans (SCK-CEN Belgian Nucleair
|
||
|
|
Research Centre), Martin Pool, Kirk Strobeck, Rick Waldron, Brant Messenger
|
||
|
|
(http://www.brantmessenger.com/), Devan Penner-Woelk, Saulo Vallory, Wagner
|
||
|
|
B. Soares, Artur Tchernychev, Valentina De Rosa, Jason Wong
|
||
|
|
(http://carrot.org/), Christoph, Daniel Esteban, strftime, Mick@el, rezna,
|
||
|
|
Simon Willison (http://simonwillison.net), Anton Ongson, Gabriel Paderni,
|
||
|
|
Marco van Oort, penutbutterjelly, Philipp Lenssen, Bjorn Roesbeke
|
||
|
|
(http://www.bjornroesbeke.be/), Bug?, Eric Nagel, Tomasz Wesolowski,
|
||
|
|
Evertjan Garretsen, Bobby Drake, Blues (http://tech.bluesmoon.info/), Luke
|
||
|
|
Godfrey, Pul, uestla, Alan C, Ulrich, Rafal Kukawski, Yves Sucaet,
|
||
|
|
sowberry, Norman "zEh" Fuchs, hitwork, Zahlii, johnrembo, Nick Callen,
|
||
|
|
Steven Levithan (stevenlevithan.com), ejsanders, Scott Baker, Brian Tafoya
|
||
|
|
(http://www.premasolutions.com/), Philippe Jausions
|
||
|
|
(http://pear.php.net/user/jausions), Aidan Lister
|
||
|
|
(http://aidanlister.com/), Rob, e-mike, HKM, ChaosNo1, metjay, strcasecmp,
|
||
|
|
strcmp, Taras Bogach, jpfle, Alexander Ermolaev
|
||
|
|
(http://snippets.dzone.com/user/AlexanderErmolaev), DxGx, kilops, Orlando,
|
||
|
|
dptr1988, Le Torbi, James (http://www.james-bell.co.uk/), Pedro Tainha
|
||
|
|
(http://www.pedrotainha.com), James, Arnout Kazemier
|
||
|
|
(http://www.3rd-Eden.com), Chris McMacken, gabriel paderni, Yannoo,
|
||
|
|
FGFEmperor, baris ozdil, Tod Gentille, Greg Frazier, jakes, 3D-GRAF, Allan
|
||
|
|
Jensen (http://www.winternet.no), Howard Yeend, Benjamin Lupton, davook,
|
||
|
|
daniel airton wermann (http://wermann.com.br), Atli T¨®r, Maximusya, Ryan
|
||
|
|
W Tenney (http://ryan.10e.us), Alexander M Beedie, fearphage
|
||
|
|
(http://http/my.opera.com/fearphage/), Nathan Sepulveda, Victor, Matteo,
|
||
|
|
Billy, stensi, Cord, Manish, T.J. Leahy, Riddler
|
||
|
|
(http://www.frontierwebdev.com/), Rafa? Kukawski, FremyCompany, Matt
|
||
|
|
Bradley, Tim de Koning, Luis Salazar (http://www.freaky-media.com/), Diogo
|
||
|
|
Resende, Rival, Andrej Pavlovic, Garagoth, Le Torbi
|
||
|
|
(http://www.letorbi.de/), Dino, Josep Sanz (http://www.ws3.es/), rem,
|
||
|
|
Russell Walker (http://www.nbill.co.uk/), Jamie Beck
|
||
|
|
(http://www.terabit.ca/), setcookie, Michael, YUI Library:
|
||
|
|
http://developer.yahoo.com/yui/docs/YAHOO.util.DateLocale.html, Blues at
|
||
|
|
http://hacks.bluesmoon.info/strftime/strftime.js, Ben
|
||
|
|
(http://benblume.co.uk/), DtTvB
|
||
|
|
(http://dt.in.th/2008-09-16.string-length-in-bytes.html), Andreas, William,
|
||
|
|
meo, incidence, Cagri Ekin, Amirouche, Amir Habibi
|
||
|
|
(http://www.residence-mixte.com/), Luke Smith (http://lucassmith.name),
|
||
|
|
Kheang Hok Chin (http://www.distantia.ca/), Jay Klehr, Lorenzo Pisani,
|
||
|
|
Tony, Yen-Wei Liu, Greenseed, mk.keck, Leslie Hoare, dude, booeyOH, Ben
|
||
|
|
Bryan
|
||
|
|
|
||
|
|
Licensed under the MIT (MIT-LICENSE.txt) license.
|
||
|
|
|
||
|
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||
|
|
copy of this software and associated documentation files (the
|
||
|
|
"Software"), to deal in the Software without restriction, including
|
||
|
|
without limitation the rights to use, copy, modify, merge, publish,
|
||
|
|
distribute, sublicense, and/or sell copies of the Software, and to
|
||
|
|
permit persons to whom the Software is furnished to do so, subject to
|
||
|
|
the following conditions:
|
||
|
|
|
||
|
|
The above copyright notice and this permission notice shall be included
|
||
|
|
in all copies or substantial portions of the Software.
|
||
|
|
|
||
|
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||
|
|
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||
|
|
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||
|
|
IN NO EVENT SHALL KEVIN VAN ZONNEVELD BE LIABLE FOR ANY CLAIM, DAMAGES
|
||
|
|
OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
||
|
|
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||
|
|
OTHER DEALINGS IN THE SOFTWARE.
|
||
|
|
*/
|
||
|
|
|
||
|
|
/**
|
||
|
|
* @license
|
||
|
|
*
|
||
|
|
* Grauw URI utilities
|
||
|
|
*
|
||
|
|
* See: http://hg.grauw.nl/grauw-lib/file/tip/src/uri.js
|
||
|
|
*
|
||
|
|
* @author Laurens Holst (http://www.grauw.nl/)
|
||
|
|
*
|
||
|
|
* Copyright 2012 Laurens Holst
|
||
|
|
*
|
||
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||
|
|
* you may not use this file except in compliance with the License.
|
||
|
|
* You may obtain a copy of the License at
|
||
|
|
*
|
||
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||
|
|
*
|
||
|
|
* Unless required by applicable law or agreed to in writing, software
|
||
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||
|
|
* See the License for the specific language governing permissions and
|
||
|
|
* limitations under the License.
|
||
|
|
*
|
||
|
|
*/
|
||
|
|
|
||
|
|
!function(){define("Core/defined",[],function(){"use strict";function e(e){return void 0!==e&&null!==e}return e}),define("Core/DeveloperError",["./defined"],function(e){"use strict";function t(e){this.name="DeveloperError",this.message=e;var t;try{throw new Error}catch(e){t=e.stack}this.stack=t}return e(Object.create)&&(t.prototype=Object.create(Error.prototype),t.prototype.constructor=t),t.prototype.toString=function(){var t=this.name+": "+this.message;return e(this.stack)&&(t+="\n"+this.stack.toString()),t},t.throwInstantiationError=function(){throw new t("This function defines an interface and should not be called directly.")},t}),define("Core/Check",["./defined","./DeveloperError"],function(e,t){"use strict";function r(e){return e+" is required, actual value was undefined"}function n(e,t,r){return"Expected "+r+" to be typeof "+t+", actual typeof was "+e}var o={};return o.typeOf={},o.defined=function(n,o){if(!e(o))throw new t(r(n))},o.typeOf.func=function(e,r){if("function"!=typeof r)throw new t(n(typeof r,"function",e))},o.typeOf.string=function(e,r){if("string"!=typeof r)throw new t(n(typeof r,"string",e))},o.typeOf.number=function(e,r){if("number"!=typeof r)throw new t(n(typeof r,"number",e))},o.typeOf.number.lessThan=function(e,r,n){if(o.typeOf.number(e,r),r>=n)throw new t("Expected "+e+" to be less than "+n+", actual value was "+r)},o.typeOf.number.lessThanOrEquals=function(e,r,n){if(o.typeOf.number(e,r),r>n)throw new t("Expected "+e+" to be less than or equal to "+n+", actual value was "+r)},o.typeOf.number.greaterThan=function(e,r,n){if(o.typeOf.number(e,r),r<=n)throw new t("Expected "+e+" to be greater than "+n+", actual value was "+r)},o.typeOf.number.greaterThanOrEquals=function(e,r,n){if(o.typeOf.number(e,r),r<n)throw new t("Expected "+e+" to be greater than or equal to"+n+", actual value was "+r)},o.typeOf.object=function(e,r){if("object"!=typeof r)throw new t(n(typeof r,"object",e))},o.typeOf.bool=function(e,r){if("boolean"!=typeof r)throw new t(n(typeof r,"boolean",e))},o.typeOf.number.equals=function(e,r,n,i){if(o.typeOf.number(e,n),o.typeOf.number(r,i),n!==i)throw new t(e+" must be equal to "+r+", the actual values are "+n+" and "+i)},o}),define("Core/freezeObject",["./defined"],function(e){"use strict";var t=Object.freeze;return e(t)||(t=function(e){return e}),t}),define("Core/defaultValue",["./freezeObject"],function(e){"use strict";function t(e,t){return void 0!==e&&null!==e?e:t}return t.EMPTY_OBJECT=e({}),t}),define("ThirdParty/mersenne-twister",[],function(){var e=function(e){void 0==e&&(e=(new Date).getTime()),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(e)};return e.prototype.init_genrand=function(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti<this.N;this.mti++){var e=this.mt[this.mti-1]^this.mt[this.mti-1]>>>30;this.mt[this.mti]=(1812433253*((4294901760&e)>>>16)<<16)+1812433253*(65535&e)+this.mti,this.mt[this.mti]>>>=0}},e.prototype.genrand_int32=function(){var e,t=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var r;for(this.mti==this.N+1&&this.init_genrand(5489),r=0;r<this.N-this.M;r++)e=this.mt[r]&this.UPPER_MASK|this.mt[r+1]&this.LOWER_MASK,this.mt[r]=this.mt[r+this.M]^e>>>1^t[1&e];for(;r<this.N-1;r++)e=this.mt[r]&this.UPPER_MASK|this.mt[r+1]&this.LOWER_MASK,this.mt[r]=this.mt[r+(this.M-this.N)]^e>>>1^t[1&e];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^t[1&e],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,(e^=e>>>18)>>>0},e.prototype.random=function(){return this.genrand_int32()*(1/4294967296)},e}),define("Core/Math",["../ThirdParty/mersenne-twister","./Check","./defaultValue","./defined","./DeveloperError"],function(e,t,r,n,o){"use strict";var i={};i.EPSILON1=.1,i.EPSILON2=.01,i.EPSILON3=.001,i.EPSILON4=1e-4,i.EPSILON5=1e-5,i.EPSILON6=1e-6,i.EPSILON7=1e-7,i.EPSILON8=1e-8,i.EPSILON9=1e-9,i.EPSILON10=1e-10,i.EPSILON11=1e-11,i.EPSILON12=1e-12,i.EPSILON13=1e-13,i.EPSILON14=1e-14
|
||
|
|
return e===t||r(e)&&r(t)&&i.equalsEpsilon(e.x,t.x,n,o)&&i.equalsEpsilon(e.y,t.y,n,o)&&i.equalsEpsilon(e.z,t.z,n,o)&&i.equalsEpsilon(e.w,t.w,n,o)},a.ZERO=o(new a(0,0,0,0)),a.UNIT_X=o(new a(1,0,0,0)),a.UNIT_Y=o(new a(0,1,0,0)),a.UNIT_Z=o(new a(0,0,1,0)),a.UNIT_W=o(new a(0,0,0,1)),a.prototype.clone=function(e){return a.clone(this,e)},a.prototype.equals=function(e){return a.equals(this,e)},a.prototype.equalsEpsilon=function(e,t,r){return a.equalsEpsilon(this,e,t,r)},a.prototype.toString=function(){return"("+this.x+", "+this.y+", "+this.z+", "+this.w+")"};var l=new Float32Array(1);return a.packFloat=function(e,t){if(r(t)||(t=new a),l[0]=e,0===(e=l[0]))return a.clone(a.ZERO,t);var n,o=e<0?1:0;isFinite(e)?(e=Math.abs(e),n=Math.floor(i.logBase(e,10))+1,e/=Math.pow(10,n)):(e=.1,n=38);var s=256*e;return t.x=Math.floor(s),s=256*(s-t.x),t.y=Math.floor(s),s=256*(s-t.y),t.z=Math.floor(s),t.w=2*(n+38)+o,t},a.unpackFloat=function(e){var t=e.w/2,r=Math.floor(t),n=2*(t-r);if(r-=38,n=2*n-1,n=-n,r>=38)return n<0?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY;var o=n*e.x*(1/256);return o+=n*e.y*(1/65536),(o+=n*e.z*(1/16777216))*Math.pow(10,r)},a}),define("Core/RuntimeError",["./defined"],function(e){"use strict";function t(e){this.name="RuntimeError",this.message=e;var t;try{throw new Error}catch(e){t=e.stack}this.stack=t}return e(Object.create)&&(t.prototype=Object.create(Error.prototype),t.prototype.constructor=t),t.prototype.toString=function(){var t=this.name+": "+this.message;return e(this.stack)&&(t+="\n"+this.stack.toString()),t},t}),define("Core/Matrix4",["./Cartesian3","./Cartesian4","./Check","./defaultValue","./defined","./defineProperties","./freezeObject","./Math","./Matrix3","./RuntimeError"],function(e,t,r,n,o,i,a,s,u,c){"use strict";function l(e,t,r,o,i,a,s,u,c,l,f,h,d,E,m,p){this[0]=n(e,0),this[1]=n(i,0),this[2]=n(c,0),this[3]=n(d,0),this[4]=n(t,0),this[5]=n(a,0),this[6]=n(l,0),this[7]=n(E,0),this[8]=n(r,0),this[9]=n(s,0),this[10]=n(f,0),this[11]=n(m,0),this[12]=n(o,0),this[13]=n(u,0),this[14]=n(h,0),this[15]=n(p,0)}l.packedLength=16,l.pack=function(e,t,r){return r=n(r,0),t[r++]=e[0],t[r++]=e[1],t[r++]=e[2],t[r++]=e[3],t[r++]=e[4],t[r++]=e[5],t[r++]=e[6],t[r++]=e[7],t[r++]=e[8],t[r++]=e[9],t[r++]=e[10],t[r++]=e[11],t[r++]=e[12],t[r++]=e[13],t[r++]=e[14],t[r]=e[15],t},l.unpack=function(e,t,r){return t=n(t,0),o(r)||(r=new l),r[0]=e[t++],r[1]=e[t++],r[2]=e[t++],r[3]=e[t++],r[4]=e[t++],r[5]=e[t++],r[6]=e[t++],r[7]=e[t++],r[8]=e[t++],r[9]=e[t++],r[10]=e[t++],r[11]=e[t++],r[12]=e[t++],r[13]=e[t++],r[14]=e[t++],r[15]=e[t],r},l.clone=function(e,t){if(o(e))return o(t)?(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t):new l(e[0],e[4],e[8],e[12],e[1],e[5],e[9],e[13],e[2],e[6],e[10],e[14],e[3],e[7],e[11],e[15])},l.fromArray=l.unpack,l.fromColumnMajorArray=function(e,t){return l.clone(e,t)},l.fromRowMajorArray=function(e,t){return o(t)?(t[0]=e[0],t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=e[1],t[5]=e[5],t[6]=e[9],t[7]=e[13],t[8]=e[2],t[9]=e[6],t[10]=e[10],t[11]=e[14],t[12]=e[3],t[13]=e[7],t[14]=e[11],t[15]=e[15],t):new l(e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7],e[8],e[9],e[10],e[11],e[12],e[13],e[14],e[15])},l.fromRotationTranslation=function(t,r,i){return r=n(r,e.ZERO),o(i)?(i[0]=t[0],i[1]=t[1],i[2]=t[2],i[3]=0,i[4]=t[3],i[5]=t[4],i[6]=t[5],i[7]=0,i[8]=t[6],i[9]=t[7],i[10]=t[8],i[11]=0,i[12]=r.x,i[13]=r.y,i[14]=r.z,i[15]=1,i):new l(t[0],t[3],t[6],r.x,t[1],t[4],t[7],r.y,t[2],t[5],t[8],r.z,0,0,0,1)},l.fromTranslationQuaternionRotationScale=function(e,t,r,n){o(n)||(n=new l);var i=r.x,a=r.y,s=r.z,u=t.x*t.x,c=t.x*t.y,f=t.x*t.z,h=t.x*t.w,d=t.y*t.y,E=t.y*t.z,m=t.y*t.w,p=t.z*t.z,y=t.z*t.w,_=t.w*t.w,T=u-d-p+_,R=2*(c-y),A=2*(f+m),S=2*(c+y),C=-u+d-p+_,g=2*(E-h),I=2*(f-m),v=2*(E+h),O=-u-d+p+_;return n[0]=T*i,n[1]=S*i,n[2]=I*i,n[3]=0,n[4]=R*a,n[5]=C*a,n[6]=v*a,n[7]=0,n[8]=A*s,n[9]=g*s,n[10]=O*s,n[11]=0,n[12]=e.x,n[13]=e.y,n[14]=e.z,n[15]=1,n},l.fromTranslationRotationScale=function(e,t){return l.fromTranslationQuaternionRotationS
|
||
|
|
;for(var o,i=["webkit","moz","o","ms","khtml"],a=0,s=i.length;a<s;++a){var u=i[a];o=u+"RequestFullscreen","function"==typeof t[o]?(n.requestFullscreen=o,r=!0):(o=u+"RequestFullScreen","function"==typeof t[o]&&(n.requestFullscreen=o,r=!0)),o=u+"ExitFullscreen","function"==typeof document[o]?n.exitFullscreen=o:(o=u+"CancelFullScreen","function"==typeof document[o]&&(n.exitFullscreen=o)),o=u+"FullscreenEnabled",void 0!==document[o]?n.fullscreenEnabled=o:(o=u+"FullScreenEnabled",void 0!==document[o]&&(n.fullscreenEnabled=o)),o=u+"FullscreenElement",void 0!==document[o]?n.fullscreenElement=o:(o=u+"FullScreenElement",void 0!==document[o]&&(n.fullscreenElement=o)),o=u+"fullscreenchange",void 0!==document["on"+o]&&("ms"===u&&(o="MSFullscreenChange"),n.fullscreenchange=o),o=u+"fullscreenerror",void 0!==document["on"+o]&&("ms"===u&&(o="MSFullscreenError"),n.fullscreenerror=o)}return r},o.requestFullscreen=function(e,t){o.supportsFullscreen()&&e[n.requestFullscreen]({vrDisplay:t})},o.exitFullscreen=function(){o.supportsFullscreen()&&document[n.exitFullscreen]()},o}),define("Core/FeatureDetection",["./defaultValue","./defined","./Fullscreen"],function(e,t,r){"use strict";function n(e){for(var t=e.split("."),r=0,n=t.length;r<n;++r)t[r]=parseInt(t[r],10);return t}function o(){if(!t(A)&&(A=!1,!h())){var e=/ Chrome\/([\.0-9]+)/.exec(R.userAgent);null!==e&&(A=!0,S=n(e[1]))}return A}function i(){return o()&&S}function a(){if(!t(C)&&(C=!1,!o()&&!h()&&/ Safari\/[\.0-9]+/.test(R.userAgent))){var e=/ Version\/([\.0-9]+)/.exec(R.userAgent);null!==e&&(C=!0,g=n(e[1]))}return C}function s(){return a()&&g}function u(){if(!t(I)){I=!1;var e=/ AppleWebKit\/([\.0-9]+)(\+?)/.exec(R.userAgent);null!==e&&(I=!0,v=n(e[1]),v.isNightly=!!e[2])}return I}function c(){return u()&&v}function l(){if(!t(O)){O=!1;var e;"Microsoft Internet Explorer"===R.appName?null!==(e=/MSIE ([0-9]{1,}[\.0-9]{0,})/.exec(R.userAgent))&&(O=!0,N=n(e[1])):"Netscape"===R.appName&&null!==(e=/Trident\/.*rv:([0-9]{1,}[\.0-9]{0,})/.exec(R.userAgent))&&(O=!0,N=n(e[1]))}return O}function f(){return l()&&N}function h(){if(!t(w)){w=!1;var e=/ Edge\/([\.0-9]+)/.exec(R.userAgent);null!==e&&(w=!0,M=n(e[1]))}return w}function d(){return h()&&M}function E(){if(!t(x)){x=!1;var e=/Firefox\/([\.0-9]+)/.exec(R.userAgent);null!==e&&(x=!0,F=n(e[1]))}return x}function m(){return t(D)||(D=/Windows/i.test(R.appVersion)),D}function p(){return E()&&F}function y(){return t(U)||(U=!E()&&"undefined"!=typeof PointerEvent&&(!t(R.pointerEnabled)||R.pointerEnabled)),U}function _(){if(!t(L)){var e=document.createElement("canvas");e.setAttribute("style","image-rendering: -moz-crisp-edges;image-rendering: pixelated;");var r=e.style.imageRendering;L=t(r)&&""!==r,L&&(P=r)}return L}function T(){return _()?P:void 0}var R;R="undefined"!=typeof navigator?navigator:{};var A,S,C,g,I,v,O,N,w,M,x,F,D,U,P,L,b=[];"undefined"!=typeof ArrayBuffer&&(b.push(Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array),"undefined"!=typeof Uint8ClampedArray&&b.push(Uint8ClampedArray),"undefined"!=typeof CanvasPixelArray&&b.push(CanvasPixelArray));var B={isChrome:o,chromeVersion:i,isSafari:a,safariVersion:s,isWebkit:u,webkitVersion:c,isInternetExplorer:l,internetExplorerVersion:f,isEdge:h,edgeVersion:d,isFirefox:E,firefoxVersion:p,isWindows:m,hardwareConcurrency:e(R.hardwareConcurrency,3),supportsPointerEvents:y,supportsImageRenderingPixelated:_,imageRenderingValue:T,typedArrayTypes:b};return B.supportsFullscreen=function(){return r.supportsFullscreen()},B.supportsTypedArrays=function(){return"undefined"!=typeof ArrayBuffer},B.supportsWebWorkers=function(){return"undefined"!=typeof Worker},B.supportsWebAssembly=function(){return"undefined"!=typeof WebAssembly&&!B.isEdge()},B}),define("Core/WebGLConstants",["./freezeObject"],function(e){"use strict";return e({DEPTH_BUFFER_BIT:256,STENCIL_BUFFER_BIT:1024,COLOR_BUFFER_BIT:16384,POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6,ZERO:0,ONE:1,SRC_COLOR:768,ONE_MINUS_SRC_COLOR:769,SRC_ALPHA:770,ONE_MINUS_SRC_ALPHA:771,DST_ALPH
|
||
|
|
;var h=o*r*(1+D[0]*(1+D[1]*(1+D[2]*(1+D[3]*(1+D[4]*(1+D[5]*(1+D[6]*(1+D[7])))))))),d=s*(1+U[0]*(1+U[1]*(1+U[2]*(1+U[3]*(1+U[4]*(1+U[5]*(1+U[6]*(1+U[7])))))))),E=u.multiplyByScalar(e,d,w);return u.multiplyByScalar(t,h,n),u.add(E,n,n)},u.fastSquad=function(e,t,r,n,o,i){var a=u.fastSlerp(e,t,o,O),s=u.fastSlerp(r,n,o,N);return u.fastSlerp(a,s,2*o*(1-o),i)},u.equals=function(e,t){return e===t||n(e)&&n(t)&&e.x===t.x&&e.y===t.y&&e.z===t.z&&e.w===t.w},u.equalsEpsilon=function(e,t,r){return e===t||n(e)&&n(t)&&Math.abs(e.x-t.x)<=r&&Math.abs(e.y-t.y)<=r&&Math.abs(e.z-t.z)<=r&&Math.abs(e.w-t.w)<=r},u.ZERO=i(new u(0,0,0,0)),u.IDENTITY=i(new u(0,0,0,1)),u.prototype.clone=function(e){return u.clone(this,e)},u.prototype.equals=function(e){return u.equals(this,e)},u.prototype.equalsEpsilon=function(e,t){return u.equalsEpsilon(this,e,t)},u.prototype.toString=function(){return"("+this.x+", "+this.y+", "+this.z+", "+this.w+")"},u}),function(e){"use strict";e("ThirdParty/when",[],function(){function e(e,r,n,o){return t(e).then(r,n,o)}function t(e){var t,r;return e instanceof n?t=e:s(e)?(r=a(),e.then(function(e){r.resolve(e)},function(e){r.reject(e)},function(e){r.progress(e)}),t=r.promise):t=o(e),t}function r(t){return e(t,i)}function n(e){this.then=e}function o(e){return new n(function(r){try{return t(r?r(e):e)}catch(e){return i(e)}})}function i(e){return new n(function(r,n){try{return n?t(n(e)):i(e)}catch(e){return i(e)}})}function a(){function e(e,t,r){return h(e,t,r)}function r(e){return E(e)}function o(e){return E(i(e))}function s(e){return d(e)}var u,c,l,f,h,d,E;return c=new n(e),u={then:e,resolve:r,reject:o,progress:s,promise:c,resolver:{resolve:r,reject:o,progress:s}},l=[],f=[],h=function(e,t,r){var n,o;return n=a(),o="function"==typeof r?function(e){try{n.progress(r(e))}catch(e){n.progress(e)}}:function(e){n.progress(e)},l.push(function(r){r.then(e,t).then(n.resolve,n.reject,o)}),f.push(o),n.promise},d=function(e){return m(f,e),e},E=function(e){return e=t(e),h=e.then,E=t,d=y,m(l,e),f=l=A,e},u}function s(e){return e&&"function"==typeof e.then}function u(t,r,n,o,i){return p(2,arguments),e(t,function(t){function s(e){m(e)}function u(e){E(e)}var c,l,f,h,d,E,m,p,_,T;if(_=t.length>>>0,c=Math.max(0,Math.min(r,_)),f=[],l=_-c+1,h=[],d=a(),c)for(p=d.progress,m=function(e){h.push(e),--l||(E=m=y,d.reject(h))},E=function(e){f.push(e),--c||(E=m=y,d.resolve(f))},T=0;T<_;++T)T in t&&e(t[T],u,s,p);else d.resolve(f);return d.then(n,o,i)})}function c(e,t,r,n){function o(e){return t?t(e[0]):e[0]}return u(e,1,o,r,n)}function l(e,t,r,n){return p(1,arguments),h(e,_).then(t,r,n)}function f(){return h(arguments,_)}function h(t,r){return e(t,function(t){var n,o,i,s,u,c;if(i=o=t.length>>>0,n=[],c=a(),i)for(s=function(t,o){e(t,r).then(function(e){n[o]=e,--i||c.resolve(n)},c.reject)},u=0;u<o;u++)u in t?s(t[u],u):--i;else c.resolve(n);return c.promise})}function d(t,r){var n=R.call(arguments,1);return e(t,function(t){var o;return o=t.length,n[0]=function(t,n,i){return e(t,function(t){return e(n,function(e){return r(t,e,i,o)})})},T.apply(t,n)})}function E(t,r,n){var o=arguments.length>2;return e(t,function(e){return e=o?n:e,r.resolve(e),e},function(e){return r.reject(e),i(e)},r.progress)}function m(e,t){for(var r,n=0;r=e[n++];)r(t)}function p(e,t){for(var r,n=t.length;n>e;)if(null!=(r=t[--n])&&"function"!=typeof r)throw new Error("arg "+n+" must be a function")}function y(){}function _(e){return e}var T,R,A;return e.defer=a,e.resolve=t,e.reject=r,e.join=f,e.all=l,e.map=h,e.reduce=d,e.any=c,e.some=u,e.chain=E,e.isPromise=s,n.prototype={always:function(e,t){return this.then(e,e,t)},otherwise:function(e){return this.then(A,e)},yield:function(e){return this.then(function(){return e})},spread:function(e){return this.then(function(t){return l(t,function(t){return e.apply(A,t)})})}},R=[].slice,T=[].reduce||function(e){var t,r,n,o,i;if(i=0,t=Object(this),o=t.length>>>0,r=arguments,r.length<=1)for(;;){if(i in t){n=t[i++];break}if(++i>=o)throw new TypeError}else n=r[1];for(;i<o;++i)i in t&&(n=e(n,t[i],i,t));return n},e})}("function"==typeof define&&define.amd?define:funct
|
||
|
|
;for(var a in t)if(t.hasOwnProperty(a)){var u=n[a],c=t[a];s(u)?(Array.isArray(u)||(u=n[a]=[u]),n[a]=u.concat(c)):n[a]=Array.isArray(c)?c.slice():c}return n}function F(t){t=a(t,a.EMPTY_OBJECT),"string"==typeof t&&(t={url:t}),this._url=void 0,this._templateValues=w(t.templateValues,{}),this._queryParameters=w(t.queryParameters,{}),this.headers=w(t.headers,{}),this.request=a(t.request,new A),this.proxy=t.proxy,this.retryCallback=t.retryCallback,this.retryAttempts=a(t.retryAttempts,0),this._retryCount=0;var r=new e(t.url);O(r,this,!0,!0),r.fragment=void 0,this._url=r.toString()}function D(e){var r=e.request;r.url=e.url,r.requestFunction=function(){var r=e.url,n=!1;e.isDataUri||e.isBlobUri||(n=e.isCrossOriginUrl);var o=t.defer();return F._Implementations.createImage(r,n,o),o.promise};var n=C.request(r);if(s(n))return n.otherwise(function(n){return r.state!==g.FAILED?t.reject(n):e.retryOnError(n).then(function(o){return o?(r.state=g.UNISSUED,r.deferred=void 0,D(e)):t.reject(n)})})}function U(e,r,n){var o={};o[r]=n,e.setQueryParameters(o);var i=e.request;i.url=e.url,i.requestFunction=function(){var r=t.defer();return window[n]=function(e){r.resolve(e);try{delete window[n]}catch(e){window[n]=void 0}},F._Implementations.loadAndExecuteScript(e.url,n,r),r.promise};var a=C.request(i);if(s(a))return a.otherwise(function(o){return i.state!==g.FAILED?t.reject(o):e.retryOnError(o).then(function(a){return a?(i.state=g.UNISSUED,i.deferred=void 0,U(e,r,n)):t.reject(o)})})}function P(e,t){var r=decodeURIComponent(t);return e?atob(r):r}function L(e,t){for(var r=P(e,t),n=new ArrayBuffer(r.length),o=new Uint8Array(n),i=0;i<r.length;i++)o[i]=r.charCodeAt(i);return n}function b(e,t){t=a(t,"");var r=e[1],n=!!e[2],o=e[3];switch(t){case"":case"text":return P(n,o);case"arraybuffer":return L(n,o);case"blob":var i=L(n,o);return new Blob([i],{type:r});case"document":return(new DOMParser).parseFromString(P(n,o),r);case"json":return JSON.parse(P(n,o))}}function B(e,t){switch(t){case"text":return e.toString("utf8");case"json":return JSON.parse(e.toString("utf8"));default:return new Uint8Array(e).buffer}}function z(e,t,r,n,o,i,a){var s=require("url").parse(e),u="https:"===s.protocol?require("https"):require("http"),c=require("zlib"),l={protocol:s.protocol,hostname:s.hostname,port:s.port,path:s.path,query:s.query,method:r,headers:o};u.request(l).on("response",function(e){if(e.statusCode<200||e.statusCode>=300)return void i.reject(new S(e.statusCode,e,e.headers));var r=[];e.on("data",function(e){r.push(e)}),e.on("end",function(){var n=Buffer.concat(r);"gzip"===e.headers["content-encoding"]?c.gunzip(n,function(e,r){e?i.reject(new I("Error decompressing response.")):i.resolve(B(r,t))}):i.resolve(B(n,t))})}).on("error",function(e){i.reject(new S)}).end()}var G=function(){try{var e=new XMLHttpRequest;return e.open("GET","#",!0),e.responseType="blob","blob"===e.responseType}catch(e){return!1}}();F.createIfNeeded=function(e){return e instanceof F?e.getDerivedResource({request:e.request}):"string"!=typeof e?e:new F({url:e})},u(F,{isBlobSupported:{get:function(){return G}}}),u(F.prototype,{queryParameters:{get:function(){return this._queryParameters}},templateValues:{get:function(){return this._templateValues}},url:{get:function(){return this.getUrlComponent(!0,!0)},set:function(t){var r=new e(t);O(r,this,!1),r.fragment=void 0,this._url=r.toString()}},extension:{get:function(){return E(this._url)}},isDataUri:{get:function(){return y(this._url)}},isBlobUri:{get:function(){return m(this._url)}},isCrossOriginUrl:{get:function(){return p(this._url)}},hasHeaders:{get:function(){return Object.keys(this.headers).length>0}}}),F.prototype.getUrlComponent=function(t,r){if(this.isDataUri)return this._url;var n=new e(this._url);t&&N(n,this);var o=n.toString().replace(/%7B/g,"{").replace(/%7D/g,"}"),i=this._templateValues,a=Object.keys(i);if(a.length>0)for(var u=0;u<a.length;u++){var c=a[u],l=i[c];o=o.replace(new RegExp("{"+c+"}","g"),encodeURIComponent(l))}return r&&s(this.proxy)&&(o=this.proxy.getURL(o)),o},F.prototype.setQueryParameters=function(e,t){this._queryParameters=t?
|
||
|
|
r[n++]=t.normal?1:0,r[n++]=t.st?1:0,r[n++]=t.tangent?1:0,r[n++]=t.bitangent?1:0,r[n]=t.color?1:0,r},o.unpack=function(r,n,i){return n=e(n,0),t(i)||(i=new o),i.position=1===r[n++],i.normal=1===r[n++],i.st=1===r[n++],i.tangent=1===r[n++],i.bitangent=1===r[n++],i.color=1===r[n],i},o.clone=function(e,r){if(t(e))return t(r)||(r=new o),r.position=e.position,r.normal=e.normal,r.st=e.st,r.tangent=e.tangent,r.bitangent=e.bitangent,r.color=e.color,r},o}),define("Core/BoxGeometry",["./arrayFill","./BoundingSphere","./Cartesian3","./Check","./ComponentDatatype","./defaultValue","./defined","./DeveloperError","./Geometry","./GeometryAttribute","./GeometryAttributes","./GeometryOffsetAttribute","./PrimitiveType","./VertexFormat"],function(e,t,r,n,o,i,a,s,u,c,l,f,h,d){"use strict";function E(e){e=i(e,i.EMPTY_OBJECT);var t=e.minimum,n=e.maximum,o=i(e.vertexFormat,d.DEFAULT);this._minimum=r.clone(t),this._maximum=r.clone(n),this._vertexFormat=o,this._offsetAttribute=e.offsetAttribute,this._workerName="createBoxGeometry"}var m=new r;E.fromDimensions=function(e){e=i(e,i.EMPTY_OBJECT);var t=e.dimensions,n=r.multiplyByScalar(t,.5,new r);return new E({minimum:r.negate(n,new r),maximum:n,vertexFormat:e.vertexFormat,offsetAttribute:e.offsetAttribute})},E.fromAxisAlignedBoundingBox=function(e){return new E({minimum:e.minimum,maximum:e.maximum})},E.packedLength=2*r.packedLength+d.packedLength+1,E.pack=function(e,t,n){return n=i(n,0),r.pack(e._minimum,t,n),r.pack(e._maximum,t,n+r.packedLength),d.pack(e._vertexFormat,t,n+2*r.packedLength),t[n+2*r.packedLength+d.packedLength]=i(e._offsetAttribute,-1),t};var p=new r,y=new r,_=new d,T={minimum:p,maximum:y,vertexFormat:_,offsetAttribute:void 0};E.unpack=function(e,t,n){t=i(t,0);var o=r.unpack(e,t,p),s=r.unpack(e,t+r.packedLength,y),u=d.unpack(e,t+2*r.packedLength,_),c=e[t+2*r.packedLength+d.packedLength];return a(n)?(n._minimum=r.clone(o,n._minimum),n._maximum=r.clone(s,n._maximum),n._vertexFormat=d.clone(u,n._vertexFormat),n._offsetAttribute=-1===c?void 0:c,n):(T.offsetAttribute=-1===c?void 0:c,new E(T))},E.createGeometry=function(n){var i=n._minimum,s=n._maximum,d=n._vertexFormat;if(!r.equals(i,s)){var E,p,y=new l;if(d.position&&(d.st||d.normal||d.tangent||d.bitangent)){if(d.position&&(p=new Float64Array(72),p[0]=i.x,p[1]=i.y,p[2]=s.z,p[3]=s.x,p[4]=i.y,p[5]=s.z,p[6]=s.x,p[7]=s.y,p[8]=s.z,p[9]=i.x,p[10]=s.y,p[11]=s.z,p[12]=i.x,p[13]=i.y,p[14]=i.z,p[15]=s.x,p[16]=i.y,p[17]=i.z,p[18]=s.x,p[19]=s.y,p[20]=i.z,p[21]=i.x,p[22]=s.y,p[23]=i.z,p[24]=s.x,p[25]=i.y,p[26]=i.z,p[27]=s.x,p[28]=s.y,p[29]=i.z,p[30]=s.x,p[31]=s.y,p[32]=s.z,p[33]=s.x,p[34]=i.y,p[35]=s.z,p[36]=i.x,p[37]=i.y,p[38]=i.z,p[39]=i.x,p[40]=s.y,p[41]=i.z,p[42]=i.x,p[43]=s.y,p[44]=s.z,p[45]=i.x,p[46]=i.y,p[47]=s.z,p[48]=i.x,p[49]=s.y,p[50]=i.z,p[51]=s.x,p[52]=s.y,p[53]=i.z,p[54]=s.x,p[55]=s.y,p[56]=s.z,p[57]=i.x,p[58]=s.y,p[59]=s.z,p[60]=i.x,p[61]=i.y,p[62]=i.z,p[63]=s.x,p[64]=i.y,p[65]=i.z,p[66]=s.x,p[67]=i.y,p[68]=s.z,p[69]=i.x,p[70]=i.y,p[71]=s.z,y.position=new c({componentDatatype:o.DOUBLE,componentsPerAttribute:3,values:p})),d.normal){var _=new Float32Array(72);_[0]=0,_[1]=0,_[2]=1,_[3]=0,_[4]=0,_[5]=1,_[6]=0,_[7]=0,_[8]=1,_[9]=0,_[10]=0,_[11]=1,_[12]=0,_[13]=0,_[14]=-1,_[15]=0,_[16]=0,_[17]=-1,_[18]=0,_[19]=0,_[20]=-1,_[21]=0,_[22]=0,_[23]=-1,_[24]=1,_[25]=0,_[26]=0,_[27]=1,_[28]=0,_[29]=0,_[30]=1,_[31]=0,_[32]=0,_[33]=1,_[34]=0,_[35]=0,_[36]=-1,_[37]=0,_[38]=0,_[39]=-1,_[40]=0,_[41]=0,_[42]=-1,_[43]=0,_[44]=0,_[45]=-1,_[46]=0,_[47]=0,_[48]=0,_[49]=1,_[50]=0,_[51]=0,_[52]=1,_[53]=0,_[54]=0,_[55]=1,_[56]=0,_[57]=0,_[58]=1,_[59]=0,_[60]=0,_[61]=-1,_[62]=0,_[63]=0,_[64]=-1,_[65]=0,_[66]=0,_[67]=-1,_[68]=0,_[69]=0,_[70]=-1,_[71]=0,y.normal=new c({componentDatatype:o.FLOAT,componentsPerAttribute:3,values:_})}if(d.st){var T=new Float32Array(48);T[0]=0,T[1]=0,T[2]=1,T[3]=0,T[4]=1,T[5]=1,T[6]=0,T[7]=1,T[8]=1,T[9]=0,T[10]=0,T[11]=0,T[12]=0,T[13]=1,T[14]=1,T[15]=1,T[16]=0,T[17]=0,T[18]=1,T[19]=0,T[20]=1,T[21]=1,T[22]=0,T[23]=1,T[24]=1,T[25]=0,T[26]=0,T[27]=0,T[28]=0,T[29]=1,T[30]=1,T[31]=1,T[32]=1,T[33]=0,T[34]=0,T[35]=0,T[36]=0,T[37]=1,T[38]=1,T[3
|
||
|
|
function p(e){var t=new Float64Array(e),n=0;r.unpack(t,n,O),n+=r.packedLength,u.unpack(t,n,N)}function y(e){for(var t=e.length,r=0,o=0;o<t;++o)r+=n.packedLength+3+e[o].batchIds.length;return r}function _(t,r,o){var i=o.length,a=2+i*e.packedLength+1+y(r),s=new Float64Array(a),u=0;s[u++]=t,s[u++]=i;for(var c=0;c<i;++c)e.pack(o[c],s,u),u+=e.packedLength;var l=r.length;s[u++]=l;for(var f=0;f<l;++f){var h=r[f];n.pack(h.color,s,u),u+=n.packedLength,s[u++]=h.offset,s[u++]=h.count;var d=h.batchIds,E=d.length;s[u++]=E;for(var m=0;m<E;++m)s[u++]=d[m]}return s}function T(e,r){var n=i(e.boxes)?new Float32Array(e.boxes):void 0,u=i(e.boxBatchIds)?new Uint16Array(e.boxBatchIds):void 0,c=i(e.cylinders)?new Float32Array(e.cylinders):void 0,l=i(e.cylinderBatchIds)?new Uint16Array(e.cylinderBatchIds):void 0,y=i(e.ellipsoids)?new Float32Array(e.ellipsoids):void 0,T=i(e.ellipsoidBatchIds)?new Uint16Array(e.ellipsoidBatchIds):void 0,R=i(e.spheres)?new Float32Array(e.spheres):void 0,A=i(e.sphereBatchIds)?new Uint16Array(e.sphereBatchIds):void 0,S=i(n)?u.length:0,C=i(c)?l.length:0,g=i(y)?T.length:0,I=i(R)?A.length:0,v=t.getUnitBox(),w=o.getUnitCylinder(),M=a.getUnitEllipsoid(),x=v.attributes.position.values,F=w.attributes.position.values,D=M.attributes.position.values,U=x.length*S;U+=F.length*C,U+=D.length*(g+I);var P=v.indices,L=w.indices,b=M.indices,B=P.length*S;B+=L.length*C,B+=b.length*(g+I);var z=new Float32Array(U),G=new Uint16Array(U/3),q=s.createTypedArray(U/3,B),V=S+C+g+I,W=new Uint16Array(V),k=new Array(V),H=new Uint32Array(V),X=new Uint32Array(V),Y=new Array(V);p(e.packedBuffer);var j={batchTableColors:new Uint32Array(e.batchTableColors),positions:z,vertexBatchIds:G,indices:q,batchIds:W,batchedIndices:k,indexOffsets:H,indexCounts:X,boundingVolumes:Y,positionOffset:0,batchIdIndex:0,indexOffset:0,batchedIndicesOffset:0,modelMatrix:N,center:O};m(j,n,u,v,f),m(j,c,l,w,h),m(j,y,T,M,d),m(j,R,A,M,E);var K=_(q.BYTES_PER_ELEMENT,k,Y);return r.push(z.buffer,G.buffer,q.buffer),r.push(W.buffer,H.buffer,X.buffer),r.push(K.buffer),{positions:z.buffer,vertexBatchIds:G.buffer,indices:q.buffer,indexOffsets:H.buffer,indexCounts:X.buffer,batchIds:W.buffer,packedBuffer:K.buffer}}var R=new r,A=u.packedLength+r.packedLength,S=u.packedLength+2,C=u.packedLength+r.packedLength,g=r.packedLength+1,I={modelMatrix:new u,boundingVolume:new e},v=new r,O=new r,N=new u;return l(T)})}();
|