From 0c2446bbefacf6a2a514934ade44b7951091e957 Mon Sep 17 00:00:00 2001 From: 06wj <06wj@163.com> Date: Tue, 12 Dec 2017 11:05:26 +0800 Subject: [PATCH] build 1.1.5 --- build/amd/hilo-amd.js | 196 +++---- build/amd/hilo-amd.min.js | 8 +- build/amd/hilo-amd.zip | Bin 185418 -> 185658 bytes build/amd/hilo/core/Class.js | 2 +- build/amd/hilo/core/Class.min.js | 2 +- build/amd/hilo/core/Hilo.js | 4 +- build/amd/hilo/core/Hilo.min.js | 4 +- build/amd/hilo/event/EventMixin.js | 2 +- build/amd/hilo/event/EventMixin.min.js | 2 +- build/amd/hilo/game/Camera.js | 2 +- build/amd/hilo/game/Camera.min.js | 2 +- build/amd/hilo/game/Camera3d.js | 2 +- build/amd/hilo/game/Camera3d.min.js | 2 +- build/amd/hilo/game/ParticleSystem.js | 2 +- build/amd/hilo/game/ParticleSystem.min.js | 2 +- build/amd/hilo/geom/Matrix.js | 2 +- build/amd/hilo/geom/Matrix.min.js | 2 +- build/amd/hilo/loader/ImageLoader.js | 2 +- build/amd/hilo/loader/ImageLoader.min.js | 2 +- build/amd/hilo/loader/LoadQueue.js | 2 +- build/amd/hilo/loader/LoadQueue.min.js | 2 +- build/amd/hilo/loader/ScriptLoader.js | 2 +- build/amd/hilo/loader/ScriptLoader.min.js | 2 +- build/amd/hilo/media/HTMLAudio.js | 2 +- build/amd/hilo/media/HTMLAudio.min.js | 2 +- build/amd/hilo/media/WebAudio.js | 2 +- build/amd/hilo/media/WebAudio.min.js | 2 +- build/amd/hilo/media/WebSound.js | 2 +- build/amd/hilo/media/WebSound.min.js | 2 +- build/amd/hilo/renderer/CanvasRenderer.js | 52 +- build/amd/hilo/renderer/CanvasRenderer.min.js | 4 +- build/amd/hilo/renderer/DOMRenderer.js | 2 +- build/amd/hilo/renderer/DOMRenderer.min.js | 2 +- build/amd/hilo/renderer/Renderer.js | 2 +- build/amd/hilo/renderer/Renderer.min.js | 2 +- build/amd/hilo/renderer/WebGLRenderer.js | 7 +- build/amd/hilo/renderer/WebGLRenderer.min.js | 4 +- build/amd/hilo/tween/Ease.js | 2 +- build/amd/hilo/tween/Ease.min.js | 2 +- build/amd/hilo/tween/Tween.js | 2 +- build/amd/hilo/tween/Tween.min.js | 2 +- build/amd/hilo/util/TextureAtlas.js | 4 +- build/amd/hilo/util/TextureAtlas.min.js | 2 +- build/amd/hilo/util/Ticker.js | 2 +- build/amd/hilo/util/Ticker.min.js | 2 +- build/amd/hilo/util/browser.js | 2 +- build/amd/hilo/util/browser.min.js | 2 +- build/amd/hilo/util/drag.js | 2 +- build/amd/hilo/util/drag.min.js | 2 +- build/amd/hilo/util/polyfill.js | 2 +- build/amd/hilo/util/polyfill.min.js | 2 +- build/amd/hilo/util/util.js | 2 +- build/amd/hilo/util/util.min.js | 2 +- build/amd/hilo/view/Bitmap.js | 2 +- build/amd/hilo/view/Bitmap.min.js | 2 +- build/amd/hilo/view/BitmapText.js | 2 +- build/amd/hilo/view/BitmapText.min.js | 2 +- build/amd/hilo/view/Button.js | 2 +- build/amd/hilo/view/Button.min.js | 2 +- build/amd/hilo/view/CacheMixin.js | 2 +- build/amd/hilo/view/CacheMixin.min.js | 2 +- build/amd/hilo/view/Container.js | 2 +- build/amd/hilo/view/Container.min.js | 2 +- build/amd/hilo/view/DOMElement.js | 2 +- build/amd/hilo/view/DOMElement.min.js | 2 +- build/amd/hilo/view/Drawable.js | 2 +- build/amd/hilo/view/Drawable.min.js | 2 +- build/amd/hilo/view/Graphics.js | 2 +- build/amd/hilo/view/Graphics.min.js | 2 +- build/amd/hilo/view/Sprite.js | 2 +- build/amd/hilo/view/Sprite.min.js | 2 +- build/amd/hilo/view/Stage.js | 2 +- build/amd/hilo/view/Stage.min.js | 2 +- build/amd/hilo/view/Text.js | 2 +- build/amd/hilo/view/Text.min.js | 2 +- build/amd/hilo/view/View.js | 65 ++- build/amd/hilo/view/View.min.js | 4 +- build/cmd/hilo-cmd.js | 196 +++---- build/cmd/hilo-cmd.min.js | 8 +- build/cmd/hilo-cmd.zip | Bin 185374 -> 185611 bytes build/cmd/hilo/core/Class.js | 2 +- build/cmd/hilo/core/Class.min.js | 2 +- build/cmd/hilo/core/Hilo.js | 4 +- build/cmd/hilo/core/Hilo.min.js | 4 +- build/cmd/hilo/event/EventMixin.js | 2 +- build/cmd/hilo/event/EventMixin.min.js | 2 +- build/cmd/hilo/game/Camera.js | 2 +- build/cmd/hilo/game/Camera.min.js | 2 +- build/cmd/hilo/game/Camera3d.js | 2 +- build/cmd/hilo/game/Camera3d.min.js | 2 +- build/cmd/hilo/game/ParticleSystem.js | 2 +- build/cmd/hilo/game/ParticleSystem.min.js | 2 +- build/cmd/hilo/geom/Matrix.js | 2 +- build/cmd/hilo/geom/Matrix.min.js | 2 +- build/cmd/hilo/loader/ImageLoader.js | 2 +- build/cmd/hilo/loader/ImageLoader.min.js | 2 +- build/cmd/hilo/loader/LoadQueue.js | 2 +- build/cmd/hilo/loader/LoadQueue.min.js | 2 +- build/cmd/hilo/loader/ScriptLoader.js | 2 +- build/cmd/hilo/loader/ScriptLoader.min.js | 2 +- build/cmd/hilo/media/HTMLAudio.js | 2 +- build/cmd/hilo/media/HTMLAudio.min.js | 2 +- build/cmd/hilo/media/WebAudio.js | 2 +- build/cmd/hilo/media/WebAudio.min.js | 2 +- build/cmd/hilo/media/WebSound.js | 2 +- build/cmd/hilo/media/WebSound.min.js | 2 +- build/cmd/hilo/renderer/CanvasRenderer.js | 52 +- build/cmd/hilo/renderer/CanvasRenderer.min.js | 4 +- build/cmd/hilo/renderer/DOMRenderer.js | 2 +- build/cmd/hilo/renderer/DOMRenderer.min.js | 2 +- build/cmd/hilo/renderer/Renderer.js | 2 +- build/cmd/hilo/renderer/Renderer.min.js | 2 +- build/cmd/hilo/renderer/WebGLRenderer.js | 7 +- build/cmd/hilo/renderer/WebGLRenderer.min.js | 4 +- build/cmd/hilo/tween/Ease.js | 2 +- build/cmd/hilo/tween/Ease.min.js | 2 +- build/cmd/hilo/tween/Tween.js | 2 +- build/cmd/hilo/tween/Tween.min.js | 2 +- build/cmd/hilo/util/TextureAtlas.js | 4 +- build/cmd/hilo/util/TextureAtlas.min.js | 2 +- build/cmd/hilo/util/Ticker.js | 2 +- build/cmd/hilo/util/Ticker.min.js | 2 +- build/cmd/hilo/util/browser.js | 2 +- build/cmd/hilo/util/browser.min.js | 2 +- build/cmd/hilo/util/drag.js | 2 +- build/cmd/hilo/util/drag.min.js | 2 +- build/cmd/hilo/util/polyfill.js | 2 +- build/cmd/hilo/util/polyfill.min.js | 2 +- build/cmd/hilo/util/util.js | 2 +- build/cmd/hilo/util/util.min.js | 2 +- build/cmd/hilo/view/Bitmap.js | 2 +- build/cmd/hilo/view/Bitmap.min.js | 2 +- build/cmd/hilo/view/BitmapText.js | 2 +- build/cmd/hilo/view/BitmapText.min.js | 2 +- build/cmd/hilo/view/Button.js | 2 +- build/cmd/hilo/view/Button.min.js | 2 +- build/cmd/hilo/view/CacheMixin.js | 2 +- build/cmd/hilo/view/CacheMixin.min.js | 2 +- build/cmd/hilo/view/Container.js | 2 +- build/cmd/hilo/view/Container.min.js | 2 +- build/cmd/hilo/view/DOMElement.js | 2 +- build/cmd/hilo/view/DOMElement.min.js | 2 +- build/cmd/hilo/view/Drawable.js | 2 +- build/cmd/hilo/view/Drawable.min.js | 2 +- build/cmd/hilo/view/Graphics.js | 2 +- build/cmd/hilo/view/Graphics.min.js | 2 +- build/cmd/hilo/view/Sprite.js | 2 +- build/cmd/hilo/view/Sprite.min.js | 2 +- build/cmd/hilo/view/Stage.js | 2 +- build/cmd/hilo/view/Stage.min.js | 2 +- build/cmd/hilo/view/Text.js | 2 +- build/cmd/hilo/view/Text.min.js | 2 +- build/cmd/hilo/view/View.js | 65 ++- build/cmd/hilo/view/View.min.js | 4 +- build/commonjs/core/Class.js | 2 +- build/commonjs/core/Class.min.js | 2 +- build/commonjs/core/Hilo.js | 4 +- build/commonjs/core/Hilo.min.js | 4 +- build/commonjs/event/EventMixin.js | 2 +- build/commonjs/event/EventMixin.min.js | 2 +- build/commonjs/game/Camera.js | 2 +- build/commonjs/game/Camera.min.js | 2 +- build/commonjs/game/Camera3d.js | 2 +- build/commonjs/game/Camera3d.min.js | 2 +- build/commonjs/game/ParticleSystem.js | 2 +- build/commonjs/game/ParticleSystem.min.js | 2 +- build/commonjs/geom/Matrix.js | 2 +- build/commonjs/geom/Matrix.min.js | 2 +- build/commonjs/hilo-commonjs.zip | Bin 110286 -> 110435 bytes build/commonjs/loader/ImageLoader.js | 2 +- build/commonjs/loader/ImageLoader.min.js | 2 +- build/commonjs/loader/LoadQueue.js | 2 +- build/commonjs/loader/LoadQueue.min.js | 2 +- build/commonjs/loader/ScriptLoader.js | 2 +- build/commonjs/loader/ScriptLoader.min.js | 2 +- build/commonjs/media/HTMLAudio.js | 2 +- build/commonjs/media/HTMLAudio.min.js | 2 +- build/commonjs/media/WebAudio.js | 2 +- build/commonjs/media/WebAudio.min.js | 2 +- build/commonjs/media/WebSound.js | 2 +- build/commonjs/media/WebSound.min.js | 2 +- build/commonjs/renderer/CanvasRenderer.js | 52 +- build/commonjs/renderer/CanvasRenderer.min.js | 4 +- build/commonjs/renderer/DOMRenderer.js | 2 +- build/commonjs/renderer/DOMRenderer.min.js | 2 +- build/commonjs/renderer/Renderer.js | 2 +- build/commonjs/renderer/Renderer.min.js | 2 +- build/commonjs/renderer/WebGLRenderer.js | 7 +- build/commonjs/renderer/WebGLRenderer.min.js | 4 +- build/commonjs/tween/Ease.js | 2 +- build/commonjs/tween/Ease.min.js | 2 +- build/commonjs/tween/Tween.js | 2 +- build/commonjs/tween/Tween.min.js | 2 +- build/commonjs/util/TextureAtlas.js | 4 +- build/commonjs/util/TextureAtlas.min.js | 2 +- build/commonjs/util/Ticker.js | 2 +- build/commonjs/util/Ticker.min.js | 2 +- build/commonjs/util/browser.js | 2 +- build/commonjs/util/browser.min.js | 2 +- build/commonjs/util/drag.js | 2 +- build/commonjs/util/drag.min.js | 2 +- build/commonjs/util/polyfill.js | 2 +- build/commonjs/util/polyfill.min.js | 2 +- build/commonjs/util/util.js | 2 +- build/commonjs/util/util.min.js | 2 +- build/commonjs/view/Bitmap.js | 2 +- build/commonjs/view/Bitmap.min.js | 2 +- build/commonjs/view/BitmapText.js | 2 +- build/commonjs/view/BitmapText.min.js | 2 +- build/commonjs/view/Button.js | 2 +- build/commonjs/view/Button.min.js | 2 +- build/commonjs/view/CacheMixin.js | 2 +- build/commonjs/view/CacheMixin.min.js | 2 +- build/commonjs/view/Container.js | 2 +- build/commonjs/view/Container.min.js | 2 +- build/commonjs/view/DOMElement.js | 2 +- build/commonjs/view/DOMElement.min.js | 2 +- build/commonjs/view/Drawable.js | 2 +- build/commonjs/view/Drawable.min.js | 2 +- build/commonjs/view/Graphics.js | 2 +- build/commonjs/view/Graphics.min.js | 2 +- build/commonjs/view/Sprite.js | 2 +- build/commonjs/view/Sprite.min.js | 2 +- build/commonjs/view/Stage.js | 2 +- build/commonjs/view/Stage.min.js | 2 +- build/commonjs/view/Text.js | 2 +- build/commonjs/view/Text.min.js | 2 +- build/commonjs/view/View.js | 65 ++- build/commonjs/view/View.min.js | 4 +- build/flash/hilo-flash.js | 2 +- build/flash/hilo-flash.min.js | 2 +- build/kissy/hilo-kissy.js | 196 +++---- build/kissy/hilo-kissy.min.js | 8 +- build/kissy/hilo-kissy.zip | Bin 186842 -> 187070 bytes build/kissy/hilo/core/Class.js | 2 +- build/kissy/hilo/core/Class.min.js | 2 +- build/kissy/hilo/core/Hilo.js | 4 +- build/kissy/hilo/core/Hilo.min.js | 4 +- build/kissy/hilo/event/EventMixin.js | 2 +- build/kissy/hilo/event/EventMixin.min.js | 2 +- build/kissy/hilo/game/Camera.js | 2 +- build/kissy/hilo/game/Camera.min.js | 2 +- build/kissy/hilo/game/Camera3d.js | 2 +- build/kissy/hilo/game/Camera3d.min.js | 2 +- build/kissy/hilo/game/ParticleSystem.js | 2 +- build/kissy/hilo/game/ParticleSystem.min.js | 2 +- build/kissy/hilo/geom/Matrix.js | 2 +- build/kissy/hilo/geom/Matrix.min.js | 2 +- build/kissy/hilo/loader/ImageLoader.js | 2 +- build/kissy/hilo/loader/ImageLoader.min.js | 2 +- build/kissy/hilo/loader/LoadQueue.js | 2 +- build/kissy/hilo/loader/LoadQueue.min.js | 2 +- build/kissy/hilo/loader/ScriptLoader.js | 2 +- build/kissy/hilo/loader/ScriptLoader.min.js | 2 +- build/kissy/hilo/media/HTMLAudio.js | 2 +- build/kissy/hilo/media/HTMLAudio.min.js | 2 +- build/kissy/hilo/media/WebAudio.js | 2 +- build/kissy/hilo/media/WebAudio.min.js | 2 +- build/kissy/hilo/media/WebSound.js | 2 +- build/kissy/hilo/media/WebSound.min.js | 2 +- build/kissy/hilo/renderer/CanvasRenderer.js | 52 +- .../kissy/hilo/renderer/CanvasRenderer.min.js | 4 +- build/kissy/hilo/renderer/DOMRenderer.js | 2 +- build/kissy/hilo/renderer/DOMRenderer.min.js | 2 +- build/kissy/hilo/renderer/Renderer.js | 2 +- build/kissy/hilo/renderer/Renderer.min.js | 2 +- build/kissy/hilo/renderer/WebGLRenderer.js | 7 +- .../kissy/hilo/renderer/WebGLRenderer.min.js | 4 +- build/kissy/hilo/tween/Ease.js | 2 +- build/kissy/hilo/tween/Ease.min.js | 2 +- build/kissy/hilo/tween/Tween.js | 2 +- build/kissy/hilo/tween/Tween.min.js | 2 +- build/kissy/hilo/util/TextureAtlas.js | 4 +- build/kissy/hilo/util/TextureAtlas.min.js | 2 +- build/kissy/hilo/util/Ticker.js | 2 +- build/kissy/hilo/util/Ticker.min.js | 2 +- build/kissy/hilo/util/browser.js | 2 +- build/kissy/hilo/util/browser.min.js | 2 +- build/kissy/hilo/util/drag.js | 2 +- build/kissy/hilo/util/drag.min.js | 2 +- build/kissy/hilo/util/polyfill.js | 2 +- build/kissy/hilo/util/polyfill.min.js | 2 +- build/kissy/hilo/util/util.js | 2 +- build/kissy/hilo/util/util.min.js | 2 +- build/kissy/hilo/view/Bitmap.js | 2 +- build/kissy/hilo/view/Bitmap.min.js | 2 +- build/kissy/hilo/view/BitmapText.js | 2 +- build/kissy/hilo/view/BitmapText.min.js | 2 +- build/kissy/hilo/view/Button.js | 2 +- build/kissy/hilo/view/Button.min.js | 2 +- build/kissy/hilo/view/CacheMixin.js | 2 +- build/kissy/hilo/view/CacheMixin.min.js | 2 +- build/kissy/hilo/view/Container.js | 2 +- build/kissy/hilo/view/Container.min.js | 2 +- build/kissy/hilo/view/DOMElement.js | 2 +- build/kissy/hilo/view/DOMElement.min.js | 2 +- build/kissy/hilo/view/Drawable.js | 2 +- build/kissy/hilo/view/Drawable.min.js | 2 +- build/kissy/hilo/view/Graphics.js | 2 +- build/kissy/hilo/view/Graphics.min.js | 2 +- build/kissy/hilo/view/Sprite.js | 2 +- build/kissy/hilo/view/Sprite.min.js | 2 +- build/kissy/hilo/view/Stage.js | 2 +- build/kissy/hilo/view/Stage.min.js | 2 +- build/kissy/hilo/view/Text.js | 2 +- build/kissy/hilo/view/Text.min.js | 2 +- build/kissy/hilo/view/View.js | 65 ++- build/kissy/hilo/view/View.min.js | 4 +- build/standalone/hilo-standalone.js | 196 +++---- build/standalone/hilo-standalone.min.js | 8 +- build/standalone/hilo-standalone.zip | Bin 186236 -> 186466 bytes build/standalone/hilo/core/Class.js | 2 +- build/standalone/hilo/core/Class.min.js | 2 +- build/standalone/hilo/core/Hilo.js | 4 +- build/standalone/hilo/core/Hilo.min.js | 4 +- build/standalone/hilo/event/EventMixin.js | 2 +- build/standalone/hilo/event/EventMixin.min.js | 2 +- build/standalone/hilo/game/Camera.js | 2 +- build/standalone/hilo/game/Camera.min.js | 2 +- build/standalone/hilo/game/Camera3d.js | 2 +- build/standalone/hilo/game/Camera3d.min.js | 2 +- build/standalone/hilo/game/ParticleSystem.js | 2 +- .../hilo/game/ParticleSystem.min.js | 2 +- build/standalone/hilo/geom/Matrix.js | 2 +- build/standalone/hilo/geom/Matrix.min.js | 2 +- build/standalone/hilo/loader/ImageLoader.js | 2 +- .../standalone/hilo/loader/ImageLoader.min.js | 2 +- build/standalone/hilo/loader/LoadQueue.js | 2 +- build/standalone/hilo/loader/LoadQueue.min.js | 2 +- build/standalone/hilo/loader/ScriptLoader.js | 2 +- .../hilo/loader/ScriptLoader.min.js | 2 +- build/standalone/hilo/media/HTMLAudio.js | 2 +- build/standalone/hilo/media/HTMLAudio.min.js | 2 +- build/standalone/hilo/media/WebAudio.js | 2 +- build/standalone/hilo/media/WebAudio.min.js | 2 +- build/standalone/hilo/media/WebSound.js | 2 +- build/standalone/hilo/media/WebSound.min.js | 2 +- .../hilo/renderer/CanvasRenderer.js | 52 +- .../hilo/renderer/CanvasRenderer.min.js | 4 +- build/standalone/hilo/renderer/DOMRenderer.js | 2 +- .../hilo/renderer/DOMRenderer.min.js | 2 +- build/standalone/hilo/renderer/Renderer.js | 2 +- .../standalone/hilo/renderer/Renderer.min.js | 2 +- .../standalone/hilo/renderer/WebGLRenderer.js | 7 +- .../hilo/renderer/WebGLRenderer.min.js | 4 +- build/standalone/hilo/tween/Ease.js | 2 +- build/standalone/hilo/tween/Ease.min.js | 2 +- build/standalone/hilo/tween/Tween.js | 2 +- build/standalone/hilo/tween/Tween.min.js | 2 +- build/standalone/hilo/util/TextureAtlas.js | 4 +- .../standalone/hilo/util/TextureAtlas.min.js | 2 +- build/standalone/hilo/util/Ticker.js | 2 +- build/standalone/hilo/util/Ticker.min.js | 2 +- build/standalone/hilo/util/browser.js | 2 +- build/standalone/hilo/util/browser.min.js | 2 +- build/standalone/hilo/util/drag.js | 2 +- build/standalone/hilo/util/drag.min.js | 2 +- build/standalone/hilo/util/polyfill.js | 2 +- build/standalone/hilo/util/polyfill.min.js | 2 +- build/standalone/hilo/util/util.js | 2 +- build/standalone/hilo/util/util.min.js | 2 +- build/standalone/hilo/view/Bitmap.js | 2 +- build/standalone/hilo/view/Bitmap.min.js | 2 +- build/standalone/hilo/view/BitmapText.js | 2 +- build/standalone/hilo/view/BitmapText.min.js | 2 +- build/standalone/hilo/view/Button.js | 2 +- build/standalone/hilo/view/Button.min.js | 2 +- build/standalone/hilo/view/CacheMixin.js | 2 +- build/standalone/hilo/view/CacheMixin.min.js | 2 +- build/standalone/hilo/view/Container.js | 2 +- build/standalone/hilo/view/Container.min.js | 2 +- build/standalone/hilo/view/DOMElement.js | 2 +- build/standalone/hilo/view/DOMElement.min.js | 2 +- build/standalone/hilo/view/Drawable.js | 2 +- build/standalone/hilo/view/Drawable.min.js | 2 +- build/standalone/hilo/view/Graphics.js | 2 +- build/standalone/hilo/view/Graphics.min.js | 2 +- build/standalone/hilo/view/Sprite.js | 2 +- build/standalone/hilo/view/Sprite.min.js | 2 +- build/standalone/hilo/view/Stage.js | 2 +- build/standalone/hilo/view/Stage.min.js | 2 +- build/standalone/hilo/view/Text.js | 2 +- build/standalone/hilo/view/Text.min.js | 2 +- build/standalone/hilo/view/View.js | 65 ++- build/standalone/hilo/view/View.min.js | 4 +- docs/api-en/code/renderer/CanvasRenderer.js | 50 +- docs/api-en/code/renderer/WebGLRenderer.js | 5 +- docs/api-en/code/view/View.js | 63 ++- docs/api-en/index.html | 2 +- ...pi-en_code_renderer_CanvasRenderer.js.html | 154 ++---- ...api-en_code_renderer_WebGLRenderer.js.html | 263 +++++----- .../src/docs_api-en_code_view_View.js.html | 479 ++++++++++-------- docs/api-zh/code/renderer/CanvasRenderer.js | 50 +- docs/api-zh/code/renderer/WebGLRenderer.js | 5 +- docs/api-zh/code/view/View.js | 63 ++- docs/api-zh/index.html | 2 +- ...pi-zh_code_renderer_CanvasRenderer.js.html | 154 ++---- ...api-zh_code_renderer_WebGLRenderer.js.html | 263 +++++----- .../src/docs_api-zh_code_view_View.js.html | 479 ++++++++++-------- examples/align.html | 18 +- package.json | 2 +- src/view/View.js | 5 +- 402 files changed, 2259 insertions(+), 2008 deletions(-) diff --git a/build/amd/hilo-amd.js b/build/amd/hilo-amd.js index 08e5146f..96d87a1d 100644 --- a/build/amd/hilo-amd.js +++ b/build/amd/hilo-amd.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -168,7 +168,7 @@ return browser; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -205,7 +205,7 @@ return util; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -231,7 +231,7 @@ var Hilo = { * Hilo version * @type String */ - version:'1.1.4', + version:'1.1.5', /** * @language=en * Gets a globally unique id. Such as Stage1, Bitmap2 etc. @@ -521,7 +521,7 @@ return Hilo; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -704,7 +704,7 @@ return Class; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -884,7 +884,7 @@ return Matrix; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -1037,7 +1037,7 @@ return EventMixin; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -1118,7 +1118,7 @@ return Drawable; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -1212,7 +1212,7 @@ return Renderer; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -1350,53 +1350,9 @@ var CanvasRenderer = Class.create(/** @lends CanvasRenderer.prototype */{ //alignment var align = target.align; if(align){ - if(typeof align === 'function'){ - target.align(); - }else{ - var parent = target.parent; - if(parent){ - var w = target.width, h = target.height, - pw = parent.width, ph = parent.height; - switch(align){ - case 'TL': - x = 0; - y = 0; - break; - case 'T': - x = pw - w >> 1; - y = 0; - break; - case 'TR': - x = pw - w; - y = 0; - break; - case 'L': - x = 0; - y = ph - h >> 1; - break; - case 'C': - x = pw - w >> 1; - y = ph - h >> 1; - break; - case 'R': - x = pw - w; - y = ph - h >> 1; - break; - case 'BL': - x = 0; - y = ph - h; - break; - case 'B': - x = pw - w >> 1; - y = ph - h; - break; - case 'BR': - x = pw - w; - y = ph - h; - break; - } - } - } + var pos = target.getAlignPosition(); + x = pos.x; + y = pos.y; } if(x != 0 || y != 0) ctx.translate(x, y); @@ -1454,7 +1410,7 @@ return CanvasRenderer; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -1636,7 +1592,7 @@ return DOMRenderer; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -2068,12 +2024,13 @@ var WebGLRenderer = Class.create(/** @lends WebGLRenderer.prototype */{ sin = Math.sin(r); } + var pos = view.getAlignPosition(); mtx.a = cos*scaleX; mtx.b = sin*scaleX; mtx.c = -sin*scaleY; mtx.d = cos*scaleY; - mtx.tx = view.x - mtx.a * pivotX - mtx.c * pivotY; - mtx.ty = view.y - mtx.b * pivotX - mtx.d * pivotY; + mtx.tx = pos.x - mtx.a * pivotX - mtx.c * pivotY; + mtx.ty = pos.y - mtx.b * pivotX - mtx.d * pivotY; mtx.concat(ancestor.__webglWorldMatrix); }, @@ -2205,7 +2162,7 @@ return WebGLRenderer; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -2402,11 +2359,72 @@ return Class.create(/** @lends View.prototype */{ if(pivotX != 0) mtx.tx -= pivotX; if(pivotY != 0) mtx.ty -= pivotY; - mtx.concat(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, o.x, o.y); + + var pos = o.getAlignPosition(); + mtx.concat(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, pos.x, pos.y); } return mtx; }, + getAlignPosition: function(){ + var parent = this.parent; + var align = this.align; + var x = this.x; + var y = this.y; + + if(parent && this.align){ + if(typeof align === 'function'){ + return this.align(); + } + + var w = this.width, h = this.height, + pw = parent.width, ph = parent.height; + switch(align){ + case 'TL': + x = 0; + y = 0; + break; + case 'T': + x = pw - w >> 1; + y = 0; + break; + case 'TR': + x = pw - w; + y = 0; + break; + case 'L': + x = 0; + y = ph - h >> 1; + break; + case 'C': + x = pw - w >> 1; + y = ph - h >> 1; + break; + case 'R': + x = pw - w; + y = ph - h >> 1; + break; + case 'BL': + x = 0; + y = ph - h; + break; + case 'B': + x = pw - w >> 1; + y = ph - h; + break; + case 'BR': + x = pw - w; + y = ph - h; + break; + } + } + + return { + x:x, + y:y + }; + }, + /** * @language=en * Determining whether a point is in the circumscribed rectangle of current view. @@ -2632,7 +2650,7 @@ return View; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -2698,7 +2716,7 @@ return CacheMixin; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -3072,7 +3090,7 @@ return Container; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -3339,7 +3357,7 @@ return Stage; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -3417,7 +3435,7 @@ return Bitmap; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -3688,7 +3706,7 @@ return Sprite; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -3789,7 +3807,7 @@ return DOMElement; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -4342,7 +4360,7 @@ return Graphics; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -4595,7 +4613,7 @@ return Text; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -4779,7 +4797,7 @@ return BitmapText; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -4958,7 +4976,7 @@ return Button; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -5032,7 +5050,7 @@ return Class.create(/** @lends TextureAtlas.prototype */{ * @param {String} frames Frames message, eg:"0-5" means frame 0 to frame 5. * @param {Number} w The width of each frame. * @param {Number} h The height of each frame. - * @param {Bollean} loop Is play in loop. + * @param {Boolean} loop Is play in loop. * @param {Number} duration The time between each frame. default value is 1 (Frame), but if timeBased is true, default value will be duration(milli-second). * @example * //demo1 make one animation @@ -5195,7 +5213,7 @@ return TextureAtlas; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -5420,7 +5438,7 @@ return Ticker; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -5468,7 +5486,7 @@ if (!fnProto.bind) { }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -5586,7 +5604,7 @@ return drag; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -6028,7 +6046,7 @@ return Tween; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -6300,7 +6318,7 @@ return Ease; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -6348,7 +6366,7 @@ return ImageLoader; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -6415,7 +6433,7 @@ return ScriptLoader; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -6664,7 +6682,7 @@ return LoadQueue; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -6867,7 +6885,7 @@ return HTMLAudio; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -7184,7 +7202,7 @@ return WebAudio; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -7287,7 +7305,7 @@ return WebSound; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -7380,7 +7398,7 @@ return Camera; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -7567,7 +7585,7 @@ return Camera3d; }); /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo-amd.min.js b/build/amd/hilo-amd.min.js index 1fe3c7c6..37a56f5f 100644 --- a/build/amd/hilo-amd.min.js +++ b/build/amd/hilo-amd.min.js @@ -1,8 +1,8 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ -define("hilo/util/browser",function(){var t=function(){var t=navigator.userAgent,e=document,i=window,r=e.documentElement,n={iphone:/iphone/i.test(t),ipad:/ipad/i.test(t),ipod:/ipod/i.test(t),ios:/iphone|ipad|ipod/i.test(t),android:/android/i.test(t),webkit:/webkit/i.test(t),chrome:/chrome/i.test(t),safari:/safari/i.test(t),firefox:/firefox/i.test(t),ie:/msie/i.test(t),opera:/opera/i.test(t),supportTouch:"ontouchstart"in i,supportCanvas:null!=e.createElement("canvas").getContext,supportStorage:!1,supportOrientation:"orientation"in i||"orientation"in i.screen,supportDeviceMotion:"ondevicemotion"in i};try{var a="hilo";localStorage.setItem(a,a),localStorage.removeItem(a),n.supportStorage=!0}catch(o){}var s=n.jsVendor=n.webkit?"webkit":n.firefox?"webkit":n.opera?"o":n.ie?"ms":"",h=n.cssVendor="-"+s+"-",l=e.createElement("div"),c=l.style,u=void 0!=c[s+"Transform"],d=void 0!=c[s+"Perspective"];return d&&(l.id="test3d",c=e.createElement("style"),c.textContent="@media ("+h+"transform-3d){#test3d{height:3px}}",e.head.appendChild(c),r.appendChild(l),d=3==l.offsetHeight,e.head.removeChild(c),r.removeChild(l)),n.supportTransform=u,n.supportTransform3D=d,n}();return t}),define("hilo/util/util",function(){var t={copy:function(t,e,i){for(var r in e)i&&!t.hasOwnProperty(r)&&void 0===t[r]||(t[r]=e[r]);return t}};return t}),define("hilo/core/Hilo",["hilo/util/browser","hilo/util/util"],function(t,e){var i=window,r=document,n=r.documentElement,a=0,o={},s={version:"1.1.4",getUid:function(t){var e=++a;if(t){var i=t.charCodeAt(t.length-1);return i>=48&&i<=57&&(t+="_"),t+e}return e},viewToString:function(t){for(var e,i=t;i;)e=e?i.id+"."+e:i.id,i=i.parent;return e},copy:function(t,i,r){return e.copy(t,i,r),o.copy||(o.copy=!0,console.warn("Hilo.copy has been Deprecated! Use Hilo.util.copy instead.")),t},browser:t,event:function(){var t="ontouchstart"in i;return{POINTER_START:t?"touchstart":"mousedown",POINTER_MOVE:t?"touchmove":"mousemove",POINTER_END:t?"touchend":"mouseup"}}(),align:{TOP_LEFT:"TL",TOP:"T",TOP_RIGHT:"TR",LEFT:"L",CENTER:"C",RIGHT:"R",BOTTOM_LEFT:"BL",BOTTOM:"B",BOTTOM_RIGHT:"BR"},getElementRect:function(t){var e;try{e=t.getBoundingClientRect()}catch(r){e={top:t.offsetTop,left:t.offsetLeft,right:t.offsetLeft+t.offsetWidth,bottom:t.offsetTop+t.offsetHeight}}var a=(i.pageXOffset||n.scrollLeft)-(n.clientLeft||0)||0,o=(i.pageYOffset||n.scrollTop)-(n.clientTop||0)||0,s=i.getComputedStyle?getComputedStyle(t):t.currentStyle,h=parseInt,l=h(s.paddingLeft)+h(s.borderLeftWidth)||0,c=h(s.paddingTop)+h(s.borderTopWidth)||0,u=h(s.paddingRight)+h(s.borderRightWidth)||0,d=h(s.paddingBottom)+h(s.borderBottomWidth)||0,f=e.top||0,v=e.left||0,p=e.right||0,m=e.bottom||0;return{left:v+a+l,top:f+o+c,width:p-u-v-l,height:m-d-f-c}},createElement:function(t,e){var i,n,a,o=r.createElement(t);for(i in e)if(n=e[i],"style"===i)for(a in n)o.style[a]=n[a];else o[i]=n;return o},getElement:function(t){return r.getElementById(t)},setElementStyleByView:function(t){var e=t.drawable,i=e.domElement.style,r=t._stateCache||(t._stateCache={}),n=s.browser.jsVendor,a="px",o=!1;if(this.cacheStateIfChanged(t,["visible"],r)&&(i.display=t.visible?"":"none"),this.cacheStateIfChanged(t,["alpha"],r)&&(i.opacity=t.alpha),t.visible&&!(t.alpha<=0)){this.cacheStateIfChanged(t,["width"],r)&&(i.width=t.width+a),this.cacheStateIfChanged(t,["height"],r)&&(i.height=t.height+a),this.cacheStateIfChanged(t,["depth"],r)&&(i.zIndex=t.depth+1),(o=this.cacheStateIfChanged(t,["pivotX","pivotY"],r))&&(i[n+"TransformOrigin"]=t.pivotX+a+" "+t.pivotY+a),(this.cacheStateIfChanged(t,["x","y","rotation","scaleX","scaleY"],r)||o)&&(i[n+"Transform"]=this.getTransformCSS(t)),this.cacheStateIfChanged(t,["background"],r)&&(i.backgroundColor=t.background),i.pointerEvents||(i.pointerEvents="none");var h=e.image;if(h){var l=h.src;l!==r.image&&(r.image=l,i.backgroundImage="url("+l+")");var c=e.rect;if(c){var u=c[0],d=c[1];u!==r.sx&&(r.sx=u,i.backgroundPositionX=-u+a),d!==r.sy&&(r.sy=d,i.backgroundPositionY=-d+a)}}var f=t.mask;if(f){var v=f.drawable.domElement.style.backgroundImage;v!==r.maskImage&&(r.maskImage=v,i[n+"MaskImage"]=v,i[n+"MaskRepeat"]="no-repeat");var p=f.x,m=f.y;p===r.maskX&&m===r.maskY||(r.maskX=p,r.maskY=m,i[n+"MaskPosition"]=p+a+" "+m+a)}}},cacheStateIfChanged:function(t,e,i){var r,n,a,o,s=!1;for(r=0,n=e.length;r=6?(e=s[0],i=s[1],r=s[2],n=s[3],a=s[4],o=s[5]):(e=t.a,i=t.b,r=t.c,n=t.d,a=t.tx,o=t.ty),this.a=h*e+l*r,this.b=h*i+l*n,this.c=c*e+u*r,this.d=c*i+u*n,this.tx=d*e+f*r+a,this.ty=d*i+f*n+o,this},rotate:function(t){var e=Math.sin(t),i=Math.cos(t),r=this.a,n=this.b,a=this.c,o=this.d,s=this.tx,h=this.ty;return this.a=r*i-n*e,this.b=r*e+n*i,this.c=a*i-o*e,this.d=a*e+o*i,this.tx=s*i-h*e,this.ty=s*e+h*i,this},scale:function(t,e){return this.a*=t,this.d*=e,this.c*=t,this.b*=e,this.tx*=t,this.ty*=e,this},translate:function(t,e){return this.tx+=t,this.ty+=e,this},identity:function(){return this.a=this.d=1,this.b=this.c=this.tx=this.ty=0,this},invert:function(){var t=this.a,e=this.b,i=this.c,r=this.d,n=this.tx,a=t*r-e*i;return this.a=r/a,this.b=-e/a,this.c=-i/a,this.d=t/a,this.tx=(i*this.ty-r*n)/a,this.ty=-(t*this.ty-e*n)/a,this},transformPoint:function(t,e,i){var r=t.x*this.a+t.y*this.c+this.tx,n=t.x*this.b+t.y*this.d+this.ty;return e&&(r=r+.5>>0,n=n+.5>>0),i?{x:r,y:n}:(t.x=r,t.y=n,t)}});return e}),define("hilo/event/EventMixin",["hilo/core/Class"],function(t){var e={_listeners:null,on:function(t,e,i){for(var r=this._listeners=this._listeners||{},n=r[t]=r[t]||[],a=0,o=n.length;a-1&&o.splice(c,1)}}return 0==o.length&&delete a[n],!0}return!1}},i=t.create({constructor:function(t,e,i){this.type=t,this.target=e,this.detail=i,this.timeStamp=+new Date},type:null,target:null,detail:null,timeStamp:0,stopImmediatePropagation:function(){this._stopped=!0}}),r=window.Event;if(r){var n=r.prototype,a=n.stopImmediatePropagation;n.stopImmediatePropagation=function(){a&&a.call(this),this._stopped=!0}}return e}),define("hilo/view/Drawable",["hilo/core/Class","hilo/util/util"],function(t,e){var i=t.create({constructor:function(t){this.init(t)},image:null,rect:null,init:function(t){var r=this,n=r.image;i.isDrawable(t)?r.image=t:e.copy(r,t,!0);var a=r.image;if("string"==typeof a){if(!n||a!==n.getAttribute("src")){r.image=null;var o=new Image;return t.crossOrigin&&(o.crossOrigin=t.crossOrigin),o.onload=function(){o.onload=null,r.init(o)},void(o.src=a)}a=r.image=n}a&&!r.rect&&(r.rect=[0,0,a.width,a.height])},Statics:{isDrawable:function(t){if(!t||!t.tagName)return!1;var e=t.tagName.toLowerCase();return"img"===e||"canvas"===e||"video"===e}}});return i}),define("hilo/renderer/Renderer",["hilo/core/Class","hilo/util/util"],function(t,e){var i=t.create({constructor:function(t){t=t||{},e.copy(this,t,!0)},renderType:null,canvas:null,stage:null,blendMode:"source-over",startDraw:function(t){},draw:function(t){},endDraw:function(t){},transform:function(){},hide:function(){},remove:function(t){},clear:function(t,e,i,r){},resize:function(t,e){}});return i}),define("hilo/renderer/CanvasRenderer",["hilo/core/Class","hilo/core/Hilo","hilo/renderer/Renderer"],function(t,e,i){var r=t.create({Extends:i,constructor:function(t){r.superclass.constructor.call(this,t),this.context=this.canvas.getContext("2d")},renderType:"canvas",context:null,startDraw:function(t){return!!(t.visible&&t.alpha>0)&&(t===this.stage&&this.context.clearRect(0,0,t.width,t.height),t.blendMode!==this.blendMode&&(this.context.globalCompositeOperation=this.blendMode=t.blendMode),this.context.save(),!0)},draw:function(t){var e=this.context,i=t.width,r=t.height,n=t.background;n&&(e.fillStyle=n,e.fillRect(0,0,i,r));var a=t.drawable,o=a&&a.image;if(o){var s=a.rect,h=s[2],l=s[3],c=s[4],u=s[5];if(!h||!l)return;i||r||(i=t.width=h,r=t.height=l),(c||u)&&e.translate(c-.5*h,u-.5*l),e.drawImage(o,s[0],s[1],h,l,0,0,i,r)}},endDraw:function(t){this.context.restore()},transform:function(t){var i=t.drawable;if(i&&i.domElement)return void e.setElementStyleByView(t);var r=this.context,n=t.scaleX,a=t.scaleY;if(t===this.stage){var o=this.canvas.style,s=t._scaleX,h=t._scaleY,l=!1;(!s&&1!=n||s&&s!=n)&&(t._scaleX=n,o.width=n*t.width+"px",l=!0),(!h&&1!=a||h&&h!=a)&&(t._scaleY=a,o.height=a*t.height+"px",l=!0),l&&t.updateViewport()}else{var c=t.x,u=t.y,d=t.pivotX,f=t.pivotY,v=t.rotation%360,p=t.mask;p&&(p._render(this),r.clip());var m=t.align;if(m)if("function"==typeof m)t.align();else{var g=t.parent;if(g){var _=t.width,x=t.height,y=g.width,w=g.height;switch(m){case"TL":c=0,u=0;break;case"T":c=y-_>>1,u=0;break;case"TR":c=y-_,u=0;break;case"L":c=0,u=w-x>>1;break;case"C":c=y-_>>1,u=w-x>>1;break;case"R":c=y-_,u=w-x>>1;break;case"BL":c=0,u=w-x;break;case"B":c=y-_>>1,u=w-x;break;case"BR":c=y-_,u=w-x}}}0==c&&0==u||r.translate(c,u),0!=v&&r.rotate(v*Math.PI/180),1==n&&1==a||r.scale(n,a),0==d&&0==f||r.translate(-d,-f)}t.alpha>0&&(r.globalAlpha*=t.alpha)},remove:function(t){var e=t.drawable,i=e&&e.domElement;if(i){var r=i.parentNode;r&&r.removeChild(i)}},clear:function(t,e,i,r){this.context.clearRect(t,e,i,r)},resize:function(t,e){var i=this.canvas,r=this.stage,n=i.style;i.width=t,i.height=e,n.width=r.width*r.scaleX+"px",n.height=r.height*r.scaleY+"px"}});return r}),define("hilo/renderer/DOMRenderer",["hilo/core/Class","hilo/core/Hilo","hilo/renderer/Renderer","hilo/view/Drawable"],function(t,e,i,r){var n=function(){function a(t,i){var r=t.tagName||"div",n=i.image,a=t.width||n&&n.width,o=t.height||n&&n.height,s=e.createElement(r),h=s.style;if(t.id&&(s.id=t.id),h.position="absolute",h.left=(t.left||0)+"px",h.top=(t.top||0)+"px",h.width=a+"px",h.height=o+"px","canvas"==r){if(s.width=a,s.height=o,n){var l=s.getContext("2d"),c=i.rect||[0,0,a,o];l.drawImage(n,c[0],c[1],c[2],c[3],t.x||0,t.y||0,t.width||c[2],t.height||c[3])}}else if(h.opacity=void 0!=t.alpha?t.alpha:1,(t===this.stage||t.clipChildren)&&(h.overflow="hidden"),n&&n.src){h.backgroundImage="url("+n.src+")";var u=t.rectX||0,d=t.rectY||0;h.backgroundPosition=-u+"px "+-d+"px"}return s}return t.create({Extends:i,constructor:function(t){n.superclass.constructor.call(this,t)},renderType:"dom",startDraw:function(t){var e=t.drawable=t.drawable||new r;return e.domElement=e.domElement||a(t,e),!0},draw:function(t){var e=t.parent,i=t.drawable.domElement,r=i.parentNode;if(e){var n=e.drawable.domElement;if(n!=r&&n.appendChild(i),!t.width&&!t.height){var a=t.drawable.rect;a&&(a[2]||a[3])&&(t.width=a[2],t.height=a[3])}}else t!==this.stage||r||(i.style.overflow="hidden",this.canvas.appendChild(i))},transform:function(t){if(e.setElementStyleByView(t),t===this.stage){var i=this.canvas.style,r=t._scaleX,n=t._scaleY,a=t.scaleX,o=t.scaleY;(!r&&1!=a||r&&r!=a)&&(t._scaleX=a,i.width=a*t.width+"px"),(!n&&1!=o||n&&n!=o)&&(t._scaleY=o,i.height=o*t.height+"px")}},remove:function(t){var e=t.drawable,i=e&&e.domElement;if(i){var r=i.parentNode;r&&r.removeChild(i)}},hide:function(t){var e=t.drawable&&t.drawable.domElement;e&&(e.style.display="none")},resize:function(t,e){var i=this.canvas.style;i.width=t+"px",i.height=e+"px","absolute"!=i.position&&(i.position="relative")}})}();return n}),define("hilo/renderer/WebGLRenderer",["hilo/core/Class","hilo/core/Hilo","hilo/renderer/Renderer","hilo/geom/Matrix"],function(t,e,i,r){var n=Math.PI/180,a=t.create({Extends:i,Statics:{MAX_BATCH_NUM:2e3,ATTRIBUTE_NUM:5,isSupport:function(){if(void 0==this._isSupported){var t=document.createElement("canvas");t.getContext&&(t.getContext("webgl")||t.getContext("experimental-webgl"))?this._isSupported=!0:this._isSupported=!1}return this._isSupported}},renderType:"webgl",gl:null,_isContextLost:!1,_cacheTexture:{},constructor:function(t){a.superclass.constructor.call(this,t);var e=this;this.gl=this.canvas.getContext("webgl")||this.canvas.getContext("experimental-webgl"),this.maxBatchNum=a.MAX_BATCH_NUM,this.positionStride=4*a.ATTRIBUTE_NUM;var i=this.maxBatchNum*a.ATTRIBUTE_NUM*4,r=6*this.maxBatchNum;this.arrayBuffer=new ArrayBuffer(4*i),this.float32Array=new Float32Array(this.arrayBuffer),this.uint32Array=new Uint32Array(this.arrayBuffer),this.indexs=new Uint16Array(r);for(var n=0,o=0;n0)&&(t===this.stage&&this.clear(),!0)},draw:function(t){var e=t.width,i=t.height,r=(t.background,t.drawable),n=r&&r.image;if(n){var a=r.rect,o=a[2],s=a[3];e||i||(e=t.width=o,i=t.height=s),this.batchIndex>=this.maxBatchNum&&this._renderBatches();var h=this._createVertexs(n,a[0],a[1],o,s,0,0,e,i),l=this.batchIndex*this.positionStride,c=this.float32Array,u=this.uint32Array,d=(t.tint>>16)+(65280&t.tint)+((255&t.tint)<<16)+(255*t.__webglRenderAlpha<<24);c[l+0]=h[0],c[l+1]=h[1],c[l+2]=h[2],c[l+3]=h[3],u[l+4]=d,c[l+5]=h[4],c[l+6]=h[5],c[l+7]=h[6],c[l+8]=h[7],u[l+9]=d,c[l+10]=h[8],c[l+11]=h[9],c[l+12]=h[10],c[l+13]=h[11],u[l+14]=d,c[l+15]=h[12],c[l+16]=h[13],c[l+17]=h[14],c[l+18]=h[15],u[l+19]=d;for(var f=t.__webglWorldMatrix,v=0;v<4;v++){var p=c[l+5*v],m=c[l+5*v+1];c[l+5*v]=f.a*p+f.c*m+f.tx,c[l+5*v+1]=f.b*p+f.d*m+f.ty}t.__textureImage=n,this.sprites[this.batchIndex++]=t}},endDraw:function(t){t===this.stage&&this._renderBatches()},transform:function(t){var i=t.drawable;if(i&&i.domElement)return void e.setElementStyleByView(t);var n=t.scaleX,a=t.scaleY;if(t===this.stage){var o=this.canvas.style,s=t._scaleX,h=t._scaleY,l=!1;(!s&&1!=n||s&&s!=n)&&(t._scaleX=n,o.width=n*t.width+"px",l=!0),(!h&&1!=a||h&&h!=a)&&(t._scaleY=a,o.height=a*t.height+"px",l=!0),l&&t.updateViewport(),t.__webglWorldMatrix=t.__webglWorldMatrix||new r(1,0,0,1,0,0)}else t.parent&&(t.__webglWorldMatrix=t.__webglWorldMatrix||new r(1,0,0,1,0,0),this._setConcatenatedMatrix(t,t.parent));t.alpha>0&&(t.parent&&t.parent.__webglRenderAlpha?t.__webglRenderAlpha=t.alpha*t.parent.__webglRenderAlpha:t.__webglRenderAlpha=t.alpha)},remove:function(t){var e=t.drawable,i=e&&e.domElement;if(i){var r=i.parentNode;r&&r.removeChild(i)}},clear:function(t,e,i,r){this.gl.clear(this.gl.COLOR_BUFFER_BIT)},resize:function(t,e){if(this.width!==t||this.height!==e){var i=this.canvas,r=this.stage,n=i.style;this.width=i.width=t,this.height=i.height=e,n.width=r.width*r.scaleX+"px",n.height=r.height*r.scaleY+"px",this.gl.viewport(0,0,t,e),this.canvasHalfWidth=.5*t,this.canvasHalfHeight=.5*e,this._uploadProjectionTransform(!0)}},_renderBatches:function(){var t=this.gl;t.bufferSubData(t.ARRAY_BUFFER,0,this.uint32Array.subarray(0,this.batchIndex*this.positionStride));for(var e=0,i=0,r=null,n=0;n0&&(i.bindTexture(i.TEXTURE_2D,this._getTexture(this.sprites[t])),i.drawElements(i.TRIANGLES,6*r,i.UNSIGNED_SHORT,6*t*2))},_uploadProjectionTransform:function(t){this._projectionTransformElements&&!t||(this._projectionTransformElements=new Float32Array([1/this.canvasHalfWidth,0,0,0,-1/this.canvasHalfHeight,0,-1,1,1])),this.gl.uniformMatrix3fv(this.u_projectionTransform,!1,this._projectionTransformElements)},_initShaders:function(){var t=" attribute vec2 a_position;\n attribute vec2 a_TexCoord;\n attribute vec4 a_tint;\n uniform mat3 u_projectionTransform;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_Position = vec4((u_projectionTransform * vec3(a_position, 1.0)).xy, 1.0, 1.0);\n v_TexCoord = a_TexCoord;\n v_tint = vec4(a_tint.rgb * a_tint.a, a_tint.a);\n }\n ",e="\n precision mediump float;\n uniform sampler2D u_Sampler;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_FragColor = texture2D(u_Sampler, v_TexCoord) * v_tint;\n }\n ";this.defaultShader=new o(this,{v:t,f:e},{attributes:["a_position","a_TexCoord","a_tint"],uniforms:["u_projectionTransform","u_Sampler"]})},_createVertexs:function(t,e,i,r,n,a,o,s,h){var l=this.__tempVertexs||[],c=t.width,u=t.height;r/=c,n/=u,e/=c,i/=u,s=s,h=h,a=a,o=o,r+e>1&&(r=1-e),n+i>1&&(n=1-i);var d=0;return l[d++]=a,l[d++]=o,l[d++]=e,l[d++]=i,l[d++]=a+s,l[d++]=o,l[d++]=e+r,l[d++]=i,l[d++]=a,l[d++]=o+h,l[d++]=e,l[d++]=i+n,l[d++]=a+s,l[d++]=o+h,l[d++]=e+r,l[d++]=i+n,l},_setConcatenatedMatrix:function(t,e){var i=t.__webglWorldMatrix,r=1,a=0,o=t.rotation%360,s=t.pivotX,h=t.pivotY,l=t.scaleX,c=t.scaleY;if(o){var u=o*n;r=Math.cos(u),a=Math.sin(u)}i.a=r*l,i.b=a*l,i.c=-a*c,i.d=r*c,i.tx=t.x-i.a*s-i.c*h,i.ty=t.y-i.b*s-i.d*h,i.concat(e.__webglWorldMatrix)},_getTexture:function(t){var e=t.__textureImage,i=this._cacheTexture[e.src];return i||(i=this.activeShader.uploadTexture(e)),i}}),o=function(t,e,i){this.renderer=t,this.gl=t.gl,this.program=this._createProgram(this.gl,e.v,e.f),i=i||{},this.attributes=i.attributes||[],this.uniforms=i.uniforms||[]};return o.prototype={active:function(){var t=this,e=t.renderer,i=t.gl,r=t.program;r&&i&&(e.activeShader=t,i.useProgram(r),t.attributes.forEach(function(t){e[t]=i.getAttribLocation(r,t),i.enableVertexAttribArray(e[t])}),t.uniforms.forEach(function(t){e[t]=i.getUniformLocation(r,t)}),t.width===e.width&&t.height===e.height||(t.width=e.width,t.height=e.height,e._uploadProjectionTransform()))},uploadTexture:function(t){var e=this.gl,i=this.renderer,r=e.createTexture(),n=i.u_Sampler;return e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,r),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,1),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.uniform1i(n,0),e.bindTexture(e.TEXTURE_2D,null),this.renderer._cacheTexture[t.src]=r,r},_createProgram:function(t,e,i){var r=this._createShader(t,t.VERTEX_SHADER,e),n=this._createShader(t,t.FRAGMENT_SHADER,i);if(!r||!n)return null;var a=t.createProgram();if(a){t.attachShader(a,r),t.attachShader(a,n),t.linkProgram(a),t.deleteShader(n),t.deleteShader(r);var o=t.getProgramParameter(a,t.LINK_STATUS);if(!o){var s=t.getProgramInfoLog(a);return console.log("Failed to link program: "+s),t.deleteProgram(a),null}}return a},_createShader:function(t,e,i){var r=t.createShader(e);if(r){t.shaderSource(r,i),t.compileShader(r);var n=t.getShaderParameter(r,t.COMPILE_STATUS);if(!n){var a=t.getShaderInfoLog(r);return console.log("Failed to compile shader: "+a),t.deleteShader(r),null}}return r}},a}),define("hilo/view/View",["hilo/core/Hilo","hilo/core/Class","hilo/event/EventMixin","hilo/geom/Matrix","hilo/util/util"],function(t,e,i,r,n){var a=function(){function a(t,e,i){for(var r,n,a,o,s=0,h=!1,l=0,c=i.length;ld.x?(r=d.x,n=u.x):(r=u.x,n=d.x),t>=r&&t<=n))h=!0;else if(u.y>d.y?(a=d.y,o=u.y):(a=u.y,o=d.y),!(eo)){var f=(e-u.y)*(d.x-u.x)/(d.y-u.y)+u.x;if(f>t?s++:f==t&&(h=!0),u.x>t&&u.y==e){var v=i[(c+l-1)%c];(v.ye||v.y>e&&d.ys?s=c:cl?l=c:c=0)return!1;u>i.overlap&&(i.overlap=u,i.normal.x=v.x,i.normal.y=v.y)}return i}return e.create({Mixes:i,constructor:function(e){e=e||{},this.id=this.id||e.id||t.getUid("View"),n.copy(this,e,!0)},tint:16777215,id:null,x:0,y:0,width:0,height:0,alpha:1,rotation:0,visible:!0,pivotX:0,pivotY:0,scaleX:1,scaleY:1,pointerEnabled:!0,background:null,mask:null,align:null,drawable:null,boundsArea:null,parent:null,depth:-1,blendMode:"source-over",getStage:function(){for(var t,e=this;t=e.parent;)e=t;return e.canvas?e:null},getScaledWidth:function(){return this.width*this.scaleX},getScaledHeight:function(){return this.height*this.scaleY},addTo:function(t,e){return"number"==typeof e?t.addChildAt(this,e):t.addChild(this),this},removeFromParent:function(){var t=this.parent;return t&&t.removeChild(this),this},getBounds:function(){for(var t,e,i,r,n,a,o,s=this.width,h=this.height,l=this.getConcatenatedMatrix(),c=this.boundsArea||[{x:0,y:0},{x:s,y:0},{x:s,y:h},{x:0,y:h}],u=[],d=0,f=c.length;de?r=e:ni?a=i:o=r.x&&t<=r.x+r.width&&e>=r.y&&e<=r.y+r.height;return n&&i&&(n=a(t,e,r)),n},hitTestObject:function(t,e){var i=this.getBounds(),r=t.getBounds(),n=i.x<=r.x+r.width&&r.x<=i.x+i.width&&i.y<=r.y+r.height&&r.y<=i.y+i.height;return n&&e&&(n=o(i,r)),!!n},_render:function(t,e){this.onUpdate&&this.onUpdate(e)===!1||!t.startDraw(this)||(t.transform(this),this.render(t,e),t.endDraw(this))},_fireMouseEvent:function(t){if(t.eventCurrentTarget=this,this.fire(t),"mousemove"==t.type){if(!this.__mouseOver){this.__mouseOver=!0;var e=n.copy({},t);e.type="mouseover",this.fire(e)}}else"mouseout"==t.type&&(this.__mouseOver=!1);var i=this.parent;t._stopped||t._stopPropagationed||!i||("mouseout"==t.type||"touchout"==t.type?i.hitTestPoint(t.stageX,t.stageY,!0)||i._fireMouseEvent(t):i._fireMouseEvent(t))},onUpdate:null,render:function(t,e){t.draw(this)},toString:function(){return t.viewToString(this)}})}();return a}),define("hilo/view/CacheMixin",["hilo/view/Drawable","hilo/util/browser"],function(t,e){var i,r,n={_cacheDirty:!0,cache:function(t){(t||this._cacheDirty||!this.drawable)&&this.updateCache()},updateCache:function(){e.supportCanvas&&(i||(i=document.createElement("canvas"),r=i.getContext("2d")),i.width=this.width,i.height=this.height,this._draw(r),this.drawable=this.drawable||new t,this.drawable.init({image:i.toDataURL()}),this._cacheDirty=!1)},setCacheDirty:function(t){this._cacheDirty=t}};return n}),define("hilo/view/Container",["hilo/core/Hilo","hilo/core/Class","hilo/view/View"],function(t,e,i){var r=e.create({Extends:i,constructor:function(e){e=e||{},this.id=this.id||e.id||t.getUid("Container"),r.superclass.constructor.call(this,e),this.children?this._updateChildren():this.children=[]},children:null,pointerChildren:!0,clipChildren:!1,getNumChildren:function(){return this.children.length},addChildAt:function(t,e){var i=this.children,r=i.length,n=t.parent;e=e<0?0:e>r?r:e;var a=this.getChildIndex(t);if(a==e)return this;if(a>=0?(i.splice(a,1),e=e==r?r-1:e):n&&n.removeChild(t),i.splice(e,0,t),a<0)this._updateChildren(e);else{var o=a=e.length)return null;var i=e[t];if(i){if(!i.__renderer)for(var r=i;r=r.parent;){if(r.renderer){i.__renderer=r.renderer;break}if(r.__renderer){i.__renderer=r.__renderer;break}}i.__renderer&&i.__renderer.remove(i),i.parent=null,i.depth=-1}return e.splice(t,1),this._updateChildren(t),i},removeChild:function(t){return this.removeChildAt(this.getChildIndex(t))},removeChildById:function(t){for(var e,i=this.children,r=0,n=i.length;r=e.length?null:e[t]},getChildById:function(t){for(var e,i=this.children,r=0,n=i.length;r=0&&r!=e){var n=i.length;e=e<0?0:e>=n?n-1:e,i.splice(r,1),i.splice(e,0,t),this._updateChildren()}return this},swapChildren:function(t,e){var i=this.children,r=this.getChildIndex(t),n=this.getChildIndex(e);t.depth=n,i[n]=t,e.depth=r,i[r]=e},swapChildrenAt:function(t,e){var i=this.children,r=this.getChildAt(t),n=this.getChildAt(e);r.depth=e,i[e]=r,n.depth=t,i[t]=n},sortChildren:function(t){var e=t,i=this.children;if("string"==typeof e){var r=e;e=function(t,e){return e[r]-t[r]}}i.sort(e),this._updateChildren()},_updateChildren:function(t,e){var i,r=this.children;t=t||0,e=e||r.length;for(var n=t;n=0;l--)if(a=h[l],!(!a||!a.visible||a.alpha<=0||n&&!a.pointerEnabled))if(a.children&&a.children.length&&(!n||a.pointerChildren)&&(o=a.getViewAtPoint(t,e,i,r,n)),o){if(!r)return o;o.length&&(s=s.concat(o))}else if(a.hitTestPoint(t,e,i)){if(!r)return a;s.push(a)}return r&&s.length?s:null},render:function(t,e){r.superclass.render.call(this,t,e);var i,n,a,o=this.children.slice(0);for(i=0,n=o.length;ir?r:e,i[e]=t,t.name&&(this._frameNames[t.name]=t),(0!=e||this.width)&&this.height||(this.width=t.rect[2],this.height=t.rect[3]),this},getFrame:function(t){if("number"==typeof t){var e=this._frames;return t<0||t>=e.length?null:e[t]}return this._frameNames[t]},getFrameIndex:function(t){var e=this._frames,i=e.length,r=-1;if("number"==typeof t)r=t;else{var n="string"==typeof t?this._frameNames[t]:t;if(n)for(var a=0;a=i?i-1:r,this.paused=e,this._firstRender=!0,this},_render:function(t,e){var i,r=this.currentFrame;if(this._firstRender?(i=r,this._firstRender=!1):i=this._nextFrame(e),i!=r){this.currentFrame=i;var a=this._frames[i].callback;a&&a.call(this)}this.onEnterFrame&&this.onEnterFrame(i),this.drawable.init(this._frames[i]),n.superclass._render.call(this,t,e)},_nextFrame:function(t){var e=this._frames,i=e.length,r=this.currentFrame,n=e[r],a=n.duration||this.interval,o=this._frameElapsed,s=0!=r||this.drawable?o+(this.timeBased?t:1):0;return o=this._frameElapsed=s=i-1)&&this.stop(),this.paused||0!=o||(null!=n.next?r=this.getFrameIndex(n.next):r>=i-1?r=0:this.drawable&&r++),r},setFrameCallback:function(t,e){return t=this.getFrame(t),t&&(t.callback=e),this},onEnterFrame:null});return n}),define("hilo/view/DOMElement",["hilo/core/Hilo","hilo/core/Class","hilo/view/View","hilo/view/Drawable"],function(t,e,i,r){var n=e.create({Extends:i,constructor:function(e){e=e||{},this.id=this.id||e.id||t.getUid("DOMElement"),n.superclass.constructor.call(this,e),this.drawable=new r;var i=this.drawable.domElement=e.element||t.createElement("div");i.id=this.id,this.pointerEnabled&&(i.style.pointerEvents="visible")},_render:function(t,e){this.onUpdate&&this.onUpdate(e)===!1||(t.transform(this),this.visible&&this.alpha>0&&this.render(t,e))},render:function(t,e){if("dom"!==t.renderType){var i,r=t.canvas,n=this.drawable.domElement,a=this.depth,o=r.nextSibling;if(n.parentNode)return;for(;o&&3!=o.nodeType&&(i=parseInt(o.style.zIndex)||0,!(i<=0||i>a));)o=o.nextSibling;r.parentNode.insertBefore(this.drawable.domElement,o)}else t.draw(this)}});return n}),define("hilo/view/Graphics",["hilo/core/Hilo","hilo/core/Class","hilo/view/View","hilo/view/CacheMixin"],function(t,e,i,r){var n=function(){var a=document.createElement("canvas"),o=a.getContext&&a.getContext("2d");return e.create({Extends:i,Mixes:r,constructor:function(e){e=e||{},this.id=this.id||e.id||t.getUid("Graphics"),n.superclass.constructor.call(this,e),this._actions=[]},lineWidth:1,lineAlpha:1,lineCap:null,lineJoin:null,miterLimit:10,hasStroke:!1,strokeStyle:"0",hasFill:!1,fillStyle:"0",fillAlpha:0,lineStyle:function(t,e,i,r,n,a){var o=this,s=o._addAction;return s.call(o,["lineWidth",o.lineWidth=t||1]),s.call(o,["strokeStyle",o.strokeStyle=e||"0"]),s.call(o,["lineAlpha",o.lineAlpha=i||1]),void 0!=r&&s.call(o,["lineCap",o.lineCap=r]),void 0!=n&&s.call(o,["lineJoin",o.lineJoin=n]),void 0!=a&&s.call(o,["miterLimit",o.miterLimit=a]),o.hasStroke=!0,o},beginFill:function(t,e){var i=this,r=i._addAction;return r.call(i,["fillStyle",i.fillStyle=t]),r.call(i,["fillAlpha",i.fillAlpha=e||1]),i.hasFill=!0,i},endFill:function(){var t=this,e=t._addAction;return t.hasStroke&&e.call(t,["stroke"]),t.hasFill&&e.call(t,["fill"]),t.setCacheDirty(!0),t},beginLinearGradientFill:function(t,e,i,r,n,a){for(var s=this,h=o.createLinearGradient(t,e,i,r),l=0,c=n.length;l1?a.slice(1):null;"function"==typeof t[o]?t[o].apply(t,s):t[o]=a[1]}},render:function(t,e){var i=this;"canvas"===t.renderType?i._draw(t.context):(i.cache(),t.draw(i))},clear:function(){var t=this;return t._actions.length=0,t.lineWidth=1,t.lineAlpha=1,t.lineCap=null,t.lineJoin=null,t.miterLimit=10,t.hasStroke=!1,t.strokeStyle="0",t.hasFill=!1,t.fillStyle="0",t.fillAlpha=1,t.setCacheDirty(!0),t},_addAction:function(t){var e=this;return e._actions.push(t),e}})}();return n}),define("hilo/view/Text",["hilo/core/Class","hilo/core/Hilo","hilo/view/View","hilo/view/CacheMixin"],function(t,e,i,r){var n=t.create({Extends:i,Mixes:r,constructor:function(t){t=t||{},this.id=this.id||t.id||e.getUid("Text"),n.superclass.constructor.call(this,t),t.font||(this.font="12px arial"),this._fontHeight=n.measureFontHeight(this.font)},text:null,color:"#000",textAlign:null,textVAlign:null,outline:!1,lineSpacing:0,maxWidth:200,font:null,textWidth:0,textHeight:0,setFont:function(t){var e=this;return e.font!==t&&(e.font=t,e._fontHeight=n.measureFontHeight(t)),e},render:function(t,e){var i=this;if("canvas"===t.renderType)this.drawable?t.draw(i):i._draw(t.context);else if("dom"===t.renderType){var r=i.drawable,n=r.domElement,a=n.style;a.font=i.font,a.textAlign=i.textAlign,a.color=i.color,a.width=i.width+"px",a.height=i.height+"px",a.lineHeight=i._fontHeight+i.lineSpacing+"px",n.innerHTML=i.text,t.draw(this)}else i.cache(),t.draw(i)},_draw:function(t){var e=this,i=e.text.toString();if(i){t.font=e.font,t.textAlign=e.textAlign,t.textBaseline="top";var r,n,a,o,s,h=i.split(/\r\n|\r|\n|/),l=0,c=0,u=e._fontHeight+e.lineSpacing,d=[];for(r=0,o=h.length;re.maxWidth?(d.push({text:m,y:c}),l>1;break;case"bottom":_=e.height-e.textHeight}var x=e.background;for(x&&(t.fillStyle=x,t.fillRect(0,0,e.width,e.height)),e.outline?t.strokeStyle=e.color:t.fillStyle=e.color,r=0;r>1;break;case"right":case"end":n=a}r.outline?t.strokeText(e,n,i):t.fillText(e,n,i)},Statics:{measureFontHeight:function(t){var i,r=document.documentElement,n=e.createElement("div",{style:{font:t,position:"absolute"},innerHTML:"M"});return r.appendChild(n),i=n.offsetHeight,r.removeChild(n),i}}});return n}),define("hilo/view/BitmapText",["hilo/core/Class","hilo/core/Hilo","hilo/view/Container","hilo/view/Bitmap"],function(t,e,i,r){var n=t.create({Extends:i,constructor:function(t){t=t||{},this.id=this.id||t.id||e.getUid("BitmapText"),n.superclass.constructor.call(this,t);var i=t.text+"";i&&(this.text="",this.setText(i)),this.pointerChildren=!1},glyphs:null,letterSpacing:0,text:"",textAlign:"left",setText:function(t){var e=this,i=t.toString(),r=i.length;if(e.text!=i){e.text=i;var n,a,o,s,h=0,l=0,c=0;for(n=0;n0?e.letterSpacing:0),e.children[n]?(s=e.children[n],s.setImage(o.image,o.rect)):(s=e._createBitmap(o),e.addChild(s)),s.x=c,h=c+o.rect[2],l=Math.max(l,o.rect[3]));for(n=e.children.length-1;n>=r;n--)e._releaseBitmap(e.children[n]),e.children[n].removeFromParent();return e.width=h,e.height=l,this.setTextAlign(),e}},_createBitmap:function(t){var e;return n._pool.length?(e=n._pool.pop(),e.setImage(t.image,t.rect)):e=new r({image:t.image,rect:t.rect}),e},_releaseBitmap:function(t){n._pool.push(t)},setTextAlign:function(t){switch(this.textAlign=t||this.textAlign,this.textAlign){case"center":this.pivotX=.5*this.width;break;case"right":this.pivotX=this.width;break;case"left":default:this.pivotX=0}return this},hasGlyphs:function(t){var e=this.glyphs;if(!e)return!1;t=t.toString();var i,r=t.length;for(i=0;i=this._targetFPS?(this._measuredFPS=1e3/(this._tickTime/this._tickCount)+.5>>0,this._tickCount=0,this._tickTime=0):this._tickTime+=t-this._lastTime,this._lastTime=t;for(var r=i.slice(0),n=0,a=r.length;n=0&&e.splice(i,1)},nextTick:function(t){var e=this,i={tick:function(r){e.removeTick(i),t()}};return e.addTick(i),i},timeout:function(t,e){var i=this,r=(new Date).getTime()+e,n={tick:function(){var e=(new Date).getTime(),a=e-r;a>=0&&(i.removeTick(n),t())}};return i.addTick(n),n},interval:function(t,e){var i=this,r=(new Date).getTime()+e,n={tick:function(){var i=(new Date).getTime(),n=i-r;n>=0&&(n=r)return-1;for(e<0&&(e=r+e),i=e;i=1?1:s;var l=n.ease?n.ease(s):s;n.reverse&&(n._reverseFlag<0&&(s=1-s,l=1-l),s<1e-7&&(n.repeat>0&&n._repeatCount++>=n.repeat||0==n.repeat&&!n.loop?h=!0:(n._startTime=i(),n._pausedTime=0,n._reverseFlag*=-1))),0==n.time&&(o=n.onStart)&&o.call(n,n),n.time=a,n._render(l),(o=n.onUpdate)&&o.call(n,s,n),s>=1&&(n.reverse?(n._startTime=i(),n._pausedTime=0,n._reverseFlag*=-1):n.loop||n.repeat>0&&n._repeatCount++0&&u<=t?(c._render(s),c.time=a,e.add(c)):h&&(u<0||u>t)&&c.start()}return h?((o=n.onComplete)&&o.call(n,n),!0):void 0}}},Statics:{_tweens:[],tick:function(){var t,r,n=e._tweens,a=n.length;for(r=0;r-1&&n.splice(i,1);else for(i=0;i=i)return void t.fire("complete");if(t._currentIndexe.z})},tick:function(){this.sortZ()}});return o}();return i}),define("hilo/game/ParticleSystem",["hilo/core/Hilo","hilo/core/Class","hilo/view/View","hilo/view/Container","hilo/view/Drawable","hilo/util/util"],function(t,e,i,r,n,a){var o=function(){function o(t,e){return e?t+2*(Math.random()-.5)*e:t}for(var s=["x","y","vx","vy","ax","ay","rotation","rotationV","scale","scaleV","alpha","alphaV","life"],h=[],l=0,c=s.length;l=this._emitTime&&(this._currentRunTime=0,this._emitTime=o(this.emitTime,this.emitTimeVar),this._emit()),this._totalRunTime>=this.totalTime&&this.stop())},_emit:function(){for(var t=o(this.emitNum,this.emitNumVar)>>0,e=0;e=0;e--)this.children[e].destroy()}}),p=e.create({Extends:i,constructor:function(e){this.id=this.id||e.id||t.getUid("Particle"),p.superclass.constructor.call(this,e),this.init(e)},onUpdate:function(t){if(t*=.001,this._died)return!1;var e=this.ax+this.system.gx,i=this.ay+this.system.gy;return this.vx+=e*t,this.vy+=i*t,this.x+=this.vx*t,this.y+=this.vy*t,this.rotation+=this.rotationV,this._time>.1&&(this.alpha+=this.alphaV),this.scale+=this.scaleV,this.scaleX=this.scaleY=this.scale,this._time+=t,this._time>=this.life||this.alpha<=0?(this.destroy(),!1):void 0},setImage:function(t,e){this.drawable=this.drawable||new n,e=e||[0,0,t.width,t.height],this.width=e[2],this.height=e[3],this.drawable.rect=e,this.drawable.image=t},destroy:function(){this._died=!0,this.alpha=0,this.removeFromParent(),f.push(this)},init:function(t){this.system=t.system,this._died=!1,this._time=0,this.alpha=1;for(var e=0,i=h.length;e>0]),this.setImage(t.image,a),void 0!==t.pivotX&&(this.pivotX=t.pivotX*a[2]),void 0!==t.pivotY&&(this.pivotY=t.pivotY*a[3])}},Statics:{create:function(t){if(f.length>0){var e=f.pop();return e.init(t),e}return new p(t)}}});return v}();return o}); \ No newline at end of file +define("hilo/util/browser",function(){var t=function(){var t=navigator.userAgent,e=document,i=window,r=e.documentElement,n={iphone:/iphone/i.test(t),ipad:/ipad/i.test(t),ipod:/ipod/i.test(t),ios:/iphone|ipad|ipod/i.test(t),android:/android/i.test(t),webkit:/webkit/i.test(t),chrome:/chrome/i.test(t),safari:/safari/i.test(t),firefox:/firefox/i.test(t),ie:/msie/i.test(t),opera:/opera/i.test(t),supportTouch:"ontouchstart"in i,supportCanvas:null!=e.createElement("canvas").getContext,supportStorage:!1,supportOrientation:"orientation"in i||"orientation"in i.screen,supportDeviceMotion:"ondevicemotion"in i};try{var a="hilo";localStorage.setItem(a,a),localStorage.removeItem(a),n.supportStorage=!0}catch(o){}var s=n.jsVendor=n.webkit?"webkit":n.firefox?"webkit":n.opera?"o":n.ie?"ms":"",h=n.cssVendor="-"+s+"-",l=e.createElement("div"),c=l.style,u=void 0!=c[s+"Transform"],d=void 0!=c[s+"Perspective"];return d&&(l.id="test3d",c=e.createElement("style"),c.textContent="@media ("+h+"transform-3d){#test3d{height:3px}}",e.head.appendChild(c),r.appendChild(l),d=3==l.offsetHeight,e.head.removeChild(c),r.removeChild(l)),n.supportTransform=u,n.supportTransform3D=d,n}();return t}),define("hilo/util/util",function(){var t={copy:function(t,e,i){for(var r in e)i&&!t.hasOwnProperty(r)&&void 0===t[r]||(t[r]=e[r]);return t}};return t}),define("hilo/core/Hilo",["hilo/util/browser","hilo/util/util"],function(t,e){var i=window,r=document,n=r.documentElement,a=0,o={},s={version:"1.1.5",getUid:function(t){var e=++a;if(t){var i=t.charCodeAt(t.length-1);return i>=48&&i<=57&&(t+="_"),t+e}return e},viewToString:function(t){for(var e,i=t;i;)e=e?i.id+"."+e:i.id,i=i.parent;return e},copy:function(t,i,r){return e.copy(t,i,r),o.copy||(o.copy=!0,console.warn("Hilo.copy has been Deprecated! Use Hilo.util.copy instead.")),t},browser:t,event:function(){var t="ontouchstart"in i;return{POINTER_START:t?"touchstart":"mousedown",POINTER_MOVE:t?"touchmove":"mousemove",POINTER_END:t?"touchend":"mouseup"}}(),align:{TOP_LEFT:"TL",TOP:"T",TOP_RIGHT:"TR",LEFT:"L",CENTER:"C",RIGHT:"R",BOTTOM_LEFT:"BL",BOTTOM:"B",BOTTOM_RIGHT:"BR"},getElementRect:function(t){var e;try{e=t.getBoundingClientRect()}catch(r){e={top:t.offsetTop,left:t.offsetLeft,right:t.offsetLeft+t.offsetWidth,bottom:t.offsetTop+t.offsetHeight}}var a=(i.pageXOffset||n.scrollLeft)-(n.clientLeft||0)||0,o=(i.pageYOffset||n.scrollTop)-(n.clientTop||0)||0,s=i.getComputedStyle?getComputedStyle(t):t.currentStyle,h=parseInt,l=h(s.paddingLeft)+h(s.borderLeftWidth)||0,c=h(s.paddingTop)+h(s.borderTopWidth)||0,u=h(s.paddingRight)+h(s.borderRightWidth)||0,d=h(s.paddingBottom)+h(s.borderBottomWidth)||0,f=e.top||0,v=e.left||0,p=e.right||0,m=e.bottom||0;return{left:v+a+l,top:f+o+c,width:p-u-v-l,height:m-d-f-c}},createElement:function(t,e){var i,n,a,o=r.createElement(t);for(i in e)if(n=e[i],"style"===i)for(a in n)o.style[a]=n[a];else o[i]=n;return o},getElement:function(t){return r.getElementById(t)},setElementStyleByView:function(t){var e=t.drawable,i=e.domElement.style,r=t._stateCache||(t._stateCache={}),n=s.browser.jsVendor,a="px",o=!1;if(this.cacheStateIfChanged(t,["visible"],r)&&(i.display=t.visible?"":"none"),this.cacheStateIfChanged(t,["alpha"],r)&&(i.opacity=t.alpha),t.visible&&!(t.alpha<=0)){this.cacheStateIfChanged(t,["width"],r)&&(i.width=t.width+a),this.cacheStateIfChanged(t,["height"],r)&&(i.height=t.height+a),this.cacheStateIfChanged(t,["depth"],r)&&(i.zIndex=t.depth+1),(o=this.cacheStateIfChanged(t,["pivotX","pivotY"],r))&&(i[n+"TransformOrigin"]=t.pivotX+a+" "+t.pivotY+a),(this.cacheStateIfChanged(t,["x","y","rotation","scaleX","scaleY"],r)||o)&&(i[n+"Transform"]=this.getTransformCSS(t)),this.cacheStateIfChanged(t,["background"],r)&&(i.backgroundColor=t.background),i.pointerEvents||(i.pointerEvents="none");var h=e.image;if(h){var l=h.src;l!==r.image&&(r.image=l,i.backgroundImage="url("+l+")");var c=e.rect;if(c){var u=c[0],d=c[1];u!==r.sx&&(r.sx=u,i.backgroundPositionX=-u+a),d!==r.sy&&(r.sy=d,i.backgroundPositionY=-d+a)}}var f=t.mask;if(f){var v=f.drawable.domElement.style.backgroundImage;v!==r.maskImage&&(r.maskImage=v,i[n+"MaskImage"]=v,i[n+"MaskRepeat"]="no-repeat");var p=f.x,m=f.y;p===r.maskX&&m===r.maskY||(r.maskX=p,r.maskY=m,i[n+"MaskPosition"]=p+a+" "+m+a)}}},cacheStateIfChanged:function(t,e,i){var r,n,a,o,s=!1;for(r=0,n=e.length;r=6?(e=s[0],i=s[1],r=s[2],n=s[3],a=s[4],o=s[5]):(e=t.a,i=t.b,r=t.c,n=t.d,a=t.tx,o=t.ty),this.a=h*e+l*r,this.b=h*i+l*n,this.c=c*e+u*r,this.d=c*i+u*n,this.tx=d*e+f*r+a,this.ty=d*i+f*n+o,this},rotate:function(t){var e=Math.sin(t),i=Math.cos(t),r=this.a,n=this.b,a=this.c,o=this.d,s=this.tx,h=this.ty;return this.a=r*i-n*e,this.b=r*e+n*i,this.c=a*i-o*e,this.d=a*e+o*i,this.tx=s*i-h*e,this.ty=s*e+h*i,this},scale:function(t,e){return this.a*=t,this.d*=e,this.c*=t,this.b*=e,this.tx*=t,this.ty*=e,this},translate:function(t,e){return this.tx+=t,this.ty+=e,this},identity:function(){return this.a=this.d=1,this.b=this.c=this.tx=this.ty=0,this},invert:function(){var t=this.a,e=this.b,i=this.c,r=this.d,n=this.tx,a=t*r-e*i;return this.a=r/a,this.b=-e/a,this.c=-i/a,this.d=t/a,this.tx=(i*this.ty-r*n)/a,this.ty=-(t*this.ty-e*n)/a,this},transformPoint:function(t,e,i){var r=t.x*this.a+t.y*this.c+this.tx,n=t.x*this.b+t.y*this.d+this.ty;return e&&(r=r+.5>>0,n=n+.5>>0),i?{x:r,y:n}:(t.x=r,t.y=n,t)}});return e}),define("hilo/event/EventMixin",["hilo/core/Class"],function(t){var e={_listeners:null,on:function(t,e,i){for(var r=this._listeners=this._listeners||{},n=r[t]=r[t]||[],a=0,o=n.length;a-1&&o.splice(c,1)}}return 0==o.length&&delete a[n],!0}return!1}},i=t.create({constructor:function(t,e,i){this.type=t,this.target=e,this.detail=i,this.timeStamp=+new Date},type:null,target:null,detail:null,timeStamp:0,stopImmediatePropagation:function(){this._stopped=!0}}),r=window.Event;if(r){var n=r.prototype,a=n.stopImmediatePropagation;n.stopImmediatePropagation=function(){a&&a.call(this),this._stopped=!0}}return e}),define("hilo/view/Drawable",["hilo/core/Class","hilo/util/util"],function(t,e){var i=t.create({constructor:function(t){this.init(t)},image:null,rect:null,init:function(t){var r=this,n=r.image;i.isDrawable(t)?r.image=t:e.copy(r,t,!0);var a=r.image;if("string"==typeof a){if(!n||a!==n.getAttribute("src")){r.image=null;var o=new Image;return t.crossOrigin&&(o.crossOrigin=t.crossOrigin),o.onload=function(){o.onload=null,r.init(o)},void(o.src=a)}a=r.image=n}a&&!r.rect&&(r.rect=[0,0,a.width,a.height])},Statics:{isDrawable:function(t){if(!t||!t.tagName)return!1;var e=t.tagName.toLowerCase();return"img"===e||"canvas"===e||"video"===e}}});return i}),define("hilo/renderer/Renderer",["hilo/core/Class","hilo/util/util"],function(t,e){var i=t.create({constructor:function(t){t=t||{},e.copy(this,t,!0)},renderType:null,canvas:null,stage:null,blendMode:"source-over",startDraw:function(t){},draw:function(t){},endDraw:function(t){},transform:function(){},hide:function(){},remove:function(t){},clear:function(t,e,i,r){},resize:function(t,e){}});return i}),define("hilo/renderer/CanvasRenderer",["hilo/core/Class","hilo/core/Hilo","hilo/renderer/Renderer"],function(t,e,i){var r=t.create({Extends:i,constructor:function(t){r.superclass.constructor.call(this,t),this.context=this.canvas.getContext("2d")},renderType:"canvas",context:null,startDraw:function(t){return!!(t.visible&&t.alpha>0)&&(t===this.stage&&this.context.clearRect(0,0,t.width,t.height),t.blendMode!==this.blendMode&&(this.context.globalCompositeOperation=this.blendMode=t.blendMode),this.context.save(),!0)},draw:function(t){var e=this.context,i=t.width,r=t.height,n=t.background;n&&(e.fillStyle=n,e.fillRect(0,0,i,r));var a=t.drawable,o=a&&a.image;if(o){var s=a.rect,h=s[2],l=s[3],c=s[4],u=s[5];if(!h||!l)return;i||r||(i=t.width=h,r=t.height=l),(c||u)&&e.translate(c-.5*h,u-.5*l),e.drawImage(o,s[0],s[1],h,l,0,0,i,r)}},endDraw:function(t){this.context.restore()},transform:function(t){var i=t.drawable;if(i&&i.domElement)return void e.setElementStyleByView(t);var r=this.context,n=t.scaleX,a=t.scaleY;if(t===this.stage){var o=this.canvas.style,s=t._scaleX,h=t._scaleY,l=!1;(!s&&1!=n||s&&s!=n)&&(t._scaleX=n,o.width=n*t.width+"px",l=!0),(!h&&1!=a||h&&h!=a)&&(t._scaleY=a,o.height=a*t.height+"px",l=!0),l&&t.updateViewport()}else{var c=t.x,u=t.y,d=t.pivotX,f=t.pivotY,v=t.rotation%360,p=t.mask;p&&(p._render(this),r.clip());var m=t.align;if(m){var g=t.getAlignPosition();c=g.x,u=g.y}0==c&&0==u||r.translate(c,u),0!=v&&r.rotate(v*Math.PI/180),1==n&&1==a||r.scale(n,a),0==d&&0==f||r.translate(-d,-f)}t.alpha>0&&(r.globalAlpha*=t.alpha)},remove:function(t){var e=t.drawable,i=e&&e.domElement;if(i){var r=i.parentNode;r&&r.removeChild(i)}},clear:function(t,e,i,r){this.context.clearRect(t,e,i,r)},resize:function(t,e){var i=this.canvas,r=this.stage,n=i.style;i.width=t,i.height=e,n.width=r.width*r.scaleX+"px",n.height=r.height*r.scaleY+"px"}});return r}),define("hilo/renderer/DOMRenderer",["hilo/core/Class","hilo/core/Hilo","hilo/renderer/Renderer","hilo/view/Drawable"],function(t,e,i,r){var n=function(){function a(t,i){var r=t.tagName||"div",n=i.image,a=t.width||n&&n.width,o=t.height||n&&n.height,s=e.createElement(r),h=s.style;if(t.id&&(s.id=t.id),h.position="absolute",h.left=(t.left||0)+"px",h.top=(t.top||0)+"px",h.width=a+"px",h.height=o+"px","canvas"==r){if(s.width=a,s.height=o,n){var l=s.getContext("2d"),c=i.rect||[0,0,a,o];l.drawImage(n,c[0],c[1],c[2],c[3],t.x||0,t.y||0,t.width||c[2],t.height||c[3])}}else if(h.opacity=void 0!=t.alpha?t.alpha:1,(t===this.stage||t.clipChildren)&&(h.overflow="hidden"),n&&n.src){h.backgroundImage="url("+n.src+")";var u=t.rectX||0,d=t.rectY||0;h.backgroundPosition=-u+"px "+-d+"px"}return s}return t.create({Extends:i,constructor:function(t){n.superclass.constructor.call(this,t)},renderType:"dom",startDraw:function(t){var e=t.drawable=t.drawable||new r;return e.domElement=e.domElement||a(t,e),!0},draw:function(t){var e=t.parent,i=t.drawable.domElement,r=i.parentNode;if(e){var n=e.drawable.domElement;if(n!=r&&n.appendChild(i),!t.width&&!t.height){var a=t.drawable.rect;a&&(a[2]||a[3])&&(t.width=a[2],t.height=a[3])}}else t!==this.stage||r||(i.style.overflow="hidden",this.canvas.appendChild(i))},transform:function(t){if(e.setElementStyleByView(t),t===this.stage){var i=this.canvas.style,r=t._scaleX,n=t._scaleY,a=t.scaleX,o=t.scaleY;(!r&&1!=a||r&&r!=a)&&(t._scaleX=a,i.width=a*t.width+"px"),(!n&&1!=o||n&&n!=o)&&(t._scaleY=o,i.height=o*t.height+"px")}},remove:function(t){var e=t.drawable,i=e&&e.domElement;if(i){var r=i.parentNode;r&&r.removeChild(i)}},hide:function(t){var e=t.drawable&&t.drawable.domElement;e&&(e.style.display="none")},resize:function(t,e){var i=this.canvas.style;i.width=t+"px",i.height=e+"px","absolute"!=i.position&&(i.position="relative")}})}();return n}),define("hilo/renderer/WebGLRenderer",["hilo/core/Class","hilo/core/Hilo","hilo/renderer/Renderer","hilo/geom/Matrix"],function(t,e,i,r){var n=Math.PI/180,a=t.create({Extends:i,Statics:{MAX_BATCH_NUM:2e3,ATTRIBUTE_NUM:5,isSupport:function(){if(void 0==this._isSupported){var t=document.createElement("canvas");t.getContext&&(t.getContext("webgl")||t.getContext("experimental-webgl"))?this._isSupported=!0:this._isSupported=!1}return this._isSupported}},renderType:"webgl",gl:null,_isContextLost:!1,_cacheTexture:{},constructor:function(t){a.superclass.constructor.call(this,t);var e=this;this.gl=this.canvas.getContext("webgl")||this.canvas.getContext("experimental-webgl"),this.maxBatchNum=a.MAX_BATCH_NUM,this.positionStride=4*a.ATTRIBUTE_NUM;var i=this.maxBatchNum*a.ATTRIBUTE_NUM*4,r=6*this.maxBatchNum;this.arrayBuffer=new ArrayBuffer(4*i),this.float32Array=new Float32Array(this.arrayBuffer),this.uint32Array=new Uint32Array(this.arrayBuffer),this.indexs=new Uint16Array(r);for(var n=0,o=0;n0)&&(t===this.stage&&this.clear(),!0)},draw:function(t){var e=t.width,i=t.height,r=(t.background,t.drawable),n=r&&r.image;if(n){var a=r.rect,o=a[2],s=a[3];e||i||(e=t.width=o,i=t.height=s),this.batchIndex>=this.maxBatchNum&&this._renderBatches();var h=this._createVertexs(n,a[0],a[1],o,s,0,0,e,i),l=this.batchIndex*this.positionStride,c=this.float32Array,u=this.uint32Array,d=(t.tint>>16)+(65280&t.tint)+((255&t.tint)<<16)+(255*t.__webglRenderAlpha<<24);c[l+0]=h[0],c[l+1]=h[1],c[l+2]=h[2],c[l+3]=h[3],u[l+4]=d,c[l+5]=h[4],c[l+6]=h[5],c[l+7]=h[6],c[l+8]=h[7],u[l+9]=d,c[l+10]=h[8],c[l+11]=h[9],c[l+12]=h[10],c[l+13]=h[11],u[l+14]=d,c[l+15]=h[12],c[l+16]=h[13],c[l+17]=h[14],c[l+18]=h[15],u[l+19]=d;for(var f=t.__webglWorldMatrix,v=0;v<4;v++){var p=c[l+5*v],m=c[l+5*v+1];c[l+5*v]=f.a*p+f.c*m+f.tx,c[l+5*v+1]=f.b*p+f.d*m+f.ty}t.__textureImage=n,this.sprites[this.batchIndex++]=t}},endDraw:function(t){t===this.stage&&this._renderBatches()},transform:function(t){var i=t.drawable;if(i&&i.domElement)return void e.setElementStyleByView(t);var n=t.scaleX,a=t.scaleY;if(t===this.stage){var o=this.canvas.style,s=t._scaleX,h=t._scaleY,l=!1;(!s&&1!=n||s&&s!=n)&&(t._scaleX=n,o.width=n*t.width+"px",l=!0),(!h&&1!=a||h&&h!=a)&&(t._scaleY=a,o.height=a*t.height+"px",l=!0),l&&t.updateViewport(),t.__webglWorldMatrix=t.__webglWorldMatrix||new r(1,0,0,1,0,0)}else t.parent&&(t.__webglWorldMatrix=t.__webglWorldMatrix||new r(1,0,0,1,0,0),this._setConcatenatedMatrix(t,t.parent));t.alpha>0&&(t.parent&&t.parent.__webglRenderAlpha?t.__webglRenderAlpha=t.alpha*t.parent.__webglRenderAlpha:t.__webglRenderAlpha=t.alpha)},remove:function(t){var e=t.drawable,i=e&&e.domElement;if(i){var r=i.parentNode;r&&r.removeChild(i)}},clear:function(t,e,i,r){this.gl.clear(this.gl.COLOR_BUFFER_BIT)},resize:function(t,e){if(this.width!==t||this.height!==e){var i=this.canvas,r=this.stage,n=i.style;this.width=i.width=t,this.height=i.height=e,n.width=r.width*r.scaleX+"px",n.height=r.height*r.scaleY+"px",this.gl.viewport(0,0,t,e),this.canvasHalfWidth=.5*t,this.canvasHalfHeight=.5*e,this._uploadProjectionTransform(!0)}},_renderBatches:function(){var t=this.gl;t.bufferSubData(t.ARRAY_BUFFER,0,this.uint32Array.subarray(0,this.batchIndex*this.positionStride));for(var e=0,i=0,r=null,n=0;n0&&(i.bindTexture(i.TEXTURE_2D,this._getTexture(this.sprites[t])),i.drawElements(i.TRIANGLES,6*r,i.UNSIGNED_SHORT,6*t*2))},_uploadProjectionTransform:function(t){this._projectionTransformElements&&!t||(this._projectionTransformElements=new Float32Array([1/this.canvasHalfWidth,0,0,0,-1/this.canvasHalfHeight,0,-1,1,1])),this.gl.uniformMatrix3fv(this.u_projectionTransform,!1,this._projectionTransformElements)},_initShaders:function(){var t=" attribute vec2 a_position;\n attribute vec2 a_TexCoord;\n attribute vec4 a_tint;\n uniform mat3 u_projectionTransform;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_Position = vec4((u_projectionTransform * vec3(a_position, 1.0)).xy, 1.0, 1.0);\n v_TexCoord = a_TexCoord;\n v_tint = vec4(a_tint.rgb * a_tint.a, a_tint.a);\n }\n ",e="\n precision mediump float;\n uniform sampler2D u_Sampler;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_FragColor = texture2D(u_Sampler, v_TexCoord) * v_tint;\n }\n ";this.defaultShader=new o(this,{v:t,f:e},{attributes:["a_position","a_TexCoord","a_tint"],uniforms:["u_projectionTransform","u_Sampler"]})},_createVertexs:function(t,e,i,r,n,a,o,s,h){var l=this.__tempVertexs||[],c=t.width,u=t.height;r/=c,n/=u,e/=c,i/=u,s=s,h=h,a=a,o=o,r+e>1&&(r=1-e),n+i>1&&(n=1-i);var d=0;return l[d++]=a,l[d++]=o,l[d++]=e,l[d++]=i,l[d++]=a+s,l[d++]=o,l[d++]=e+r,l[d++]=i,l[d++]=a,l[d++]=o+h,l[d++]=e,l[d++]=i+n,l[d++]=a+s,l[d++]=o+h,l[d++]=e+r,l[d++]=i+n,l},_setConcatenatedMatrix:function(t,e){var i=t.__webglWorldMatrix,r=1,a=0,o=t.rotation%360,s=t.pivotX,h=t.pivotY,l=t.scaleX,c=t.scaleY;if(o){var u=o*n;r=Math.cos(u),a=Math.sin(u)}var d=t.getAlignPosition();i.a=r*l,i.b=a*l,i.c=-a*c,i.d=r*c,i.tx=d.x-i.a*s-i.c*h,i.ty=d.y-i.b*s-i.d*h,i.concat(e.__webglWorldMatrix)},_getTexture:function(t){var e=t.__textureImage,i=this._cacheTexture[e.src];return i||(i=this.activeShader.uploadTexture(e)),i}}),o=function(t,e,i){this.renderer=t,this.gl=t.gl,this.program=this._createProgram(this.gl,e.v,e.f),i=i||{},this.attributes=i.attributes||[],this.uniforms=i.uniforms||[]};return o.prototype={active:function(){var t=this,e=t.renderer,i=t.gl,r=t.program;r&&i&&(e.activeShader=t,i.useProgram(r),t.attributes.forEach(function(t){e[t]=i.getAttribLocation(r,t),i.enableVertexAttribArray(e[t])}),t.uniforms.forEach(function(t){e[t]=i.getUniformLocation(r,t)}),t.width===e.width&&t.height===e.height||(t.width=e.width,t.height=e.height,e._uploadProjectionTransform()))},uploadTexture:function(t){var e=this.gl,i=this.renderer,r=e.createTexture(),n=i.u_Sampler;return e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,r),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,1),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.uniform1i(n,0),e.bindTexture(e.TEXTURE_2D,null),this.renderer._cacheTexture[t.src]=r,r},_createProgram:function(t,e,i){var r=this._createShader(t,t.VERTEX_SHADER,e),n=this._createShader(t,t.FRAGMENT_SHADER,i);if(!r||!n)return null;var a=t.createProgram();if(a){t.attachShader(a,r),t.attachShader(a,n),t.linkProgram(a),t.deleteShader(n),t.deleteShader(r);var o=t.getProgramParameter(a,t.LINK_STATUS);if(!o){var s=t.getProgramInfoLog(a);return console.log("Failed to link program: "+s),t.deleteProgram(a),null}}return a},_createShader:function(t,e,i){var r=t.createShader(e);if(r){t.shaderSource(r,i),t.compileShader(r);var n=t.getShaderParameter(r,t.COMPILE_STATUS);if(!n){var a=t.getShaderInfoLog(r);return console.log("Failed to compile shader: "+a),t.deleteShader(r),null}}return r}},a}),define("hilo/view/View",["hilo/core/Hilo","hilo/core/Class","hilo/event/EventMixin","hilo/geom/Matrix","hilo/util/util"],function(t,e,i,r,n){var a=function(){function a(t,e,i){for(var r,n,a,o,s=0,h=!1,l=0,c=i.length;ld.x?(r=d.x,n=u.x):(r=u.x,n=d.x),t>=r&&t<=n))h=!0;else if(u.y>d.y?(a=d.y,o=u.y):(a=u.y,o=d.y),!(eo)){var f=(e-u.y)*(d.x-u.x)/(d.y-u.y)+u.x;if(f>t?s++:f==t&&(h=!0),u.x>t&&u.y==e){var v=i[(c+l-1)%c];(v.ye||v.y>e&&d.ys?s=c:cl?l=c:c=0)return!1;u>i.overlap&&(i.overlap=u,i.normal.x=v.x,i.normal.y=v.y)}return i}return e.create({Mixes:i,constructor:function(e){e=e||{},this.id=this.id||e.id||t.getUid("View"),n.copy(this,e,!0)},tint:16777215,id:null,x:0,y:0,width:0,height:0,alpha:1,rotation:0,visible:!0,pivotX:0,pivotY:0,scaleX:1,scaleY:1,pointerEnabled:!0,background:null,mask:null,align:null,drawable:null,boundsArea:null,parent:null,depth:-1,blendMode:"source-over",getStage:function(){for(var t,e=this;t=e.parent;)e=t;return e.canvas?e:null},getScaledWidth:function(){return this.width*this.scaleX},getScaledHeight:function(){return this.height*this.scaleY},addTo:function(t,e){return"number"==typeof e?t.addChildAt(this,e):t.addChild(this),this},removeFromParent:function(){var t=this.parent;return t&&t.removeChild(this),this},getBounds:function(){for(var t,e,i,r,n,a,o,s=this.width,h=this.height,l=this.getConcatenatedMatrix(),c=this.boundsArea||[{x:0,y:0},{x:s,y:0},{x:s,y:h},{x:0,y:h}],u=[],d=0,f=c.length;de?r=e:ni?a=i:o>1,r=0;break;case"TR":i=o-n,r=0;break;case"L":i=0,r=s-a>>1;break;case"C":i=o-n>>1,r=s-a>>1;break;case"R":i=o-n,r=s-a>>1;break;case"BL":i=0,r=s-a;break;case"B":i=o-n>>1,r=s-a;break;case"BR":i=o-n,r=s-a}}return{x:i,y:r}},hitTestPoint:function(t,e,i){var r=this.getBounds(),n=t>=r.x&&t<=r.x+r.width&&e>=r.y&&e<=r.y+r.height;return n&&i&&(n=a(t,e,r)),n},hitTestObject:function(t,e){var i=this.getBounds(),r=t.getBounds(),n=i.x<=r.x+r.width&&r.x<=i.x+i.width&&i.y<=r.y+r.height&&r.y<=i.y+i.height;return n&&e&&(n=o(i,r)),!!n},_render:function(t,e){this.onUpdate&&this.onUpdate(e)===!1||!t.startDraw(this)||(t.transform(this),this.render(t,e),t.endDraw(this))},_fireMouseEvent:function(t){if(t.eventCurrentTarget=this,this.fire(t),"mousemove"==t.type){if(!this.__mouseOver){this.__mouseOver=!0;var e=n.copy({},t);e.type="mouseover",this.fire(e)}}else"mouseout"==t.type&&(this.__mouseOver=!1);var i=this.parent;t._stopped||t._stopPropagationed||!i||("mouseout"==t.type||"touchout"==t.type?i.hitTestPoint(t.stageX,t.stageY,!0)||i._fireMouseEvent(t):i._fireMouseEvent(t))},onUpdate:null,render:function(t,e){t.draw(this)},toString:function(){return t.viewToString(this)}})}();return a}),define("hilo/view/CacheMixin",["hilo/view/Drawable","hilo/util/browser"],function(t,e){var i,r,n={_cacheDirty:!0,cache:function(t){(t||this._cacheDirty||!this.drawable)&&this.updateCache()},updateCache:function(){e.supportCanvas&&(i||(i=document.createElement("canvas"),r=i.getContext("2d")),i.width=this.width,i.height=this.height,this._draw(r),this.drawable=this.drawable||new t,this.drawable.init({image:i.toDataURL()}),this._cacheDirty=!1)},setCacheDirty:function(t){this._cacheDirty=t}};return n}),define("hilo/view/Container",["hilo/core/Hilo","hilo/core/Class","hilo/view/View"],function(t,e,i){var r=e.create({Extends:i,constructor:function(e){e=e||{},this.id=this.id||e.id||t.getUid("Container"),r.superclass.constructor.call(this,e),this.children?this._updateChildren():this.children=[]},children:null,pointerChildren:!0,clipChildren:!1,getNumChildren:function(){return this.children.length},addChildAt:function(t,e){var i=this.children,r=i.length,n=t.parent;e=e<0?0:e>r?r:e;var a=this.getChildIndex(t);if(a==e)return this;if(a>=0?(i.splice(a,1),e=e==r?r-1:e):n&&n.removeChild(t),i.splice(e,0,t),a<0)this._updateChildren(e);else{var o=a=e.length)return null;var i=e[t];if(i){if(!i.__renderer)for(var r=i;r=r.parent;){if(r.renderer){i.__renderer=r.renderer;break}if(r.__renderer){i.__renderer=r.__renderer;break}}i.__renderer&&i.__renderer.remove(i),i.parent=null,i.depth=-1}return e.splice(t,1),this._updateChildren(t),i},removeChild:function(t){return this.removeChildAt(this.getChildIndex(t))},removeChildById:function(t){for(var e,i=this.children,r=0,n=i.length;r=e.length?null:e[t]},getChildById:function(t){for(var e,i=this.children,r=0,n=i.length;r=0&&r!=e){var n=i.length;e=e<0?0:e>=n?n-1:e,i.splice(r,1),i.splice(e,0,t),this._updateChildren()}return this},swapChildren:function(t,e){var i=this.children,r=this.getChildIndex(t),n=this.getChildIndex(e);t.depth=n,i[n]=t,e.depth=r,i[r]=e},swapChildrenAt:function(t,e){var i=this.children,r=this.getChildAt(t),n=this.getChildAt(e);r.depth=e,i[e]=r,n.depth=t,i[t]=n},sortChildren:function(t){var e=t,i=this.children;if("string"==typeof e){var r=e;e=function(t,e){return e[r]-t[r]}}i.sort(e),this._updateChildren()},_updateChildren:function(t,e){var i,r=this.children;t=t||0,e=e||r.length;for(var n=t;n=0;l--)if(a=h[l],!(!a||!a.visible||a.alpha<=0||n&&!a.pointerEnabled))if(a.children&&a.children.length&&(!n||a.pointerChildren)&&(o=a.getViewAtPoint(t,e,i,r,n)),o){if(!r)return o;o.length&&(s=s.concat(o))}else if(a.hitTestPoint(t,e,i)){if(!r)return a;s.push(a)}return r&&s.length?s:null},render:function(t,e){r.superclass.render.call(this,t,e);var i,n,a,o=this.children.slice(0);for(i=0,n=o.length;ir?r:e,i[e]=t,t.name&&(this._frameNames[t.name]=t),(0!=e||this.width)&&this.height||(this.width=t.rect[2],this.height=t.rect[3]),this},getFrame:function(t){if("number"==typeof t){var e=this._frames;return t<0||t>=e.length?null:e[t]}return this._frameNames[t]},getFrameIndex:function(t){var e=this._frames,i=e.length,r=-1;if("number"==typeof t)r=t;else{var n="string"==typeof t?this._frameNames[t]:t;if(n)for(var a=0;a=i?i-1:r,this.paused=e,this._firstRender=!0,this},_render:function(t,e){var i,r=this.currentFrame;if(this._firstRender?(i=r,this._firstRender=!1):i=this._nextFrame(e),i!=r){this.currentFrame=i;var a=this._frames[i].callback;a&&a.call(this)}this.onEnterFrame&&this.onEnterFrame(i),this.drawable.init(this._frames[i]),n.superclass._render.call(this,t,e)},_nextFrame:function(t){var e=this._frames,i=e.length,r=this.currentFrame,n=e[r],a=n.duration||this.interval,o=this._frameElapsed,s=0!=r||this.drawable?o+(this.timeBased?t:1):0;return o=this._frameElapsed=s=i-1)&&this.stop(),this.paused||0!=o||(null!=n.next?r=this.getFrameIndex(n.next):r>=i-1?r=0:this.drawable&&r++),r},setFrameCallback:function(t,e){return t=this.getFrame(t),t&&(t.callback=e),this},onEnterFrame:null});return n}),define("hilo/view/DOMElement",["hilo/core/Hilo","hilo/core/Class","hilo/view/View","hilo/view/Drawable"],function(t,e,i,r){var n=e.create({Extends:i,constructor:function(e){e=e||{},this.id=this.id||e.id||t.getUid("DOMElement"),n.superclass.constructor.call(this,e),this.drawable=new r;var i=this.drawable.domElement=e.element||t.createElement("div");i.id=this.id,this.pointerEnabled&&(i.style.pointerEvents="visible")},_render:function(t,e){this.onUpdate&&this.onUpdate(e)===!1||(t.transform(this),this.visible&&this.alpha>0&&this.render(t,e))},render:function(t,e){if("dom"!==t.renderType){var i,r=t.canvas,n=this.drawable.domElement,a=this.depth,o=r.nextSibling;if(n.parentNode)return;for(;o&&3!=o.nodeType&&(i=parseInt(o.style.zIndex)||0,!(i<=0||i>a));)o=o.nextSibling;r.parentNode.insertBefore(this.drawable.domElement,o)}else t.draw(this)}});return n}),define("hilo/view/Graphics",["hilo/core/Hilo","hilo/core/Class","hilo/view/View","hilo/view/CacheMixin"],function(t,e,i,r){var n=function(){var a=document.createElement("canvas"),o=a.getContext&&a.getContext("2d");return e.create({Extends:i,Mixes:r,constructor:function(e){e=e||{},this.id=this.id||e.id||t.getUid("Graphics"),n.superclass.constructor.call(this,e),this._actions=[]},lineWidth:1,lineAlpha:1,lineCap:null,lineJoin:null,miterLimit:10,hasStroke:!1,strokeStyle:"0",hasFill:!1,fillStyle:"0",fillAlpha:0,lineStyle:function(t,e,i,r,n,a){var o=this,s=o._addAction;return s.call(o,["lineWidth",o.lineWidth=t||1]),s.call(o,["strokeStyle",o.strokeStyle=e||"0"]),s.call(o,["lineAlpha",o.lineAlpha=i||1]),void 0!=r&&s.call(o,["lineCap",o.lineCap=r]),void 0!=n&&s.call(o,["lineJoin",o.lineJoin=n]),void 0!=a&&s.call(o,["miterLimit",o.miterLimit=a]),o.hasStroke=!0,o},beginFill:function(t,e){var i=this,r=i._addAction;return r.call(i,["fillStyle",i.fillStyle=t]),r.call(i,["fillAlpha",i.fillAlpha=e||1]),i.hasFill=!0,i},endFill:function(){var t=this,e=t._addAction;return t.hasStroke&&e.call(t,["stroke"]),t.hasFill&&e.call(t,["fill"]),t.setCacheDirty(!0),t},beginLinearGradientFill:function(t,e,i,r,n,a){for(var s=this,h=o.createLinearGradient(t,e,i,r),l=0,c=n.length;l1?a.slice(1):null;"function"==typeof t[o]?t[o].apply(t,s):t[o]=a[1]}},render:function(t,e){var i=this;"canvas"===t.renderType?i._draw(t.context):(i.cache(),t.draw(i))},clear:function(){var t=this;return t._actions.length=0,t.lineWidth=1,t.lineAlpha=1,t.lineCap=null,t.lineJoin=null,t.miterLimit=10,t.hasStroke=!1,t.strokeStyle="0",t.hasFill=!1,t.fillStyle="0",t.fillAlpha=1,t.setCacheDirty(!0),t},_addAction:function(t){var e=this;return e._actions.push(t),e}})}();return n}),define("hilo/view/Text",["hilo/core/Class","hilo/core/Hilo","hilo/view/View","hilo/view/CacheMixin"],function(t,e,i,r){var n=t.create({Extends:i,Mixes:r,constructor:function(t){t=t||{},this.id=this.id||t.id||e.getUid("Text"),n.superclass.constructor.call(this,t),t.font||(this.font="12px arial"),this._fontHeight=n.measureFontHeight(this.font)},text:null,color:"#000",textAlign:null,textVAlign:null,outline:!1,lineSpacing:0,maxWidth:200,font:null,textWidth:0,textHeight:0,setFont:function(t){var e=this;return e.font!==t&&(e.font=t,e._fontHeight=n.measureFontHeight(t)),e},render:function(t,e){var i=this;if("canvas"===t.renderType)this.drawable?t.draw(i):i._draw(t.context);else if("dom"===t.renderType){var r=i.drawable,n=r.domElement,a=n.style;a.font=i.font,a.textAlign=i.textAlign,a.color=i.color,a.width=i.width+"px",a.height=i.height+"px",a.lineHeight=i._fontHeight+i.lineSpacing+"px",n.innerHTML=i.text,t.draw(this)}else i.cache(),t.draw(i)},_draw:function(t){var e=this,i=e.text.toString();if(i){t.font=e.font,t.textAlign=e.textAlign,t.textBaseline="top";var r,n,a,o,s,h=i.split(/\r\n|\r|\n|/),l=0,c=0,u=e._fontHeight+e.lineSpacing,d=[];for(r=0,o=h.length;re.maxWidth?(d.push({text:m,y:c}),l>1;break;case"bottom":_=e.height-e.textHeight}var x=e.background;for(x&&(t.fillStyle=x,t.fillRect(0,0,e.width,e.height)),e.outline?t.strokeStyle=e.color:t.fillStyle=e.color,r=0;r>1;break;case"right":case"end":n=a}r.outline?t.strokeText(e,n,i):t.fillText(e,n,i)},Statics:{measureFontHeight:function(t){var i,r=document.documentElement,n=e.createElement("div",{style:{font:t,position:"absolute"},innerHTML:"M"});return r.appendChild(n),i=n.offsetHeight,r.removeChild(n),i}}});return n}),define("hilo/view/BitmapText",["hilo/core/Class","hilo/core/Hilo","hilo/view/Container","hilo/view/Bitmap"],function(t,e,i,r){var n=t.create({Extends:i,constructor:function(t){t=t||{},this.id=this.id||t.id||e.getUid("BitmapText"),n.superclass.constructor.call(this,t);var i=t.text+"";i&&(this.text="",this.setText(i)),this.pointerChildren=!1},glyphs:null,letterSpacing:0,text:"",textAlign:"left",setText:function(t){var e=this,i=t.toString(),r=i.length;if(e.text!=i){e.text=i;var n,a,o,s,h=0,l=0,c=0;for(n=0;n0?e.letterSpacing:0),e.children[n]?(s=e.children[n],s.setImage(o.image,o.rect)):(s=e._createBitmap(o),e.addChild(s)),s.x=c,h=c+o.rect[2],l=Math.max(l,o.rect[3]));for(n=e.children.length-1;n>=r;n--)e._releaseBitmap(e.children[n]),e.children[n].removeFromParent();return e.width=h,e.height=l,this.setTextAlign(),e}},_createBitmap:function(t){var e;return n._pool.length?(e=n._pool.pop(),e.setImage(t.image,t.rect)):e=new r({image:t.image,rect:t.rect}),e},_releaseBitmap:function(t){n._pool.push(t)},setTextAlign:function(t){switch(this.textAlign=t||this.textAlign,this.textAlign){case"center":this.pivotX=.5*this.width;break;case"right":this.pivotX=this.width;break;case"left":default:this.pivotX=0}return this},hasGlyphs:function(t){var e=this.glyphs;if(!e)return!1;t=t.toString();var i,r=t.length;for(i=0;i=this._targetFPS?(this._measuredFPS=1e3/(this._tickTime/this._tickCount)+.5>>0,this._tickCount=0,this._tickTime=0):this._tickTime+=t-this._lastTime,this._lastTime=t;for(var r=i.slice(0),n=0,a=r.length;n=0&&e.splice(i,1)},nextTick:function(t){var e=this,i={tick:function(r){e.removeTick(i),t()}};return e.addTick(i),i},timeout:function(t,e){var i=this,r=(new Date).getTime()+e,n={tick:function(){var e=(new Date).getTime(),a=e-r;a>=0&&(i.removeTick(n),t())}};return i.addTick(n),n},interval:function(t,e){var i=this,r=(new Date).getTime()+e,n={tick:function(){var i=(new Date).getTime(),n=i-r;n>=0&&(n=r)return-1;for(e<0&&(e=r+e),i=e;i=1?1:s;var l=n.ease?n.ease(s):s;n.reverse&&(n._reverseFlag<0&&(s=1-s,l=1-l),s<1e-7&&(n.repeat>0&&n._repeatCount++>=n.repeat||0==n.repeat&&!n.loop?h=!0:(n._startTime=i(),n._pausedTime=0,n._reverseFlag*=-1))),0==n.time&&(o=n.onStart)&&o.call(n,n),n.time=a,n._render(l),(o=n.onUpdate)&&o.call(n,s,n),s>=1&&(n.reverse?(n._startTime=i(),n._pausedTime=0,n._reverseFlag*=-1):n.loop||n.repeat>0&&n._repeatCount++0&&u<=t?(c._render(s),c.time=a,e.add(c)):h&&(u<0||u>t)&&c.start()}return h?((o=n.onComplete)&&o.call(n,n),!0):void 0}}},Statics:{_tweens:[],tick:function(){var t,r,n=e._tweens,a=n.length;for(r=0;r-1&&n.splice(i,1);else for(i=0;i=i)return void t.fire("complete");if(t._currentIndexe.z})},tick:function(){this.sortZ()}});return o}();return i}),define("hilo/game/ParticleSystem",["hilo/core/Hilo","hilo/core/Class","hilo/view/View","hilo/view/Container","hilo/view/Drawable","hilo/util/util"],function(t,e,i,r,n,a){var o=function(){function o(t,e){return e?t+2*(Math.random()-.5)*e:t}for(var s=["x","y","vx","vy","ax","ay","rotation","rotationV","scale","scaleV","alpha","alphaV","life"],h=[],l=0,c=s.length;l=this._emitTime&&(this._currentRunTime=0,this._emitTime=o(this.emitTime,this.emitTimeVar),this._emit()),this._totalRunTime>=this.totalTime&&this.stop())},_emit:function(){for(var t=o(this.emitNum,this.emitNumVar)>>0,e=0;e=0;e--)this.children[e].destroy()}}),p=e.create({Extends:i,constructor:function(e){this.id=this.id||e.id||t.getUid("Particle"),p.superclass.constructor.call(this,e),this.init(e)},onUpdate:function(t){if(t*=.001,this._died)return!1;var e=this.ax+this.system.gx,i=this.ay+this.system.gy;return this.vx+=e*t,this.vy+=i*t,this.x+=this.vx*t,this.y+=this.vy*t,this.rotation+=this.rotationV,this._time>.1&&(this.alpha+=this.alphaV),this.scale+=this.scaleV,this.scaleX=this.scaleY=this.scale,this._time+=t,this._time>=this.life||this.alpha<=0?(this.destroy(),!1):void 0},setImage:function(t,e){this.drawable=this.drawable||new n,e=e||[0,0,t.width,t.height],this.width=e[2],this.height=e[3],this.drawable.rect=e,this.drawable.image=t},destroy:function(){this._died=!0,this.alpha=0,this.removeFromParent(),f.push(this)},init:function(t){this.system=t.system,this._died=!1,this._time=0,this.alpha=1;for(var e=0,i=h.length;e>0]),this.setImage(t.image,a),void 0!==t.pivotX&&(this.pivotX=t.pivotX*a[2]),void 0!==t.pivotY&&(this.pivotY=t.pivotY*a[3])}},Statics:{create:function(t){if(f.length>0){var e=f.pop();return e.init(t),e}return new p(t)}}});return v}();return o}); \ No newline at end of file diff --git a/build/amd/hilo-amd.zip b/build/amd/hilo-amd.zip index dc01a3c9d2954261798d604ed870582fde33548e..f37e567465e230ee87e0c24991902cae2aa87ccc 100644 GIT binary patch delta 133818 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

;!!qKCWo`_{p$U_-~S7s;mbcoC2~Ra-+kxz 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

1T1EkHeQkg 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 M>EL2IA!tMWf21b}_5c6? delta 133603 zcmV(>K-j;!std}f3l~sJ0|XQR00;;Ggqku-K=uh>C(Qr={*f0yf5+1^1jZuPQXD6? zV>?z7Cw7$F8^_15lN&#BWBbUmeDdM^ln|u!$$#PON4=|h9sng-S)L^k-PKjQc2(`# zwQJYjyB5!#dnP&;y_j~gXt}mrdp2rkgDCE{Fm*laj|b`A{xDiuTK-HFchW}Oh-=NP zi(jv&&7_wnt!UJ1eNSUH)+<-ucm{rpjL08#;@;jU-b+@K9=$g^ah^w4xLDLq;^AnJM0ql#ulX<@rcHY6 zX01^tiM*-^kq7Z067SJ!R5t65;D?__F?{L857NDOmsy zsB5Jkq&-N7e_Ppsm3yO;bh$)Lmck?|tn5Tp@aHF=F)aNBtvz=c32o z`pNNI--mzG{(ja=%ujzb9QTvxjVoE!N#fp-@o7;#bE$f?$PbHYZJ6Z4@+huUpP8Y` zxHW%;af_;pe_QibmYtxoj4R9Ltt`vut}Dw`H$KGXJ)FPVxYrtF>Dhxw{(r-P)O9nM>) zCX7pFIBRAHV;D??3s@PanPe zl}Eq&#ecl{`9R%U!$I2HD;UdBzn=|;+u5kOUyn*zZ-`H@atwy02v|2T?y0RNG@5bm zL7X4|>7P9L*|)=JOr|NuW1XPXX;o+rU_DF3nourr1*J-DFBz@_p2^`bIs=Q+sMDFL zpC13if4?06!%vTY^sVF1|FDxaG;_7+2hrqjF0F!BNz2auB134}1L-x{VGAZkxATpCRm9k6*>}vf5GD7YvusH7Nt3nK?K5?^`!=q(B?4d zz6SCaiVaaR7(gBXnFFhgnsJ`wQ8}sY)grSP!fT~@+~_2&3e`9qjJ2?Va>;|ZGfF@( zA>plbQGE;5UZ%`dE>kJUJAej1NOX21AId;Ao8+M8;b4?-o}*?wZ0?tn${R+k>IOUHlr!{fjB{PExX+4|Pj@t42$0pgPh1#$scvwQ^>0Rf|vlLlme*%1hDc~FrU{A{rrLMXs$ zDE$Gf)lw)@5&+9(_VUm9>LntKQgs%-^+Ga)85`|&vIcOjF?2}!S&-k;RxR3s?QRt3 zP!kkcu0~hVVK?rtM9Hw}aTy^c0?PmjIs~Xa5LbslYiX;Li_`!oki}l`tG8MP)8Zx6 zSSjjah!uN(>p_%p{yb2Ko^mkTy}UAib3Y!eXDt*{1cowYZ753BI!SMDxF0P<%aw}` z8;Qyaz~$BG**}Or{b>#I(rWbF?^k4hoL`O3?w-8}!tc`iU;MW}eDuq&eDKYmJ^r7+ zf(_%NcfNA`rN4Ue?!Q~m#l)AzBeO{!-;f`Vs-9?n86I*T931zY1^|};AWpdh2G$TG z`-a!Fhq?MObO9_d$TCoBOxwWNqX%g|iaTQcaml5&&c&0#N{tEUf=4tjr^&$)fJqLb ztpcdUB(oL79Of<}83ZCG2~@Y8acP5~Fxep|fD3D06`=ryUa-v@>I`VEk)KIOXEEXZ`|44+FrY}eQB|A8P<{;8O|(_ z+eoDxkxn^Eu$CIga08gx{R~g^kmV|+Gv@DNL6Dq!wM&ZtzM!fbw_e@|*Mxh^Nfpt5 zcUcdi!SBabHW;< zx()I9sAR&cM{1Pb-oh}TYYRX?=V=I|eo4w2^rN+ZhBY3JQyI+mIXfBgj5u1c4|O z71_PB`NE6g3V9bap+*DM>xA4ab*^vV;8+!MxnOP+yE}}}ER|fjwY`1oMz}8<*>IS3 zr*7K;S8v^j65d9WV2^)O9@ajdnzYiq--*X4=)|79_2Tx8>tYXnL{Lm{ z`2=YQ1$;a!BCvL$=vp@D#wdP&0eN62)t9O`bMenX+8XZHmzUsCD0bob$lDPLl}+$T9O?c}(zONS-g_CTjVU-j@*qD9#EU}t9)WXQ1U zV6AxkdIb|e=3DQi0=2R!0IBn+FqAj20}`!H24+|#3NjOsT~(P1++^5)UKlB_U^iC9 zv~|GRIazIeWJ+pQ2Xd}g(FCfDC!19goem;W0mf05$xZ4D!VfYp zRYQ4N59paN`FA$(G|=d5|+WAbhvB>UDD9aB6Xxk*e$u+CC1HAe&7 zjBV*-B?%X1NSx z=LKEZ8JW2X>=*RdE^tK)VeoJhjU?hDNv-6BWfl*U3-uF5&9_5HkQUy=-Cq=~ zRdg+sSttn1(^6A^Qvldk4MdzpE-5-C$8r@YNM;t*$XEyQw4{$>KoBSc?vQd+e!kmx zPBT!w8m+Fvwo9Dq`sX583+^BgScUm1A4lhSP6CPW;2e=8ojmaYVNpPU3(b6}f~DqE zkCH~*B%HVj;x4iusRSkJNKl?eMfo-g58{v!o>0{f7!t*QW$JLFrX`ju zH$}a<)Mc88jA23?#0(gZtxis58XJSeQuAC(o&y6x`KZsQc7#RT(#TqELW>8s0C2m5 z^~0zVmFnS~dPJ4LZa@j4P~{7t1~3-G#AyM=zl68Y!?ml-)Eu-Ky9y#QDG~Yu|)YOPL$Nq{nZi z{vjTlcj7&GAzi1j@W2E{*|*ljDz>n)&Gz~}jA7D31n}e!dNzgT;OU;mrsB+W9znT{ zSdGpg_M#-}E_zunF%6aMxjF+Dai_l@&w@kNkDKX#a4b5NiWO98;Rrph^5f~vQbo*w z`8tc1*ICe{i~>o1hV}aJgq_37^DNcw3kwyhSG=5};#Sh1t+}7u?6s0ZIe)MeRJ&YI ztDx0smG{#J+3;07ho+~U8SuEPPSmu0)-8~Q(q8GFJa{3f)G3%P!b2OCzH^$+!f99< z<3EFcOxT*jbKZot;#KwJwgL$g`(xJDP&)_{;Myt`SSGQx6Jp+ooA>tyD8SA#);jlk z)**X9>_44aG#$BgKTA;?LP~d69tq??21m>#xO-h(gpC_oJEUDybKv2HLc`+l{M}&Q zlwh5$P)gt!IUk@A1AVQ*vnL?ocQhW+-Bt^Kf#UYrS&z`DkNj9J+mxyGQeZ&Y(*2 zLmy(OGj3;jijxcV6$|;HGh=mEgs>ZX*tzFtA?&cx`FK9;b_l!iOxPVwB<*gT-?wOg z856{$!$*sVF(E+1m@J71pKFCej7xPMt!PkASE>(_3ExE}P>bqUg8|-4aj<7z4fV>a$mF?j;Ooxx{*p+%8fvZ$Oyt~| ztz#s$s!nwlMh5BAu)84(?G!?yd0-8HvITSA0pCPRE^8rjEP+sM+N(xr@g>{~s%V>o z@U##tOW+PQMWZq*B{sZNg)slQ7^TrA{00x_&pX3`b(m%DrVi(m9ua{3UCiunp*hDH zbL2Va#F6JLyd8Fr@2M|Ud;R162^(fn>_jF-j`@zcQq%5Ud1kg%<_9`V0EJ?b4i?A?@!6&1AaUd=6$KT4MB0LX$>E=i^5c;L z)$W)kO?GiH)?3Wt6hsRW$+`JAH}_9 z0y7=UUNrL_se19@i13gdogc7i95gjKprYlHND~N)w;Hsf%qf_w#yFP6SN?EmQI4Tu zdQ8J7{!MeKh(=9ToVJL6#9GONq=OpQ>E_1-Mi~(^P$y2o6vB%mc9dwuNatD4R&VB2 zSLZG)qqP|*BRR9WT$V@MKE?nmBpe75Tb3w;1VPrq7U61=r+Yo_t+cnF4AP;*mkzcG ziZDq~AZP{%0D5uhLMmd@ZIGc}r^AkCQh(?I5riqh(3>(QBx5Fj;bWrgSi{H|lTN@Q zGjt;v7pI9(Zjpr}W1h>UEPzU=hc%!@(a-*&y&w!KK&LB$x&*LQ(+Jx+HZX?WJT*Y+ z_6>0!M36f1=RRlUaQ!bzMu)(%^1PYV>?@1wh#JVomG&#JYIMp}nRRZ$*`&0CpD#W$ z$!$Q%siGrP1rz&!g3dHyB_y-{qbjHCb zBVHe(4~ru|TKNea_Ytyq-wQWz3_}f)E-sGPDFl5MVPJZ(Qi)2aqpM+7;l37Rps|sm zOkjSaAI7;wu2?N=x}#~XyN6$gX+BJpAm&yI=}f)1@lAk#(7B8@FD^>HlACip9VR-$ zhiqF_@Exo8{UqrtboAI+g{k7I%w-jCqPb*qXfg!#m5N#9&&@TM%irH6Y)SDDkx9dpcVh|+AUkBO+JLqN5BKWz`o?({Im2D2HR1-M{}r#_WU zRB}r(KX53=Wk*MIu^@w*Lve|KH83}??e0<|c6a@QJrh-!mv&c3djwU!&b@8g2nob( zERMUCQ381-*KIgG2y-CcCZV=E%Jq1sY?cBT(UP zyczP*ghF!N#ahFe(Xun`g>*qh`egjsj;l6w>ww062q6_KS%_H!qPp({yiSEjO zA08)ja0nFldu6`qHK7k+g;E-;H+W62^Peg*>pJ{@L|QCb#$-;~=703ct-U1cF5ZZT zgY-~4gc}+!)A^fHW{JlX8<_I@`&__@sF4Vjd#O*e@yYyiN?LZZL_JN4RovgQ) zr!C%0A4W0A?&xjUi?&cViNXV`O8Fc(4_4JUK~-a;Dp3Q}mEQ-kXF^TQQ#NY$np&r9 z(;VG5Jfyl>DQ^^TjHN%@V9W#&Y*HB5cwS&*1DL6ZGv-CW)jy!76EwdXS(;pbBakO& zFa%(^8xE^%<7(8XMonPCRp=x5-#oIWy%7cqHH@J6umVkzoiwy#XgX=Qsct!GL&Sb~ z=%$h<>3FV#qw8t!K1@N;C8)AuQ+tt8r3pSD{saRQ-%ld!?gS))C=t}gI!lnRhX?2{ z+y%Nr%^qqII7|A#H!WoFM^P7lnj$Mlr}qxxBR$<&pk*EuIAfA9)+B^m0e5p4G7uV! z(SjNs!5QSC+?1N_!=hMjaB-N`NfV5>GLV9Sm(MN7DEv@rY>$nP#WB6_zWzqlqL-KPAq;(lp=$uAe&FNgBW zv+kF%{PLXfMX$xaHj8kE@uBHE>G%#s_-~h|> zF!J!=PR)kQ(U3XZiAob%!f1tHv}BHk%uz7eB^00{1cPV)VFqw0p>a+;-7`r^?gEtJ zYDP|Rht~%ZQ$o|tU)XzpdmY||^ApT!USnpN%Av>+T-s#32-n>OQ+ykMvR{Kokp*UJ zmdj*#l*u3MM7O945n3Rk$xZiYi>|OOOjwY+fU+1)D+ou@7Q<-;;b`h&NJKO~C{0=n zjIvqKPD)oSfM~KRq^JDQ5Or`hV!g~5%A$5hm?_Xvb&(iS0C;?VQov&e@O<=45Djw9 z57B!qB2g%qm6OY zI;4b_A9F;>yN3o~52ztW3n7B{U*&ER=c56}LxK(Kq3`*jz>lYaAI}ATK8jGrCI(fs zfGS!ZRSYSnQ7bTidYJqaMh|^Pk{C990$ru1jrBx<4|{tc8d8K?wQsD^Y?6IPfmq^x zpJRMMC-#Qu9MBaqpJkO49i#xL0dnJE+#J#b1St?LA7T(Q$x1x#oV0Ic)sCTrJ=In< z<6I6fWyN_7)~UGT(&;;W4f_dZ0FV)EgNAPRWNp<8l37N7FXiMGg&t7BLRIovLVY$G zU=1x*+Ask6RpFhDMBI5xZ=8&Tc29!ktdSw_0`Wvn9O(+v$2Ww$t^> zY^R$mv;8F%t87cG!_ClA-HH~YG(ZUpjlc)QZJ`xneua7(E; zQ)KNNy&{53HIuZ%HWgayL_A4bV+4`V;Ha55lLG}(bXZKsSx#y1eCNqG{`L6XZ#?ZVN)jH77%~c1Uhjm!*#`UqGrIwgOg>E9%&v=EPIF{mAEGQ>L`+UMeA{=gDx9JKenxZnvDo`KC8-5H+r4&=`qcEz>Vn(3d_BW zm2Dj6D^CQ^Mv`o&gM6qyJYUSxP-5c-ro%kxv}=)UNzR5W5!xxqBk{zE4vM!UIBxQ? z`BlQx;bv;gaP=dOvuh@~DResPn4VBaTsPsU{C5!pJe+e=0M1?W@W?!JSFQ&(;92~C z57_zNE9$u+0KZE*HANSAWG!E`tEu0)4)!OC+|$bp-+b6JJOHs9)-|NlL2<#1PmySH@ljKntI{a^BQX=zE8vqSE7CJP zICG8WMLbkK{EX8q(|E&%()4CEn~*Snz)2A*PdU}v?ZUZc&?Wk&74^2c0J{bz7&(8* zp>KbJBBKqSGuzg1P7ot+%DRBjhQvsu!KvtRmD7s%)u$GG~9{ zuQ5pC`~Ih5hfVo(a!rVgrU|msX4_a;jVL6j$Px_r+YOASV>yUC4?>DXBwli@1Q`N6luE=WUq! zW1A)6ojD#)Vw_wn;Rh6Cp8jlqD>GF=Cc>nP4GuY=&4AogY)Vvx>8#U)5ipl#HsEFq zfvGvLY}PeFI!(*Q2w?MPJc{m-G401bvgVmW<_dGp{ zm?KHAQJ5K014L8}r>iOX7D6cIi(K?_v=CZntkLlqE*33jy1r|@%N>J57vRwbi=IrQ z_>&BF;Cm$)pAFyNi8j|J*A(6}(I&-(M3XZz#};NwJ-o@HF&akQcnl(#P$D-`cNs_h zQ3JY68aTB{>%>k|#%5E0)Z$o#OtAT|CJ1vpZGP!+KA}YWUVH{< zSbhum|Hw~8k6wL+ zmoF?{6(K2tx~s{T(NG@qDw@eUEm;$5v4L3J`Pnl))!8A?Qq#I|@okSd_DWo~t42Rv|og_9Dx6XKUgYnLB55sqm z-l4D~8041k8eO?c(L$*3Z{GWACk5#f!_ZNJh#m4DZ~ieRF#tR5W!PkAD(UkMf-(96 z9dVSJZ8{eivN;EZ6sFBI<1Wwc7;nvBuj6F1F#5?Pw^S0)nJ&lUszl-e;NRtcs2dz^?0`dj^9x7wyJxc;<(U}Z zcZ$p5&$-;#=RTaizMnMjt9y2E;oeI@Fo;UXhDxMpMH!fuOf*LU4x_5G&gVrn4zHpp zwi_~DFL5Wl1yeC5QA(cHDUHD$E&HRCtwP_ z;-K??VjRy&6ivi9SiJu#Eaq%5GzR)6%uABQb%9`{;%7*|LCPQrI zU_p?WO_Kw+_f65xh|CZx5CMrWQ6ix*EWmJoAu3RYB^!EO^t9zerW}q{!H;J1rORpq zThz+BdTQn3QaHR!;ej#Z(C|h8QqjJlOImoyQY*kA$BX6It(Kk)4622NrGArhZp*_N z5jszv(S+f!0I5izSb&sSPA5Rl5IqBb#)V*xE4d}($OS+*ysqU=?s`)ar7krS8rZad z8(Axg%aFK$yHTwKQ@yaITTi$(Zl{aS9zGLyok1zcZwV-u6y*R7vDF5^YEIJ#$2Q7RCC!S-i_$QE_jE|?1DF%lFV4d~3?k|sp6IpcW(HDVBKFHe z;L&-~D-GqDI2~^rrHC1PIK*I|cnil0N;?HLtb-6}3ZsK$PZ+w$_RrrGX_3uV|I(RJ zni&csZ(;9e)>;T?90W9;9}q_iM_~LkPgxQ1n-~K>PADxr*sybr!9n{taYvJXyq{?v zYRyr3F;q)1EGfAhr8ycrd*Q+s7lM#PiI^Jg_FDXmB_B%};A51JP4(OqDcQW+yGY6o z$j?}!s+u~BByHp5yjDrp^;s882wXI9)e_UhkrlNNNNPVJO}El^I~lOmp{TEw^y#)q z3kq8UDS6Nopj7NVW)gVkE8c8>sbz1d1UKSR(2PfWq&2xuC8S;*v#cZ?(I3$NVlvFH@+Zh8gxe6+#=x|<9-Kjzc!!pBjnWwy# zO4wEz%Z^a@9S|>~3(4q1`Rq#TtQP8-Hz}FE#Q96A30S01rEG^>=6iB~Wh*|V#O0ZV zXiG=RhPm=O4K$|W6uwd8vS-(&%8(9%gNhBq(ZS7rs?mBxH|wz`OjIM-vv?C+x=7z< z|G3gH;C#0a10+72=qwhYGG#F5hU4jG#}Uap8=Fm?V0Zfrq5(exP)*(`tMNr#YK!y zPlU86g}Yl)6>I=oK zyMRj@jpI-^y-&)2GaLg$^Njh4^eS#o$PvW*iFo8HM6k+NQ{`AdN;ro;FM5y{kRB+l z;?ul3wPk{<>T5j24IW5aNKrH;LbHPYotLkO-T#alf#6~Zl%K;2>)D#jjDy*oj_Z6%(m{R zw(d-A>yB)HMbV8T26yHB=Nz{C6kBT*DaL%%Zvp4PnTI|QuH~SJTxtBUoX`s zX2aj19mt^QH=Zq9fv-jYw;54`K3jmEzkJyY&+w5Ud1o#xKY9e8@&E%hE&x%_*4Z;7 zx&C2)4fThE?uRkv9}cEhK9u2qnh1WlBmXop{qRQp)L8lkc;VD(E+2RgWVD1b=9r$` zT`e9n`93~Mc+o{TESvsvj>D|o-i#KbpAUVEN5WTc-FRx}!Sajk zj5GC=xT;J?XL7yCy6T7zj|q+U8BU8w6phTVK>XcF@${2ogGN65V`4jx>(eA$b~Hkf zdz+mZ1K)O(JpHMzQSZD*x`GKaAJvC{vp|XBWcH&tg~jWi*zU5Wy42vf#_C;mmT!MS zm!8Wi;6? zB*K~Bw&8EMa*Qbm1+_n(C?vErL9xm#Xh}sVo>~}97L(9vqSs(aW z6rcmD!HJ?J{!n*Vc#uNL!~0i9Dx&`paFf|Z0v)bn*`T)!<=p6 ziYt4N`-q84M5{%1+{=1N>4b94X?N^}{LkI{T3haE`(rgh>|Cg2qm0Vj9j5EqxRGa_ z(J(n{N3?NrLPiQ2nm$O1ToR{UX>GZn$@tS4eHyoR((_Rotp4V`uSzd}HDlM;N*@Hh z`f$e*tvSvfp^PL0!3%BVSRfMnRq}$sQN`PBnw^pGAK^T5S1~3m_y#N3gk;S$wr`Zx zzI6kIf^>_;unK}UIpCkXW!&5udl!qU;4;3%j;*e$CK(Y@UwJOMV@^Ydhe`W z*VutvmS%f5{q;ZsV1lE6YhR%N`OoihqH$9OQYL2?r03)pw66<@2~AQ3H%#;l%>TVg zRm}@MV+BV98m4;EmYB|IOJbS|gF~Nk6^WY}I!PPn3WK8;KzgZSEi0UpW5IAnd@jnT z=4jxXo}22UY!8i=_5(IJ1T|1Wy=bRvh}H~8=XigqV6!7C7q(%4HZu#MUXcd9W1LiN zZ{~>9uHD*R$ZAa)LrOcypa@St?(0MD>8f}gi`Qwz6vc`PrI*-X7vC?;*~*LoX*>K5#Fs zWDwdoSH=T5I~sI<%4dNnWv~Pw&&pY!C>ndO%64KWk?A84Lt}5pOx~g7ixX?Ut!HL= z0l6d@9ruv76wJGsu_zk;12EmI^U=N?8wUGy<(cwb2xFI<1>I$ra##~C!doYT_p zzL>-h(hlD4oA=WJ#}B%_`RZmVkGA@#sg$Mbn0tRX?C14=#l^jJxIb!Or!4l z{?y=aqmwljA6%#{)&6i1h=*H~6Qq3cAZhG%7Hzmth`NnciW@Ji+*!LCt=fl!7pG{W ztFJtjtFu2s-E{b3NA2Nc;H4d$j-tJeCK1=aX;Op%o63qE zo2-1Z`!&gb5HLlMP7($N+u4l|qu!{CEo|Vu$VBsWe{+micfk0rEG;eBfm;Y)>6>YM z(eYJoti8H>Wo>)?#oe1P-KZmk>Pe6jh~ecg$zc@Bm`l0U|8pU>w!M94^U6!x8-&<% zb7Pf?Zr7o;C*vYx+XRtG^DTx_FN%1C;vPlzQ&};8x}PC26zEyi$!;raQb=k?YL*UX z;V4j^_Zq2SeV?`xaqLp%;lseU1 z`Uw(#JiM?%`9;}lMpD^@@0K5>J*W6fI%R5qX=-L}6kPrc7nJR{ugZuxVDl>M1YTbi zF`H#hd^^7yeFi?^-)FTGm2+02>%E)e^+0${$LshII3Y3eEz5k%lk=^}d@GalU6>Kx zvopebPUgGdau$`FR_IL;Eqcir3L!?rm%H~o_hfNU)M{;*L7D{z7gA0KSW(H?Cb$QG zFvt*UHs=cRX$-+h;hnFt5MkQdA61zJ`wrBzU??2MTJvKW;QN#@2j*JtM&3UWZ+e@xG5Tyxh9EQH}WT?v2fxFKz8^-C5sV zyMFt{wTe}WEYQ}oPBswUvE-;|Woe~yK`r4XZOlW*RE~csd`ZDK59_f)p!_x&jKN* z0p8kP+umH?y?STum5KNSpxE6p36(%$gZUF4S9fl%-3TMX>lBAZr7P-$15qvBl_*rB z6@qf@`mMEXF{`SfwVQ}@aS^R0XRHE9Y8~(Lo1=;qUQp+%W=L1ZhZn!*+X#PSwhRFO}%hC8yl(E(wy%6@(u~wDR0@m~-XXii3{Xvb)@KVxu93 z2nGO`lhZLTf1Y(Fd$7c3%o1+2l3{?TX%UC16?5+smGS-+c&qP?u)~GML zq!ny@(YVts2z)!WwgY6o@k%!6wB)_N7E;zFRH)B*1{VG;ylV=RiZUaAc<3WC5djUf zVFGPgK*tkTKh@hq-WbZ`=0G5RQ`vFXSJ z9F5MPn$SZ%G@}$nr5lrfjbM=b1f9DJ^dkb0p;8gPKK?#r0wwx;7Ta}P(_A6+Ni+~X zI-RxhBFMk9q_+v;x5bkFsra+YgM_ktTfcSv)*YcS-o3K9t&ctC9sZMB#!D>?uQC|^ zRoQe>x?sroA?Tep-4|Zwn&c0!^Gx)KS6wOB%E?ahD!W>4rn=34X2r8)QMMgJIyTm=w_3 zw!-<+AIPJ*&EVaCbN+VMK`ylUC3I-RrlyYAzPVQ{(-m|!2EeA>B%H_$!Pzj*qKGZ) zj;TgzzyQkXxYYk{bl&o$)z$CHAkKw{{e?(7J?@@mhKvLPbgZeEU{`T#I}<(QmmW1A z4O$ntzpVWse)Z3e#7U*-6PyLx8?SD^bZ29C<*I1ZF09^v^1DSRREK3|FCgLyE>`ZG zK;GG0yZOTPjjbx-cn-};%!9hE7jNC!t}@Q}6_vn+v%Zj7=)QxuW@0ZzXSgYSznDby z;X}8W9`p&tLe@QZJ@Q;$46#xnAbYtXb-^pa+%%YfVVQ*NW&6v$u)r+Wfl)8TcCf^K zq5Xizb`)xVt9@QOsW)u<3e#wykUzh?_2Sx95L32py>w@NBU&x}H>(xOzBGD}G*=>h zXnpa&^`_*MXU~&!J{$4zv6oA95bDYkDXogM*JSaxM$oDMd3s(OiOIuKP ziXG;D!{1(K*KoohP~~zEO_)yb^+MS^@L#SiRVuZA!!bSatA_z$p&9{|Oz2Y1D-MeY z7w*;CV6Or7iL%mh<z8bMA=+ zerw=vEbRrq;r-tW>f?_6v1I~vzR}=+M#2?&LEvys_WyzaE)v|bV^wx6vNqhZEu*ZB zG0|gL5?z3{oW)6Rvy5FJZM7VNO=sJ=@>(S=dVMqByL`8KK4==t6>XLHyUUSnP;BKZ zOn!M!CO3&}t`^!tt7%LbMe`>Hp2(>J({0jn_&CzOoOfGE-W;TT?6-R%KTEcM>^8s1 z8;to&?LqXxKmFp#=YQ$f>11q2Prm%c$3OnLpHbF@@{XBK`$A5xX<0~%MUVgHr%!(M zg`yHt{E>2y%FRxWN|sY(qg^5y<0`=s14_fEx@}eU;6?qFbPO_G=^0qRHOTf5LE9Sc zHm6DjbX9e!dTLAEB4UDj3HbAW@S(IbXOhw#v+8!07OHrgDtlzr?jgrRp(qQn0&C<`UYOc<5jbfaG41iw`h*c6mV)QyM6S%?}< z<4`0Xnuj7PM`7$f1EdSk?_(3Z2i(uDGE7j;Pd^L8Ki1k{?zwE$@MP7dHTewoRkYeE zXA!w3IeK`tSv31X>j5l(2MV5VzJ}EC)0w136$`3mkd9^g>0#2@Lhq@xObXH4YwQ1Y z_uBQ%+q*lvuWVd-;d&KzMpiZ9BDe2s+<58w_U7&DJM3muP#Q2HDPiTRi{lchWbeFi zWzBwYyeZ_`?f|`wi&ipB2B{0zc)hWCbNAZj^=&*|f#mC(H#gRQ?s)jk25Rkvrv>Vj zJ8QRhwyQ*!XRfvfF-6gs z0p7JcYcG)3mW0@U_8_M1sC>pk5U*3T>u?Q7L@(KgZjLfSFYk)?$Q9VBT`tH@CCF)p zLl`>IB(=tv$ogk3;WAEpoaG3Lb<*B_UqWzmwUSPv`q+axDf0xRvA3{#a{cG^RbZlK zm~IG9?*F=rj&?6?d3Qy?STZQLH)Tc1V2};mdNzCQ?0U9;S0EbU58d)Jj4uYcO4s7F z!`IqlU2>%BQ7Jml@WUbv_s3*041YoD!e1z&t;npTNBU|_SnhLszM=puC2==+p`2BU zY^63B%GmK>y}2$L%IRC|VJkUq z^^FNcBB9NHMkZX9q!N#X$X@}Gh`L12&PXP1f4CV>LL>}K?XvY93f30-qYtn}q3O{e z(ut{M1<(pa*&_G#Me;QHX5cK`o{{g#nH7ys4WdihS>sv9!kt|nF6BE z|A^~o8+g4Cf1?ZVI+2V{%8{!$j#3w-x7?_h5*rzRP{)Cp{Hd&m;V0owVTN{_bF|w< zS=uRx!k7miP9AuQ0^D&M=7~M!g`QHQK4(CwiIJ#Wk_cpRV@=s#6`443sHDaxZE=** z7SxcoQy_1g795u>IjA|MM3AHCkULZ!&x$}*+>;z@>@bQCQw%W5;aIW9F}VXf%ntN& zHfW`PsL9S{SrIm0g@AexcSdxz@lp{E;bBcKIlYzuMV5I*k6cvvr1jP2a z2uDVJoD68W2$0g3BP{h|_Hha`xVP8gsBzQqlL4tB>GZwLf$!2r+HtU~MVoCl$KWKW zih|r>EV>3?PtglhiH3AVjS>3n+YYIS3%2`z=xOhe?FqYI9B<50(fCvqiBpnojWMM_ zzhR)IlMcE#W!cu~od&8J^FD_%*dPs9E85I85n*uULDEccc3!=8BO-PeqNvdDN;a>Z z*$H*ym5pLy+P6~`Y!Q*iYJrxTu$DE^907!^LEK8wbUs5n>mi^^qsP`sPQ5P-;{JYr z+RTsmzT2&22+IXOTf8$`G%$6p`&>An10SBYh$OH1dF%Eh9zd zPzQ+&X%1|Xk-?y^eaHvEGGQz)nqL)vfwG|r)mwlj%5+5}M+P-GYV=^VP4?n%-utQ% z6>#bB8vSawdY!S1hKC4qcsy8+Ju2aa?%_2dAsvakd$CS+O|VVc^hAUwdo%0N7*LmT z@uWBEx;3q{>_Ciw{V=xGq9WEMAwY0FGJ@Zkg1%`beX+QFPM88%XciThk++Y3w9^5? zP%nbOES5{%N%C;(0UqeJWF%0xjpEd%fzvBr0~DB(bErg`=(*pSA{}oRa@S&$H45rP z0*#VG(i+vHyKfxUmzS#182&w~M)0;mZ!1ej_jDLc5>#io@5u;c`7#|rdyz12pafet zW#?z)UTDTxc!r$0YQ8*t=!YGDqQKzt3Gaeb*+l};9BSy(R{1QVY{tUInF*Ve{@9DE z$6;X{w+NhLb&OPiKWxOD$innt1QmWI+~_( zF(j%Rz<=r`)(k9QAna1WA;pXFc`kZE+%Le69-#@kX-HnJEXjK%;Fc}olyPs&1zB&( z(o!Q4o8+WbQ#Er+jyw^vb9n#4Dn%)Fib0(LW;96OQL_L9LCMv~y`%g9b|OhxU6ch` zrN^5n<`!67ym@PTqYf>9#dcx@;@4nLHbl;pwO_+Vi&$?_GaWQ}_2ZqG*!+lF3KY02 zBUmMdrJSV582Qy0Sy4(1@gSyUs=1#u?{ltLbc?K1gG$?FM4#8kic~~ElBaUknv9TF z(j+24qHp;dioiHpg4={5dJrk&D?Ft`LurN`m0mDx6K~k8oUB2A{?2B4i;BxQO?pxA zrD<(ao;tcwJ99N^4JMtqQ;TOK&cKM4epvZ+i-an|kO`XdF;a>85)iu-hO|5qYd-DH z-PNCDGzlfpjkr)8Me7EhcE17Z*v^dJQn0FAm*eIJ>myVy%n?`dHX0hHQpG?5K#~{X z+E6S;spBR>PPu-6e##xV#!uNN%s4Q2SQ53yraj2IJfj8kQPt1iWi07l1Bkc9T2RCa z^^JgJPvY=4eNCUdh|hGvd`g`mryeh67UiH=&up`c=0uI8MIoJNFHfQ2QS)UBbe_=W zt4`QG&+k3ZmoFMblUs%WG7mH$YA!niNE_m!9tXvd zuMp7{&yNE+HKc2%d}lmtdr&rBWt)khE4_1ZN#6IG{ectEi zC4P1+^mUMbw7d7JOvKWJzMJ-5tzt;~SLu0&o=s~>%YCsLfux8s4277lM>1Y6F zK$yQUprwckG}X47H!|#Sh8?z~H$NVQJ^!IXf_phStjHPyf1qVd2dexMmLGA#^ zaYf=Zo(OUWK#nU#h=(WvI$ri+_{^NM)o=)~RTsT4WB#(^e~~s%)WU^=;>y;EkX~>= ziIwAlV@y8J;vs@kk;V!&W{UbG52xkTT5wIqCU~8+4>sf%K9PMf5?slpqN#_s$Mg$i3atPBY}96Ka)n6@N{NXHwq)gNFjkTW#M=w)6Mf~ z*tLm%HqkyGf67Kb^9}T~pmjd}l!bogo9AbR7mgO#=gXEkHu}y@J8p?7*7}5HvBf_A z{D_;PGtMCAlZN#RtD=wG6Zf*{CnNV*<#uBC7`F1-e=(qHI095n!~d#b=wF5YJj8#- zlZ?%~(*0=0>3tQg3xHXmWOcBg@HK&AnL+iNxGShw5@-fwWHo>76T$*ni+9(P*noY= zS0F}B2cym)&|Vl;%XN?`*@tp7C%pnLp?i35q5KeFDs&hXkZl!krQBF@*j;c|}tw-e+*a~DZIS_$Sce*M!#leKeQ|wXQe;&z3 zL$^Z$Ep;xSIkLz4t-pNq&Yu^KAs?_9BV;WCQ3Qe5Zvq( zG#FWckv_~u&HX?}NDPF2)s(6LEJ=+Zbc?4Qp*ShHBu<7nwC7$qL=Ka#a|^3JW&}P< z5We8@0n5KwKlq+dGHS%bIIXB8e>sFhc$PXBuD>SOQKF^j*EgIL+D5j1lopkLw2Pz$^(+`lt3{8F&4O2W=AP5cU z&Imjn5$j|d?Wv>22t}?#`HDuIoK>$`L{`#FM5Ri33Xk)w#Z0b3g*T`ae=O)?85f=C zijRCIJ8H0@Ep~B=b`WHwLe0+(dJ;q@+e@1`N`r(fRoS*gt_mOhvMZ(!X06}fH17f5tf-YD;1#%zbt^HEvogz>d1mA;sz64mv`W%DEC^qeHhwCSbn za>t9=18m>u!my-(+Qqb296#AuW~s@Sxy9U+9Y%0mmC9!70MQirf382SSjr!025e+l zr44H#g2s#$10`#OdZ?%@V{8Yi*Jq(;mN!Ie*9NoJ^t?7@Bgn~9{>6~PyYU$NAG^up%1E#!~#Jp zE^QFqEh$O^B0HZhe<*4*b5gZX!;{bd^2ys@c=XP9vD$z5AtM5>kH7iHE{XJ)aGw|v zaZ=A*hG(?OS`yDP{gQ_l(FILIvzJ`DFsMVCj>vAq_~8uT_o5YSIeNAp&CM*FZ7C)! zGrw3d7zVIAT-5NU-mSImb+ml3vR0!vP)O~>{rbXYuZ>~uA%G@(uuF12u8EOsixtUKlQ2pYf6*D037>d^f>$$+!$bkTv{imbj$#!* zG^&strnK>&9SqB=-g6p-^BTBHHF=-PxVWl-1`xBpT7$$#Wr`5)F5PnxQ0XQLx(+!~ zXtD<5^STjm|^UQ~~mQV4_i`*KAh4oP-4$%Zj6tqaQ)*;Xs>k<}F| zf7}&{{0q8bWpY>8-LNvb8&(RsVP*DiSgA;)r+33jMYgl38~BWPS!TEK7SomwXjkxX z75d+<(wI66@;R7eY~(Owz4=>0tJY<%b)^V-nfbDRRPWzjs4BEd3PxEI2_6*lBkFVc z$<=#NE~7WXonhx2>wH%DJENJR5nPTIe}|(A-H9qbpkn=Fa_wBl_yf{I^RDqhn%>(^ znhkVZOa_*p=2dl7qWH=_naEu@yumtIm{#Q*-`06?iqob>41G`NFQ48^yD9=E_MWvJ z+-AcL6Ea#K?`OfPBhMlOP4`R^5Xdim)uy)oISJLVLnp zZ0{&3$=FUB#cfr%30JDYjfPN&2abL!x-O&|WIU)TGu`6A0B_{yO00&N6!SRweMcgws04VGb?K!!%{AARLDi98kPsJeInJ`!K^B2wu8#ykN!@;;>%@aac` z=O)@#!}f%isd%)lrO#-P475a?+C&E=D0dAd*v{UhPVh@~9um{lgDS#;p z*PElR(V!{*QHoOvfAzoBm9w};VR?yM1Y3_in5#WL!YiZn}Py}a~? z{$7ffqUYiNx_G}#RXk7sinNP9p7P=yf>~tMe`~x$5&;E*Q9hu3P@R$Y zJ0N-(x$S6;e%k>V-Pna_*>A8yA!s!a@TYQHZwT)$o++caRE=aIm349P$>0C%@n3xJ z@z?+A_)ow0oA!V+P?a8ly{OFfoIezOep1l2q$N%$RkKg^iQFIel zumRd@;c;_kf6SN6@Y!|TZleIfj{Y!_)ufKwLm|PLGshdfOJ3&(S*GiWcVu99{Pll+ z{H>on`N6MX!}9o>zu<;Fdgn(UeDi0IfBf@MdtRA{xiFXPrY*D~X^rTB6~+VpSbW<* z)v<2CvKqG|a*~ zbBB4_e9z^2ZdmAS7?L~^^*t>~PJ8xZ^ z=7(HAp}(lp)!~I|Q@i7Cny$EsUbL9$gcl&s%Tz9Q`*AC3BuP({c1F(NW7eWI&uV4y zeZ9hfe@K@~{_PC5I>KWIcE1*5z2h4#?)i(0Gqlp5pFH_@cctCOYqYm*)hv3gmknQ|YSJM`s2YnMVKdGXy8x=0cuCe6 z6?ms`lmg1^tCBdn0cSBn8-&ft78fxiMpi=Gf3si~5n^BhO7iDoFA(r!N4viU>_hH{ zKOY5C)zJZfpV(VdP}2!d2|3s1&K=srmE8|VGds25@FWkns>@2u;yW7D@>$kr+_}8rRd_Z*rZamy& zLQ%RskfG~ReNvad3Grg*4#^_Mo-~l|#yc>CMz9YL)Y4`pKmt-LI}}G-)gE@6XeKpfqWJe=cY0$0zE9Xv-CHo?bW3$T|YN6+wsl?vu?7 z3MTc_n8s9&$$+)Bf-X%ze7f3T^2 zvW{=6-b+m>LrlyHwQAEfTW0QQTK3a#wYLu9zG!MA86KcmGd##_0xOCHL7A4Lb&D9+ zCS_i6GGB3M4Uh>eyIhaxp_LO68?|tGf);kU5-6}Tp}>kso(w{5Cb;lL`?FfER_;lX zTz0ao*bv;$3c|92urmK(tKqede=6+bfC*mzq9R9dT=&RA-1oV6X=|ByEjcQF`two zOv)zguR@V~oH~u6B3(VH=}#*B5(LP_e_{V%M4(A1#s>Zi>4i(aDLxYvmX)E{iDYG4 zicV1WW?uF_An7&Op0+aPN_Ez9y&@3>&ridRZDM4UGsg@+h1AZ<(*rmLJ_uh9CxaQ!2nMjpQ-4oT9Kl4|-UP##P*fDbHnXRN<8f=+>tv0% zqu@&qKRbLxcQ(Y5V;;|<^2B)8sW>h8vj&vN8 zk5n6fa{T6eADy7Hfi&ZZ_-@sfJK6bkhis#nE6B@7Bdqlp0v1Shd# zj#nxL&Yz2mH1J&GAZd;UIZWNoIIQzf-3;~EDYEwvfl2ttg)bDgz&Nd{*`zcF0Zlyj z;FF+&s0$1$92;By%=09zixWgDTt!68G_1&fLB_H}vBNtQgvy!?)qplxAuEvTkMjM3 zlc7Lg3Akd`QE(c9A_n<++2;C5bXx55Z-o<>EHlmFnIE*~6W;!YA)gB%bX*+ZCbgW@ z5=#}>d69B4sDJ$MbdT~lS{c;Aq#nt`=L9*6h(2KioCr^3DRN1HLLMd#riBbru1*wx z5I|Xj%WnUejKL|!|49tNO)GLvmQ7z|9{_oB?|(NA`u&gAMSfwgsyXh%Ti3R`HdfWh zz@lnjAE-REX1F`=DiBZ|A1?I=$z^;HhE01(!~sJQpBi;Dx=x&n^t{}L9bjF0tW@PU zC41NPqc|f}dBhDJ7gm;3lDwwl**{o+!X$FEz-Y}9En#`T#kU-=JU_^?p}g7;R>~1@ zENS3ANRleqQrPMGrU{}kG|CW`YmEd=I^tG~mBw5Tk}kmTH}Oy@<)}qB$tMtv%dz#h&aS1@0O5{977K>wepeeqIxQd6Sb2ueRB1c1Ez#nbER8+R8A0%uE-Z zoZ=qd_;f#E%AkPRDi*gIR1C*m7k3rCxP9ZgJP2Nh*76*092)Aog!G0??w!POh8Rzo z8GCe-8bSqQ~Blha+2PoEI+7kDRq(%=&VT*SlxZx0YLZx)~h^Pa>F?C?f9#Ik9 zOQOPaJ`lxv;s8Jv!4d;J8m+Q_h0Z~m%Lb^pK4Qg*vOW%e+>znTRrl$sWAq>N8BE@U z9uMMiU10tYYJPZ-H1;~iol;5+Zwi0Q!m2ofJ50<+#9%oC_xP({JpS?9?|0igTnm;ZSD^`AWY)%PB~_wD09{T`QvuW1Vay#JN&J$mO| zE{e9PU;4X8zy9|p-}s>b_WykE@jL(jOEK|6l(Jv%U3wl@ogAd^6Ws z5v#BN1V=cQ-V>BF2Ik%{qp?+wDe8I!=9{D*I-TNp%^~?I)8* zSUeeCS2}U79ZB9qN+o_Y*r5miBF)qJ{T2@c|Rw-z0IBb4B{jiyO{Dhg1gMHY}q(9ys~UF}OI>47vF0UfhoNZeqa3 zRe!7fSS`pbrRPh)wM%u~Y!isxG&?eY1-u&h+9A3*wjTIE)FyQF^{5m#@~kr&CM7SU zW0@Q@sE~>*(F;c4fnc;^G5FNaI;_(V&|K!hr_`Z)nW^2b5v8pdpZULJ`rLpCGA4tjGPRHCyK%PCUe%jgDaP1e!P45PDJK~X7&5q~RA z>H1f?2d~&L!ICk7V&&d$tw-Bf@0>Gq!6qYlON7>M?jv$74#g{ipt#oE?&W;C;-ZDd znD_Q{XSTv>gPVAefU(kp@Mw(HhcHj@3GJj7VVk`N+5LpV3+u5#C4->=5MgsLRq6q* zazuN&t9nct0%?{w%8l^1=`b*set#@mieig~_I=caDa$m3LWre|Bq9Lv;m}NU0>i=w zbG-ae_Gd(tY?M-h9-Bg8Y)z&@t?`V(hB>_CV%Bb}U51XQpl(~IYrMPh{lr%8XcOEg{s}zG<2xj;p#YlDOZ)z%;aDV1s2Z_MGOksOW?rpd1(*VecYPS)qj9=W-CW~ zsGBz7Y*ySiFZb^fLApqaw@s=;bTnpGS{c2w*(O2*9`+z@C9UFs6Hk=~F!F!~hx*sV zg`JdFW#in7sboMO=TukniEbjegmV!G1$-ZHhF#zS7z6}0Xml#-rWuw-u(adXtS1r0 z(B((gHVM&1q*!zmuZGx&XMfR@iU-p4U>e)-2(GFpb=5i==Qwoi&S#RMC_Y!@pq51r z`z|>vb7#REMUhNucP$=L)#vttnYedlY8w(XIU2AFnt(}n?_ecUj(;@`@~c~re;}ZaKh2T7nSbCrDG}2e9#OnXsvCZ9c2XFYSF7TBN|k5F%d<0CEu!9KusmN+ zqPYz5c^=AWmC!3=L|diEK-C!r%l7WUc1qLDk&%eEtx6BGzFm07BBl@C`}X5+f06H5 z@vl~S{I|b+{BM5~-4?f6t@H5VgoVivV5>6jq)6SRChx4s%ZdgmLE3NMep^%MT^r{fsROCY{Ed}+FHPS5BR3-dSI5>yM9tK(3sz>Gc}%lAH}LvR*SW zTP7o{igIdv+!^W&P_55v%vIjq1Ovp*B1ak#V$~vC9$1G~6(JV#t_ZC;m3Sylu~<3a z?l6TyK!GI=YUzMj7JC_n~H+4ZhxPP1$J!mux*_s2!$Rpr{PDF-=^wXyXoa1f_8CMWb;Un2Yk*<_8?^8N-3<%c~ev z7JuDOlD^C*1|1jv1K4f={m0r3fL4A~O}QZh5RySi&e56Cq(JCs(N-x9b5|qB<|mmh zIubvK)4PDQD31^W5sOVA5=0<}5oyIg1q^wo7N2s4?I@|AKPDT>E9tNs_fH&6*Gf_G zJF|!)y&(uZa6p&}wC6N}^!s9i zZ^cW+Kdu#0@|l?&8))GqJ+e5bN!hz$Hs^*aWXm&ICgjyXeVhw1#Oqf68i7b3OZSR^ z1fp$Vdt%2YbUD|EM8pN>q<=oZmWX?OIns?8WlUJ)`UbfT#~^nzk8(zp6D9@t55nnW zS>J@xiO0y*F?nuSxB0lOxeF!hfbjCz^0NOJgx< z^!*0Tr<>xlhkcPOXfN+Zo46(sVGuS~G~WUlY<-YGP*~f7Oex$=-uc0kx4-bg-~ZY1 zTVIOMA2(^r^IzmOT*v@$(*|<<&i9Ys`r7f2zKO;lc*If+PIM62iI9I77BL`ibmBhQ z2rpH|jkI6>8i0HJ)qg*J@~a2ERdZ+;qy{OYc2>ptYyZ?=Wwt zP!rF}B`0w`S{4(*;FNBI(E;ga-#LEoZ*(YYt7-FIcEQoP^?xlDMSQ~-X!RWzE)2Vf zd6UI8L1okKv5@oSdFxd=Ue{$vmpP0LBWG|7S3D86OU%`%CSRIefUW!^aYzj+cF@V@+Kx(d`p8} zVsGKDA};kA)!HW~!e-G#iw;p)c6Lut3#rvpNSFZ42*o1lvO~%RQHqV>GHH~7OdDK_ zM*VVgjDNbZ@0w|lDgVo~SJ^zt_zKP<2yMa$yRl?-#ZQUF1Y&tcc8q@`uAgr81QL=k zbZ%o9!HwlJJo#={?ot+7CqN&xQ+Y$sp1!zgBSBBRDT+TrCY;;AoA`-Jt^NNCuFJ=rOeYJ zk7k6kAa9!%o)q{0GV1n8yzWIYg~&)+F87$Qze9(bYp(I=Bh(tZk_(7}MIO z34eO1{`h?zx3rEzZbq%!LG~(uchotZ7GWTjS zk85rxN}}<)c-G3cBJ)8G43_HHMy;d|@_#Z$kAM-+&^(uKm#TR~m-RMK4@0dII{`Dv z=%vE*T0W2~YUo6j;_fWb*{HdvafMeDF~QyK>B&?+Nm?_>&#S$GampD#WecUNwg z?a!eMi#2yAzhPGZj5a8G9I5W@PpCgdaW|oBMTDJkqQPmOx6QUrg+fWUKO9&6j7AVV z>!L1Glcp?17=_@zcZvurL(3m&4AwoIPcFC%qLv_i-JGn|pcl3EG^d5wEr0q7vWjS! zv7r0w_DN+ruPcx&$UI!Af)a`o9Fs&YNW?ogMTQX$8i4+b80RAy3g>63D7We*-$>M7 zC$T{VbY>|>Po-+9!WsutUf@G8*RYkE^D&u?pqC|Ej(_q@M>Oum7Ood;3)kmnH6LjO zqkgusE~0OmxN0PH@K52zReujfsiEjL6rJXr;;1?>jZVWKlHuMUgYjI?I(YtF`qa|W zvq`(HV~NUNIDC!Hb0lAmDsGHXw7_*^jGAeO_2@bMHm*m%FXE4Kq>VCJ?0QDJ#0Pcf z7$!M75hr0B9Skrq1v>CM0XXKg>=mZGw?wD|<8WKXE-Mc7nf44@n132fNf04mwX|{+ zTE+;Bg=vh@23%sXbtty8aqpRE7Q0-h+ddZCTqJj6q>7C>j9K`}G3d}pn?@Z*Q$7?^ zU85?x)*R~c%pHx0G*(D3Nm8;U0j^?g36ieWB>}aB69wNE8VLZqwaI+!!4F(ixKUZ* zs_5U@7WP{zT+bYF&VT1o+Ne!N))SsmqwiCZZ-+E*#ZRV?g{Cy~A3h9{&~Cx4L0;vynvar)Osuz_QR zac+1oTE+NM8xuXC7~{3pgDORDMi&Caqwpr(>L7=m*3g6}ChX@}A?4h1WVBMlk=JDC zl*`=51;;l9=Q948j6DceBlSoW5j_4pm&h8d-@ps6BrqM5axsY*b(uN{UpcC%5yAKh zME;i~bs?zh<$vL064qY;Sz>k|87VSVLvw%)P= zmf{Q_t_X$bJ{h5jRyror4-#D6A)COk$UHnf1nEQf1|>GK0eWW}$)9TCBSv`Or=o1) zx-*s8crPk~m#X61)s)=OppcbvqNw;nSt0KQ$b=w0gMZX)hsO`gvT{&9Qc2bsB5fiq z9gTsal2??MGBl!jznA3HBK$-fg1jF$6PTarFb`N{FBeCJHY-^pSpX|xsesFuNvjhyM3`+X5;c`4%!!3wpmt$nttsdG{B)L)N3lXozvL zal=`S@(a(7AZLM2Wj3__3$sCNcmaPuJ4$@;AM4UO5t|QlMJ?>*k8~jo9C%5l!be_; z&)*6hdSOjs9_i?+l8~#KD65)us&bgC3eT$1`bLG=fhLC zyCucLfU#gCRxOOK8nX`A?Q+Gm4++9DSd4&X${DN1Gz56STBbu(9b;g}b8LUrm~S3- zX}c_^%b8W$)#C28RVl7yog%8pD%L3mgm?-;CIXrfH0Cv6Q_)p5ye@QuzGr~1bBh{` z;;Sa%n6*GQwL}zIz0Dci6`4KqA~GMqpu@!6Ir5;x3=3Hb6~x7eRtHiZi5(r^rqkrP z0{h}tN>`F$&@GIXR2+(%w>f{?!P-wUqZ`Ry+7s)gI=@bFou-;Tgz2f)Vllp2W?rQZ zn?8lq%56Z9Qz#BkA0`lN=Tjn&wSK?DfogD>qP1Z`$^o(3S1h!7@J}~JP=hlIw-cq8JjT>uDH$Ab}V+#&da2Jc~h!SS`fTa=h(k6(YAdEXuCfhoLiVDP`e)8c`4%>{KCTxot* zsEYn4@L}|`V&+IfKa5^E$kfj!Y*nbMW3q7zuLpT$&VX9ndPW0D1S*~4D zPTzng!aG3&RJnN@a3g!5@s~SP7M0Nvl*fg&ti8xxRr7y{?xrZ#5FZvS@x=>x!TNo= zUPU(o>;5;wdWLT0fE|7; zYOOb>;Mj;9vfxh%WvJ0P56!n|MBuar{ine%LoI)9VHL=47IH8O`bgpr9KYA3G3tcg}Y0=OXfvg7^R*;M!xQDaI)e<|s|fxkE?H zY5RZEI*jF;7aYp++1K)ZH|<}$OlAW{L=jm80Z5Tc?6T(|8l4MOx}qynRMfX9bIO_? zFI&@UJ{aU%hw9biWzolVmF?Jprydju^Y1)S`}k>CQ$(PiuGAD3)zjqz9h1o%;nQig zUr1(+MvO`w`>TvJY37W!PcERnf zP5f~DL=d9~jDgFt#a|aEgS%b@wrcWMu<*C}Ysk6pL3w65W_i^Pb7jgeAr3sLs4{=g z2a|UuoGN|f^uq^1{+W>5vV#uXc`U~pHL9$Ph^c2k<)OJRpXI-rgNnw&3UDC#vzw%y zPSz_vWiuMaV^YJSdj>D#K}YflDya0P!IDBOyBfZwrGm&A8hTAKX6Z9dbm0;b4S<1j z1*)q7G_je;8tMH!oO0Dqo?Kjf^pSthKJwV3C+0u<*ohNjPJ?%x^8!`d;(5f+#{EwC zj0?R^0w`QMCmDoUGSzk&S;*Zh%Z#u-k9b+!q4!N*TgB4>ik-8{5&u}V%pJ6~T+Xa2 zXN}kYO(h8&q_wkFIT9zc3MX!B54GaMQ3xs1U`Abi?sMcRo17T0j*J^{=pcV4DTX}^ zsd=uyrq{j;U5)b#>t3g7^d$K zIen|Q$rZ;*h=s>4IK=brj9Utpfb&iC2M$}R(3qLJGLo!T{@eWedS#~0CV5r62>0|7 za$f+fTw@er-=s%zsORu3h+BVZ-c#XP53u{OZ+r7d$nxs_wAX2^rPW5Qu~ADZiNJ$O znxmvSkyi9N*`V5}o?TjQ&D}aT_rl6dV=^(j=X0{ztg6L8=@6@9rwK>)&G}s$3_K{F zCtYGG(5<$0#_u2T<56D;TPO19-{&05nd3|xoF$0Q(l51t?Hd%JS=WE{A-wC=(N9|) z(Q1qv&|jW+szFTQSB9$(^3Q|Ym-DT{a*QE?d&-^NMmj(m5|mq1McD!1VUb=*JFP*6 z(chsS@JGNkIhXf~?QF2NSrtH`&O(5l%2SnaaC3nxqoy$)j;Y}Sb2roe;97o;J@Qmd zTB#+yK$LPHxAHfBY3hFojKklBm6b@T)F!ZWH5%czNR<*PBy#_s(02JR25o9v`)NSi zlZQncRG-W)S)8c8bJR$(N*~2~YPSKHj>ig0A?3M`1SzAVLyFx|LQ*NDj1G>J7a~Xr zw$wMsn5wSxe=(EUl{58hgujdU_XPfZ1pl6lj+47aGXaNUNCtnwX=vS8k~TsnaT3|a zgN)hLPve-u^(_);D15>B3fO^JNmpI3K~~pnp-IUESJHKk6c$3HJ2q1_+4mJQra@-C zM^4LY7BxEWqZqAEN#8ME6rt~hL(#Wv<3Z^AZ$FLn9URAirO5wXLv`)bI8?X^F|ZWQ z>oTmr^%>T+zcPQUIH8y4S!IbI4caFS+Yt)tZt9qwuObWBb=qY<=;!biTJVpx!)+=x z32b$34M~qS*Y#q!N_%!MP#Gcqda8)ta<(E}*In%7twDda7rRctnCjVx^4NjKmOapI zTfG!$EkI0cFa-Acn?;=SA!m+I26Sn{-pi(#@LY`*HHsCrYazxV`xsgrTQ6_3W;EQ} zvy42Nbr_maDZ1vCa}K$gcW7jzV5e#15luOsEGBb&k#omZ`i(5mkp()^=$T4o%$KD* z9l9^a?q`4M3H!<{8(0Q1n-+I;En}g>pX>znXcZyM* zGl{O{^_3amM-_?3%1oj^)mt!B61IlbJG>lYBIth{y7>!U1igd$R4qpjQ^pwzpSy*e zt)dJfJyzMn3WS9IEVZvyrb46dJ_|x8{%f0_Cf4?mX$1k83WMi6aFyDfV0a<0pF-qP zHgSenIdJu`7_@>x%ci=>BC0ImlE9!xV-~7~(R88e_-a}3zDOqz{ugp@Vn=(ly_0y~ zEWdvu3wAS1XCh7*D9;5tq|<xqyF-IdjFu z=`Y=pD~_@u&|s$y>cF+pK$8-qMzRJ>tmyWF@J>M(1tv&LHg`Q{ejp*vjzlQd`Gv*a zj@bH%okGPdM$@Q`jvMgdNhu{@_qJ%JT~r^csshId6^Mpi!}5@+P)yQOt77IRoaTdO zDl-ww`K!Sk(A6u7ojjkLfGU6X2b*^X+D9!=@n{ZcSJlQD=H+Mm>ysSX$@yGH7QZTI zv&{&iPB9eka56Aw2<+P!)-V**#WiBX`N!1Bbb2ZPp~XxD zQ?DUdl3)=IA44#be{adh*`(6jsf0k)u53#^$AN(bs;N|UCfBUglrWQ=Q3Y8g87RxT z-LwzReRQ|S>9vBfUnGBh*rVTQTzlriGtK*7{yHKnE{#2f)+5`l!wjxWw^70)RE?T64!eQ# zVIkSdwFVjuCFpYq%FcIV{JiP{&FN%&Mh*M64=6e1k}>cB8;gidc3?RHj$RR)=DgGX zf~K}^y8Q*Z0`wBPYj=&LVf()|`V z?vX!(C?qoD<dpi3b5BdtFCa3TjuB0>++c+`{|q}>O@ zZ@bnxiq?OK@FloY?pL)GY&sRe@+zgW87-fAP7>c-7E{XcWYJY$o;fJGWr#R|iNR5h`dT@zm@G3c<( z7P3}1s2=^<8kN-z7fVv|G0x;xotTLx4BU;b&f|ZzS~>hR-LLQ_ls3Vvlu+mF&HIF_VQ zydZxZqAk=Ik`9AP(zrSRqsO9|ILct90*0TWANYl6h|*c>uLWHDGPoinrBJujZ(Mdr z1$WWXys?C3XOq@gQg?oZ-p4f~+=7O&QaMVnxM~i5q$gQ3^dvGwn|x5AUG>(-SDbL@ z;8<+zT5=nk+`NryRQOX<-m06G7TXh6c58o$QXVubPgQnjJS~H4DwraPaX-JAb=nv> z*pW3X^&kco&ezw)MmN+0qtt#1m-?cm@_>anv_Q}`BeWtl1p8&NOsrK`lSJSuhzkI184f9@PWSW z+L0gY+noylP~FY}q3r!eXVlv)h>_tlo>z*_6XNSIEw);N=Iu@jE~T5d(Uo;G+uEq1 zi=F23d~LqAFpvMO?C!=6eKEH@_LYA}z7Q)8KPcbc&G~Wm2e>A6jpp&eIruD)15v~C zRxppEqutd}QV~fw^ClV~sBh#^xe0ay|MkkNwET;QK6%!WjfKy(aOJ8bqkgQTqRvwd za*v;?8nbT9*{YuCnEt6aN;Np1!MBb69Q0TfaK}nkqXn2Un^Y>+PQp>us;+-<{)(f4 z$8S7ZRo7J1iOh*+)@dJCr#|Y1$c7N4{H#EpFf7FSklsWd1j`F?DW>_t5~64xn#ZHo zlu?JFbOc-RPFvZ;rIfHC$P{F8EOFgc;CSgn7S(A*~JjN_6d7sg4 zMk^evXD2<6qhpskTJ6TcJ>`F-kw*xvewQHXJA8IXF2gg}{#8(@z{BTY#OP5l(^^=8 z4eeQXRN3W>(z!0~3%s2hR5M2cQthDa4H3~YXZ5{XDDZ#|irXoVvRF}fCYevpqH5h@ z;DQ{(nqAoR@`QlvEMZj_qm1{+8a%92VrZC_7>7dlqRwFzbONkMfrfwim$>43K&x># zh#?a}8|VwSRAhjFAtkwoTOP}z@%CDoY?nf$(bc2oFF-8@)X5guTp&T%w&G zY%lM*2c-him=fz7YBGpNXBvz<#H9+s4HFNJKPyP$(^Yr?CWO?1#F+|`L zi>E`TCBgW+gd=>@U!mz>yR2R-ptaC!*a1++A($o-nj#y!N6I#$7BM`(O5MtCC?n?_J_fbW0$4qssf_D21(iYu^b<20?b zMG$CctwBISL&tB!)aKa{L@2%h8 z|Lsrq-}u%2Km1ZG4Ilo?ANSsW{r=m3ckf%j*#FjB`(Jxitru9H<{Ts{Fu7X{yOzk+ zI`2S0`t5(Hqq?XK5mu0Q&}^V{=T2zDgM^lYp^5l==ZYY9LfN|BBIDSMA@;j?A6*llu<3f@Wk z^a=L?gKlE@Ii<=$%06xoW3r0LmzXB$)367Nf%te^Dq3OweC84OZ)I13iS1F}1_Y20 zWINyP+K>x>i;qS?NrTmPz#m(*zyTUXe9`BI?6g$oV~_YkA>LFiGQdA~l|Iz8GJQQC z_LG-0Sn!aYW4)CjUUz~n!oSb~{Fhr-iQFxWYxr5EPe%2o`cSG+<2Ut^bDbhr?WKVp zc8CNz*_qR;XK*Y}H&)MxJu%+k#`P`b)4aiEYaly+Pha2)Z})UVWF`!9X@S!N%r)iV zz}QoTi5CLpbPIe}Q#Nv>z;uh(ugqI#+;F1xl^UQNk zT)A_9;h8TyedofZtLGlS{KN(0idpP(VcNy!CzlG@B~GdPm-IkhE>YyLNS|zV+vkV< zLSW<4I_F!XcOVIhmqXQU!>z^DR4kDo2D4h9fddx>p)9%-hy0!S+?W#_LQkoiai4~R zn`6}AW9Fd^b>W}~HrCA-UJNCFsajdA97Q^RK+3Nw0&`S6YJoKFlSR?IfSbrI6A^cGN zr|2T=kWm&ao5%bmeAqM2`bQKF&Z&Z~B$pl(U9B)0;jzEhJ$}@6#V^vT2fZ^-95Vg%y za3M2*7$UYE9eZ*MT{5%PC#lRT$yrKk;y-ox^0R{1}pPn0t851-y z_N;`*>QD`*V6xPEfB5~qZ+_{+AAV{7dvEQ%{iXZAd3Wz;KiGTw^?N^m_remi z;Tx}r2d%`TY^Y2QXWRSD2YY|`S3tv8e~wDzg6hBf?jNZ6``>-%&+mV2|JOg;`|XeR zUwJcH2dSvTm3;Wi?;TAgl-aA~-8UuDz9x`)_r0GBk~r7zw?_LZU-=GIU}DF`t7w#H z2*N`FU-|z2Td#lkli%&$#bPNimfBiqixO2s?{~MtJrs%tGGD*Dqrhr#i zzx(d5@BQwld+&c65VJhA#6LW-5~(IK(D_zX@T0vqzX~3Q87u^aOeh2`h>lcbKy+-I+vrZyTRk+WV=eKI$zDI z#F5@O)l|O8axE3zgniciZ~PyzbnJf(rVi8Y2Y+9`_rY&6v7YV_>8ka>)xKQnf_)YM zCinmKRVv9OO)AOEs1z`A`3V$H!o)^8Kr|YofHgVRFAD!AraZ$$hI;s6ep<$&R;JpJ znuyBU&_`qoQRGO~RMytWp)4YA)*g$MaM21eL?|X^+74PYfmsCSAx6Rp%<$uK)?S&s zO@FXv;DI&^n|Xh*i7LKyu$iM{4nA-!dRZTw^x{ZaWm%ZLgB)^~j$EGRa~C*fX?2Ap z0%*C@O5nnD4YCIFb^lF2w zc4|mTH8pqvBP?(n3awc z&RSb(DZ457QK{lD9M-M1*sG(DCVvhiK$;b(0c`S1-CJOO+c$Zz4;enN(XkF#5Fmt+ zPBMfjiL4g6Yp14@lc{61V}bS}{^Uv;LM{TZaT+`Lc?rrEHAp0bbDx(w;-4s%WwQn; z8q$lr%P+0ScFo1wB{3i}8DVE)u3_xnkik33SVC68GM49qBPM_07)J0LAAc+f>tqV_ z>f=B+Rx-pA%E0N=Si+2TDP+@Et{dSmermuw55>Xi$cr*;+_$yC29eu=HfiHvn1kE{ zH7ldthMKyHbfedu)aR)EBK+7y@p!fSH*B7G+-QHdVVEX{Z5-jJukuDgBx`KShcKqg za0~9({7N0A8{%euMhH13xPNj4iCl<<^tlC5B;DEz7dg%KuUG}eAjdGweb>`ixB^Q? zAAbnFOXi*tJ>0V}!O&n9++s-i(L6a4YoNLqKX$`L9hR$_^na%|9H=i_(z>&{*?2f@ zQc%jg-H2gh?OT>tYG7i=pEBn0SV6}3U4+Dei{i{}@G?jlS4T+;(ti|!JlA`woHFkB zay)}nS-crHex|WurbfrO%TG|3J;Sv#5#uJ9nOK5vSoM3^l)B7nnohlQhnjO7D~R5`P#Ho)e3V1DoB=B> zj%!rZl4=H=w74@rbAR0EYb`Nhj1MalXn^K}!y9%>&VAm?mYe(mwF}ExaV|g=cx=Gh zW&e48k#0`5w?OwaPTn0g_l&)eo`mx*?-#0cpoM1#tY$AL9P*i0ry<| zsniKP){Vd(J(Mv|81sOD&=OS;TLPg3 z=jVkS>wjc+GZ2PMZmQ0!dMz-1vqG5Ya+K2^Ri&SDscjv0aaC3t#8rlo*O>w8d_L?B z>?9kAeGj%}LojucQ8O6oky8Xo6%6beql0UsE9WjIUtl|QG2_6d8G^zAEu_WZoKz?y zH_(c6LCFHrF-C@Zjj@He=;tm5Opy(|`QCd7LVu!54A(5)GypPl{YQa4wDKfm5QJTc zy;bP9*3rF4x1Dd-gPj!g7LX(;$1=}{`b))gg4}a(>s`4LDy6dGG*(RX%Xx0Q6Cn)2 z85cB5{G&Q?I$8K^$VB@FX9+1WxCWRtff%9kheqVa2!MLIwO-}S0l|kd04cdQm(9JA zFMs|WxH;e=LkxXB9LQGb(LHecoQo_x=MyhxDA!nZ&a@{^Inhyn#>sh+_rh^o)r9b- z3jA=d4||agjW`o6B^{Dx&j$*rI8vsn+n=@WrWk%c1z^NlIh3W!aDfsxjI75UyoEsx ztnZd#!XQ2iIisV9<%WmxuoYiPi{Vzh=6^nZE>*Qb%%Qr29-5)b3FJxT`@CAYO!rx} z&2=#*69efCbIx$udGvy9E#Q_X?zL8DZ3z1Va{DQykq(FqW)Eg(b#`2C!ON8+D+D>M zvGi&oqpAzTE;JISbcp3MUq1<+q#Z{xZZkYjGfvUg_W*x&z-Px{Ha^#ksid;IZhsmH z@gRi5V9*;!K{q|fxjrIL-C<-dqw_Gp!EqRJbwxY}^=tk)zU3t-!=71U^q(>Xtk5Lj zEem;I%eqyMIBFg>O*Q!;E;MwL&!gGeLB1zj!$L?~U~<6s&*>{0r+A{Bw9_$4a0(pc zNvqukH@M}BCQOMe*K9tai*)a^=zqF|jDWQ>QFMqj36+;Hnf)%%R0$eD6T$U~mX_aUte+KpN2vP+w% zl1ZGN#Q6Tqx{m-JOoA5-b3Qyz@r+!s0fe*7RMZT0@CdfrzxoN}-~aAAdw)Ot(fzmo z&cRr6`y%&t7agcUdF(ZGqxub&799p+8MC4b_x(k?Hm_vZKNq?sY5O-)n$%E`dE{yRhs06s&*|os7x^K* znJ_wPSZ~;2_C@2IWl0up43&i_3l>=WMN6SB{W*qp+k-OP$%t0QOQ>Ie^s z=nzoks8V_jbI!mylG7XOJ0DX*gYZfEqz#>2LWT)G^MB}M65A{Vo*P*KD8iGlrg5w{ zDW(RVoFQfKywKZtzSM*BgN|PLvDHsogjd3o7-Gbukh#IjSx5BkW-8IRmgoI;)!XEFecbC1ZU$w6fy|KijYO^qqn4!ZDoA^W*)ymuMMZ`*uvlmoW@Vs6Hwkm z8XKpj*MCJQrFS{ORXdWt>Z@kqvu2)cc*p2>Sxu zpr+3tfQ8hO9aqR?`nU64xAR?x(4S7eaepWTw3Ni5jVv3H)Nf$48eylx5Z5)DLJ)u# zU`~Rvo)3K=>F?Law^uK6p@TJhd2_4;;P(m77jMkU@>`7(JA1j=W@nNp#M481j4AfQ z@>bq6#4W>K!j@ya1MleI>^``w6(((L&d0rj!8^*0Yw-67T=-1b#b7mMw=oMR%71QS zE_hzh*)T!suaH!*@|jZ&Y6S$Ie_4pb>)?2IHH82s0y?D~gtS1E+aVN_X+H#xbE~&^ znkNNkYA(#1yCLe`Ag|s;@A0>#WAmLR#Hy5UqvoQ1X?1#=Eeb%nYvfQ@;NTozJ4hGO z`KWo)NP*BrO|1I~@l^lYVXKW#mw&q2ReSe*4#*#*Hh~^j(-BM^^G;gt8Ut6T zUp({TF4qZ{^bFU#iv$S@&{-9&6aUtdqLXh6c8A(g%Q{q@HPSYX%HkI~GYx`+f(b;u zB6&RB$hugW;f)wJDpZDQ%9z3iITa-q-$RvyuZ#~Y2;NhOxd`T9Yn>q&%zv70-c8K8 z4zkUCr7=M#+r;_~z2mrzJGDlCB-){Y?2=5W$r#gcX=cmw=}ozTRw*mx#dkO&n~+;s zd$N_#C4-_UDc~O)S!%Q-^yP3NH))eE;ZIjiUo19oJIXGKQ_Gfy*y*ReRO~jd&_93` zA~!BGP}cmIaxNflFDMK{QGfIW+NTR0i+6nj1x!T`I^Jo3fV^rM2(%8Y-hvIp=HPJ! zsT@?Pf>pS56sJesHeT747FXm1ugC2qXXnF;AsFbaCs%0BBnx_4HtBP~B}b?;W(z)# zf@8P|vVSC8>WUW)e$Y&C8r5V2rf-4d=utGJ-FA5d#Or4xdSo50dw(b;mv-}QDen*LCDOn$l9{YG+o`M@=ER2^ z*mxidA2iFb4}UNXc)KEpAM5<`$pDJ56xj(^Rgx2n;ez1BpT1Ny0Yby{QzVmjM7=eg zJv~k+6pFykQZCs?LoCi6r})w+lik%1SNCKV86fbCBUlV$cUedd5S#F-WjlRPq{=HU zM~u+e zi<5p0MIOj3{uMhmQG80v06KD%VodxJCw2%uE4J)NG>2OhQ`_ns)C^cbd?n;K#XhmR zERX@CoPTc+88m;q1btBVA?OU~XF(6!p0P*@AME02Gg;+!cp*cMly6?nx-X+)Iu}c( z14?F+>IDrUq|_d6<9O>yiXPlb)*%cUy;CqoiW5yi38Ba$+0Mi+q%vCp8;r_arDhh) zel7(Z+%&IZK>}A&XPblCR!{{oNI9D1audT+wSOU;o7sYVh%P{TLQ2l^VUZNsV8{xs z^3~c}2Anrg=$c8b9`!RxQ{z|_2SyRymyd@2p(K<3QPUlzd_u?)@Bi_wW?hW4W`JWR z(d!IF5nF;U+tIPvp#qm}#Cmb}mm7F?T6@Y_ zZhq5(;PNeI!0s`yE|&*L>4OeB4#^3grQ4SxHy$LheHDinGnCf`v4`$!Qg(wlvBy(w zP^`Uzwbu|#-nKtQ@n3zO@q~FL!p|mEV}El3DRUM8&D;*0h=H*RSys;KYt3|RXG%6m` z2E@G82uy*qa)xM_)2EimV=F0>)s*?WF%7r~`u8+gM4uJ^u{stEq8FGM7z3}6(0?k@ zD_nr68Fl1mbk*=zt) z@8e8`P>B|57h^72NatL450sD3HPmRZhYrwFdC;Of!VP9QBSu0{siWVbhleH0^IAfk1)!=TKBIK6 zRgy!A7W)n3gOjb)*7>e&rlNpsT@AE}2R*y}8wk<4DO+A*H8F!FJtFfgn&_=8PMrA|L|HDi8)f@u~rfMCa?kj5^bLL?`O$E zEUg4&FeO_v0~f5}8RvH5X<7w?+z*8PPABa+-H|`4o##T|nFkh-JKtO&z2gJ$P_$a; zjT#M@{7x_EHjvw2>{+mDfqzl5T8uayb3xdet$|4@)11mZ?jTPUBK%>?H8qo(H;WqW zvzTC54iwc65|6_c=rB#k3%G$86jd#+)E=C+WIlEV8xm@syo)2HNzU#CK|yF0{lsZf z+?@*i&@LX^ECzt6j{Cr;*ERO&Dt9ExDYiE|k<3V)5hs{)4(0^k&Y&H=}kN|JF zSVMyBEhYqT`=kp1CrX7`{@h&o#Tb6_!lS(<+ns)h!MR4u8Qoyek$^rSxBO)sf+9rr zF{%Xk#i_#MsEl;wxB*K8kp%YJ{E>WGID6J3#Vb3$fLJG{9aJ2(cL-B5G!8cInf^7? zluFuASteB=@V2^i<$n{y=r|rT4lyiLfIBj>QDwu3*gf&R2YYnyL<6z%mktZ!YbRt8 zzGqe(Vt=a>Bn5&!6m5oZaVbx5%)H ziQDl;2!|F7#>u&^Jb_?xb5{iWYduJ1fR$_cL2cgPr;NDxLCE^Ioq#F0L=@O;Wd!Ff z2qDV|0WI^Lm48V>qNS&mz@;NCD8hx24fMy$7F3*2(=0pcke<1pweU=kA;An0M~4x} ze(0k(46<)-;*6vEuS)YVdga+Wt3gO8i9 z$m6e11y}k14<{IexWM?SZ>}tL;v_03TH=i%`%iBD@qg*(FK+?*6wnKFXZ*S`HO&}# ziF|yjA$1DfT$8TzAG9T$Pv%w|T!pICEKzNu?|aCjZ{^&~+7Q8X*coKKPO3b7T^GCb^vrM|A1`%{m#4)B_oCdmP$Vk& zYb^e<9Dh^^if?>b40MhBWkv&H$rhwYVNm=wV;1T|W11@3%|VT|GC&f;b5{tQNeQES z#UmG87NbuGb>mK1$O31AGjN((KM57% zf6Zi$lTxOsfB%UzPMO4We8{hgb>mPYjs+ZGz~@Bc0pGIUGt-TgXt0%giV4YM2lXSS zUoOqYpV;Z;he8$>aG=?-q%C~J2v-+t$-=x`hZbh0=sp%DZG+~xtT`;~<+5Xttyf=G zUKpvs8AFIL!0Z{tAT$8+ZWyhVi>_>^4PJKDIG^0?Q;erIn#_ znOiO*rAC_Y-dFijkqtzP#HKLqXL;M%R&pEa7~50Ao(h71w?Qf+{Jl`$ zA*#iqe?StjzvJX92+$<3-O!cH1g~h7lRb2+{Ry{}kmWE`h%-vH5ABI%yBfM*)9{&4 z)r!qbRjEm72U*1>!#`?VBu!V}8SU}`s~|DJV9Mhr+T&nZa+q26IGLuzr&ungSpBo} z3nw47Ce~v8`pLzU2bm61JgZi@ z-dQO!&T&hoAu~_v^oyO9#U6 z6!8zGz&@slf9V}W^(Ox1QiTZE#J~KVf4Fp0K2R#ms3!j9ckHd~H9APM!?6M$K7NgI zCkJn3jZ5GL`7%Bqfx9##sJhfYqn~BCmzodzYiW^Cy}o+cZ_gy}P{dA*42csLmFNWu zHrAoG9S%L_Q3a2ax5z6goV#K*=J_VXNr2GqYyG?^o)P1cxh6K4-TV$Wteh<7e=K{@ z&X{+h%4j-q^8AC^H zyB)*Rq^{cTTjW9WmU4!y>qUGRe-*pelO$ot8(luS57Q*&OVJ8HVbJ*}#w@O`^|RjK zqvRGZwQjZwtObq>|DUVRJpC+lj2Oc(+f-*pQfnh#5c?|u_3I;goDuE=ohz* z+>0Wb2K+jU56iNKm4F3{_1$D?;IE()v)XH?Xzp)i_6q}E zRx#?Xd6!)Hqhe-iy`h!Df4ZBXU?rz>*Od@7%^dO9UsbdAjD*VCl7=%wnWB&(*e_$E zczkrNwE;sXxK`R~S7w&yS0LC&+HIc~%%EMR5+^M)F1J?$;In%dMIIW044$B-U38AT z8P2k&?v3bbi5-aTWN1M$8OJBKB0=?kJ4}aZa5<_al!Q)|8|WhXe<=uip*{qK;P{f~ zEpK9js|u}|OLWab53hoaYtLMGrkUJ-=O6aJ`wmCfgD_`5`|bVT{rtl(fBpWSezgCq zpX`78?XA|%wSJZs;^Y1gf4BED2*`H#-LKyN;Df#I|ALAXpFaHFkN3Xv-TfbYaqrbP z_Fw(!-p{^%@7J$^f2HpPix7n~@?!Bn;c>2$y`0*zdA1|gP~AOD6k-cRvo@0dTi#7t zMI!!*0<5nS#QJ&+1pJ*N3_OIK(bDEY?IOtKMmHtz#;e@$c1@6Lrw#8dP_bD4n?`*dUV4BXn6Wo2!FmTWys`==WM#(@`0zMEm# z?}Q+M%v?~6ah5zjk_25#wguLPgM14XFd?jsWc9kQe-JWhJrl?%hU@Fu4mx05+st!z zN7fgT=FL`jz#I^ltx-MY^8Z6?Va`N1a zHIh$_P=zd6a*eHI&|;TE1=xmmVO)X5f={tNG9e+b3iz4|%q&_bdM{>?ba+$@T3fv_ zH5S<|e_5RX<3$$ZV1@IF1TS3jW!rnJY_eb<&BoKz2E%k z?jOIp|HiNG|KXSF=8BGlJ&u>eorid!C^$)`BgxjeF905H=u0zMrYC0yf;ZA-Df&eP zr!)B$2~my|Hl-IEu-#Qd!83am2p;G_%qy2Se_TbUMZ1YXsy?iDX~?O;8Ub|ls&z7L zTgjfeho&gHN(7m#-o~R9y`JtyFeb;}jlevEbW4q4?20V_;a)=Q!^A&g8;mKq2f?Js zCRFN)1aM&Q`C$0X8)YqkA7Y$=LBsqmHQWh*EbF=vvK+v?T9Jc>e*Pm5jk;eA4e9VW^0OEj#O1lW(f!){L@ z(`f-*Bn14kLSDPZVRt>0Dx<1;if4>aWCzzUe$o??e7E%_P`oKP(FJ-q0Fo|23|WgD zg4mK?=yEUzbDf=aOZRnI4!Z!L6(6c2fAxbDXwf+#_6xFblckQIX{V9xAfI~%NRq8~_yh}Ph)OQqM{s5ArVFZE*SY52oNwjNC1 zPFH&s&%j7yL>)^qYYI@xs@TTAe|##`m?GRpJQ$czr>UAKQK>!_bgs8zvFi z3?#a2@-mZgCBPjEbK^eV$0XGrR9+ZJqd=3k=Sz_J}cdV1#f6oj7Y)kf4h&f<}kbGbx57bq&CWy1;4mj48?yQ4wN@%|-5{(h2vfZ-<0YgqvCT!IXvQ3-3MZ@ah z(2P5N)|z^9r+`pR{Tw!mg`c`0aBKR_wTpW^0`YPG`3$tMB|`~ zb&D;s8r$3`q-yK6e9($Ge*>|a>TE0s{bR2V8i)N2eKFKpg<%1v`p`q^&frSA@x%_8 zQa4^~oL&AOjg{FK>(v*xXJ@J}o_+D^?9AE!-pJsJwpgcY08iymb6}$ZALxX!j?Yz9 zrs-5mWu)seYn#gpEA>HsIp0qE=fOHr8Acjt(3!yR9PaLQWGJ-(fBpE+#kSIR)@nR? z?WxP>hV3jLdn|?#-r-ODpe%6W1sTk9uQHdAReSKrNpM1Zh8PI2F{fjgnqY>R7_VWG z8X5R(SA|T#oOQy?RyHUEKX~RUd>UX(H+7aGN)Z?)BEw!$YyeaoaJ@Cu0&lgtqvTw- z-OsbO5MAjSsQz|v&Wlym5v6E6P_1DmezSJ14BT>q+)Z-J4TzILVe<2IlRZJbX5On>| z!oXajgD)N%k=jGo?^B0UL?&((W~=kt@lbv`4g@2>Dn?OSe=NIP!gX*;2st2M7`Ir~ zM7M2_}uhE*&Q7xgI}ER4|7K zf`9f#RT5dv>Bq4q6f7-gd6$^YO_JvQL^5JA!r;jDxd4-3eQfAOFq5?E#5rS$KqoP! zSZO+j8lN}Pf3T`sPBvoj||gT3pr zPXQhx402-v@*sS%Wxzpy>D z{6Ve}D$AFNF*%N?DBj{sT@)EnVK&Q>$^v43z;N^ye*r~xPt@@({MJa6>W9>wjYgI} zmhAudn|J^4!+WoNW&e#|?Z5FF_J!!~&+mWj?gw9jbNScay#JH0A-_h)%y-}a!Tvw~ z{KId3|IhEgT9yo47htLnJ@RQq&lsS_wxXV-Q5$oRGj+_X*zQ{oaKz@T(Xb;~TUi99 zq^Qa=e@4pCbkVmdlv&Q~@HIeEhs$0sZR&+$L!=vW2L?b9or(oxgr~H|U44k;Gn6P{ z2WVtd!fbhl3vc7wR4O!@{640zKq(D)A+-W+6$OoJDh2{LL^F}GM4D-;SITJe@b6*h zzAYESaq9*n&mmNs3T%!>(hA*;kFq$sfL;KRf6ma2^Ritg2BMM)l?+vforaG6#%n7$ z60^fFWrpB}Tc!@hE#(50F6ikT!m3=;rXTCAtb;Ym?a}}X660J9I9fTTqu$A?g655i$Q*%_=P!E>du_OO@h?o&lg`CeZVM&)y-CCFk{B* zf9j09U66^(c#J|9nd9gliCZ%~;qfq- zM>94Ggh?eFh2o0K~Teg){@%Xi5jq@fJkkir@km zV-Ee$QsRNA&MGcGnO{dij|MNWf`B4we-c_WoQs*KhE|9xT#^E4p`}V-#RX7ZCI|*7 zg_4QOUkMzA!ba$={6RuTT*y;WA4siQG3@p7{=nS+8}QoeV^&-xNZ8%doufK61L91= z#+F)c-$zh|eo{);FQluVCY`HnPEgrePc99#Kgbqng&-K@Ht=>SI&{&Le9+H3e^P@4 z>z!(cNswTSYeic6A7qr{N_){h~m8o~` z$mH#G_2q0}emwP{GWWv#R>rehe-Xz?Rk+Aar(u#U$5gvkm$@4owwci;W${&&8N#G~ke2Zb_kw6gBgLT=HyKm753eE8+p_rLMx-dEn)`~EKs z(NOaJ4%|J0%&Wuob+FVjv;Op-?!Esndtdr@QSIIL-ZA&HaL+1#BuVX=6{j0Cvd-FYk34|p8GXk>3Xs1$rB$otHWkR-atum0>nxX9m5u=`OYjPUe z0CF%j1kbR~K|tlRfkd2{e||C)V(wV%;_Ga#Q5(DZUgzy#t#G&V(y8Pr|(7PfQ_O!rbYP^GMtOCU*-t6k3HU^Bu zV4(pQ@!$nyE+@|*fl&jKeb^g*COFBxFZng5cC$7n(6?D30b5k)|&Jh z-=D{8bJWesn5yLMYoGAPWs>)$rp}l;WL_p$A(r0phdU-!MO2_vV2Q2vU&P4=o)q}% zaho{f7VO^W2S?T)e>M9?zKwm&ZDFEe-!HTVt*T3(waAoo(~=Ie`2(C!~%>;3D{~muq8c0 zInK)M*o5_SjL^C?#pT%$X1Z= zTpV{KzPN1;f4X{h8*c{7b|^!iL^zp32cV^C*{0O^{Y9T-1AP!Arc$G{rN`1=#e^iG z0oz$IaTM&LjT~;|Gk*;1+NU}#e%3xyORl6v`209>RvbAVKDtBP1DvzUBieEMl!G4s z9`PCOgu}r@p4{48Eka1Fc9ibcj0lVG)_|A62{r#v8c$KR7D9?BGcEW&;obFoZ2@fr?w*5dYQ39+OBh=(tE@3fE$!cTI_Zj7)U!6~ui*J~bN{e~KxpPql}AHY=zU@LUHu7SggpY(Kjx zT=o^T-{~Z{qrk&^Dm+Z~2=%zp8Abo1P=5;eiSRQ;Rnmb7xRv0}qKtyuD=uKO?wXqK zT2V)tU?gk#1T9;{Jny!(Ws85!Fk%VgTD_RYEh>9W^^in>wgUAUO!A!o;IMD#dw6Rep5m+BgIGk1_d4qG?lJcNh)_LD8Bb`jSxSv<1 z!4ctzSs1Mb_#wIlQ8^6>DyGP#^87ti$=-hsu9aiQrLAFdfvr$r->f7n!LyYqf0ySm zfjIpg$A{~s^@KhEhp&(TXM$DWed%sq#aG%Tf?%TV8MQ6iNnTneF;JX1#%*2pc-9mHun(4>^vIRUa$Q*YR{q8z*#EEaMZ`!+KEgg5+?X@Yu z{)T?*fR6*eb}7LH^-l8CqvP?Rf1CHW&}4xnJI{lm$@Gj}ZLusRE$dKOX^H(c*lD7W zLrYLN{ABHLWGu7z?Zj?MEtIx6Enl?C6Dd2kzqc?Um9yitR|Y`I`FRB|VL4OuQ!xLe z1_)XgCUDpB2%X~#IaO3HDG{P26xha!>3~yXwG1)3R2U*cQUXbZr~f5ie_s!4XN*dM z(jiAK7}KI7xJ%{C)JdqOPz#O-3Yv>3@@I@ZAj1%dksD{1wzVT@=|jeMjY!{_&>zG| zNLs+f_4?x%a5sdQ*Elc!^jjtEwj<`*WlXZEo=KL>u-!9W(NqX+n_J1vOz@?gXQiHt zY}lMC%Vx)@*^|nQULVe&f7v&RB{>`VKu^q6*37PZnOGc$T>LmTn__7wwv%zRl;GJ+ z*2M{ir#=>lXE#!02v5)*V<7Kca_aql9%)dcN)EW|!NmK)W<>eXu@niSdFf zc72r{@9>EN$YVV+@8uoQq8eeT#@$|tRL~Zim|Nh6WNa1P%D}BsWO!clE0Z`@M@ zldNx~Yg*%uH^xOSD7RmRIvdl~Mr__a;N*dD*(+HJNPGmp@^Hv+_D80frNmwefIzGS zK`feC8->J8i>ERv9QN9WuBgP1}!+_dC=haVt@6r#dD1v%@E9+M2p|!(R z)px)vJNBr)Q&X*6o?n@<-jZ4Uwzv{d`(ew*RW#BSjf|oftcn(_icYu{m9moL9vidh zcv3$ZZ?QS8d`LGu5~B+8X#`@Or$T@u4LD-J>%KQ!BACGNe;L*Jh}FYJ`DxJ9v%n-j z2M5e(V6^CwDsI6jdci1q%n<1(f1r$h%}4PTir)g*n!*)I=UQHn_B4wTkss0WnXRhC* zt6LfASERtVp5Lrm>GJwjI)aOiT{6vo0rWH7^v~~qO>Ax3Vyo5{?1E1-i?x>M0Gb@i zLPZ}*=$?rQuAxgBNU zU*PtbfAHoW;6&TIKllI%dK*H-N7Hs(PM^J$G?Il!L0o^J(YOMoQ4AeI?gPrTCsvd` zUnSOm3l6qxNzs}~ZZ{hAE!lbSfd^D<=La5mV5cb-3V0YbMbD0l974vpB_4_vCf}mu zq9qpWTlih13gP^LU9aBjJ3x}t&sKZf0V5Eg>m)X8dLAcs#jGTCz4`;eQ zHq#5?OfPUIB@a9>b`vOus3!1hiFPsZj?%C7Tiv1~ClW2EVr?3NC;-C43wbWqrv{jT zf2@n~9rne>@c~Chi}SGkUlSC$cE_bKsDZ=qMh2Pc8dszgeRb#om2W9$Yf-^ z14Z0A2=15zt&WVy)l*L|2s}jXCCQ9h*7W9aq zuUpU~4gG=zeT$%9u%JaEHKox=_P_hp`yc#j@AdEPfBmO>uYLXA5B@&6``(}S-v0Z0 zKmLC|{N8`w{ow2O-h5B+eS~iVf1V^3Q7eO;CHd%q_Q?D?l3z#s^_Kbdmi&6_6gEY* zgsP?X$l;+}aAlFjnKr1=K*I$Rjp#D<5tq3K9N_Cb>Y&2mr;&Q1?AHmQ!R*gZ&i*`& z-i+?Z8?Wqr^BWKz*FdE1ku=O5?99l51SX|wl-45!Gg2@k4KuP~ZYh{se;S7ID$w_U zm^l!5ZIInmno+S)Z6sCsIIHqA8Qsw1TnDMoD1iZBsOMD6EC@&SW*_r;DzY6hK}B`5 z+^(IP2QdPOk%Acc5Vr)xoEnpW77kcQ(`=)yP9szad@@^b3xH%4G^ro;ov@-4#Y_en zML=$8kXsQDZ0_?K4&TSYe_r=sMQo{UUW0wy(y9)!?+Sv$a-9V}ZnNa(xXV zo%hpj9YFPd4!UroMcnwtY5?)vYJwBEJHwzZ?sg9(;eK9XNwIE0 zm#b8(s1y}%4_Jz~6K&68()#f6>*Stoi3N16lU^MagLKQ$%t0%Ze_}46s{_0@KtQll z&P(NooqVC++J!>jaY9m1#R%IPZfv1Vp6Y5?M`@Q9(^LWqr`2Mrv5bAQTNVJ2LvsKX>2kW2;YG2f z`TF8Y@`QLJ=Qu*pe@**0Tb*hK!H3rJZabMzZQ3V~H81Epb9wT5Mgm!$<+ zKmb@kr@t4!OoBJ7q#Pyd5)FGEa)PkS?tto$@&MxIAgV8Q*TK8bNE88S zX0#AL+s2NpYop(~DRPNsqWwZV$H>hwvT{VNNG3R`_oh+v&9sxRWoYzPHn&mr^toF`-L18?w3GH*)AhV%)PJxN zI@x-{mnD5h7mUGmhv~SvQT`PGVgP;SNJCOersa&z@wWfND9R`*$RA_ zGOua{$-Z_gSjFxvSAUM89p$LTy?_7byVFZ10u#?H1p- z@WjP)pTB&~+5zn-H+%3KS#LM(k2meFE&FTB{)z}~E;tF#nYKiTU=xHeZi2|cvWiwC zXr;m+;pLD-TP5KsO_sJLkrg~>8ZR#O#m)*G;mtStf*;0fYZpx|KB`aUZNlJ((tW0! za8OWoW13L{NPk^$r{?onyL!xS;4wE4GhM7>0U&aBS}yXA$(j1T5isJQ52MHjwf2ke za`lfjOt2FHwGe9<2|cl|O>7Z%>$?wKRLwPOPrVX6RP5fK)Kgc=WwBBq$Ykx*Gt+!A!%4)vTf-lH><}#eo zk%HFNH`Hh2x+3Dn*zXFk8AoH|o-qMP$QOWGjO6UrSHI;?sjn2Jo)+{Gy8s!cXA^Aq z5E$J5;qUgp^L7Yj%Jy+U=8q_7fMl_iiESZ?7sX5nn|b&1XijM$v^{X~DT+NVCeHl) zf{Ps1&VSv=iYvpen@yqR2I56PAZlipM1hgp!ZQB+1Xx|M1Aj(^yx|EQYE!f}k4f3k z1``on^-8PT&IQjA8;GjKLuwvNiNr0}rG_qnJE}3e+ZIA)rxo>$?R4nQ2GtjSo1RW_ z*C{8LF~`lz)6i>EY2~yS*4{2M{1~PM$=6)&KYw%Pj5C0st8%06igGE|Zj4-8?e=+4 z1y&{7lk2_3HD==Gj#FcdV&0^a@rHNt$KXwmaKKS#Ihqd;SOf+qecboZk<6Ea;4<$; zQEBi@bc+Ve(rmahKCmX8+cQf%_csQ5Z+?ZwoMK2B9B9>WT=QCOT!14jp zwYm9mw>|!b2DRcJ|6b;pL$r!tPbq-=&3^%x_LIc#vgbD_Us-G<$VCn*iLqb+(t7-e zD!_N_NsgC7m6<_Hop|!mz=m_Ch~UcNpfz&AgPS=qyM>5Nqr$MJm6H8CDI%pdyj-~5&_$oT{7OD3x9M= z9lGkb>(*PSo7CulB<*&K3qp1wrkv3o-1EeGJZ1$cLv{yP;dvjKZJ}}V`uKSzc8iw) z(3n@*)6l<9iLuDb;^HMy zW>_?(YxEcU`IcA`gs|(5m8H`ll_}&q6rYEP6_fjp;VZ@}FAN4MdM5z*B_v@ph63}; znAc$xN%T1jiM?SWT{S6|Sy!EqvO2bbl3HubV`;5Th?~^2<=%?zi6c2{Yk#Q#pvjP7 zjR6+nZZB@uD34f4p6=9 zW2nvp>OBu zkU7ja>!L0+Tb44lq)N#&Ism!rbpnl83W;Zr79fHYDcgCFYVpdpocJEUwk>DkQFOE* zvMFLh0^9&7OOg2BZ$0`6fRa3!oOAEG$+Fn!cUMUaCy zr(4r3--;I#jD3+UZ}Q}FR&MS0`rmEE^W-AFh`Zx#fvInju}lj&*?(H46Pa(7Gr9Hl z^@)y#9DDyUk<%oVL2Cxp@2$#YzITylUkjPHqUkCfmr0fe;q6rnr9~|wjjxi+xXkkI z3Q8PZ%CwB6m}KMC0)vV8nxvELYm^Jw)v?EONr|brO_sAPm4iM0-AlTqEXtq^qhuLR zFgl)ikr_p1USwA2@_%=j|E`iAr;|KOpqvUgNnho~?@2k><6kFXJj=5Mbc=tTgd(2C zc{14JUngOj)Z&E~Nr$&>B-}E9_p%@&(i(uYXHj@Dt2ad?^RpeI4^Y zPoPkYQwj~*4{Go3t`^lTpf#E5;xFYDAky1Rl?N2V??qPfedmR zUMwXnrYqSx8|JcH<>}UBXD66!y=Akof1`uM^5c%Y#m_+G12sIqaHMCnJOZcaOCf$yK0uD?x z^e#%mTc|g{^n45OP=?9Q&UV?I#l`!t>4zLAzPt(YaA$`nMF>%z=4W?z0saUHf1J*& zH}-3s<#G?{aw|G*BB0gYpG9szd4B{BjWl#K6?u(Z#-bNx;&vSs;`R!#ht?cz2dxO! z`e&eVwsNjoigr65CR6>Lh_XAL#rcbDB9DONbmua?EN7j*8EkSWp8l}2lN^X=-vct1 zZP7XhTr1mht#Zh9bd|`jC)uYmPtr@TO$~II0Z|TjKEt)=Rm}CD02w+1~nGNZLueI3b)bNsAKkxdkX&t|ODL(G`Cu#~;r> zog95U836rp@(o&x3^qxa>9iH;jBnrna%}S9;?dbCY_c7{duejP;?$W|%hno}O$3|% zWjeS$dH>=3&GD;~LF?pAD}pZw(C_)j*FXJ?(H~n8XMpq<$5{2C^`aH2WJrDf{^aES zTUE>RH#!2sCQW62{;{=2yiGWMI;@Uh`%YAP!#2U*A*O z-Cc@1TQ;9#ona?{4S;%ypLch?5dOj1Q-!`%3qdnZ8Tisg3P5$*h8KU!6(HXyq}-!w z1ON*)VnrDTx2=$bNEdIr`E=9R_v3L6FzOm zm7DP+g2l~B5jOM0&HS9;>*nSdn|%r!R!I2-9}f9!FoX-obyev+7)R=8@XJ7M)3F+8M8bYPdV&pngA_=9au%t*6?TIp#0)WJNW+YG_tW@Hr0{1b=RiX;C?HZz!ZLR)ck9H>kwU&KHla2s>K zVbg%USiqDqWiyNt>?y6~bqgT0-KTA0mK5DF7WssQUr%4m;`CBNXJLE0N{R$}0DBnj zo3IupNwJ*AH_*098nu8hrND^ej&WaA@q9UpZAIBK9w#MML*9g0Ipkfb1FAQ(* zt(LIGR!g5yDgBc_)DZ#clTp+YAWW{Z@>k#)DDZ`6(-!F6A0W64Y+>30UAr9LZI5u^cSpvLmevF%N0XSWW5en6Y zxJG8MERqEfXGG%}uNxqp-69_k;gkdvfKs7d6%zBv?ZIn`YpwD*FwpaMD^&F&{|&4| ziPes|+7&SHJ>=)dr~R|xiYhOzspjGu_*=Ky4UdN*vi%;x5Q+U{Efr25)&Vfr#Y2!i8c9o{x!DUP-%_D08k3EKhGg9*LmbqKZLU&u;}mny>apa<#ERv(HFpyCjy zfnMEhAWWAbt!v#ZAPTMbb}QO4Utg#qr~?~;ChVc7Xgu`1n8!u&2ni8Rm2klaB=zp@ zc0JTPTjfmFLS}!y%vWPL=(oZVFh=&<<-|?*U~iA-^FT&r7{Ngz7qz*$%q}YTb zHh&^wm|OE5sv5E5S&#tF0>r=>t>8qj4v}yKAe_v{I0b*gsc{{>O|GTilafw1aXOaS zbn7V3V>~*Q;^Tmymp2-GsP^K0*^insdqNN!6T)%?|YrCXC{fM@R-UYV&kani6^4m5;}Qu!5+?{GrOMAJDn5q&_7 zIKQNWcA)LL!1#Z z6y2+Mz5*KD(%o_L;jX$N1sKIq2`z|X0K9673n)tIJ6xwbJ8*`G(r|606m;w=g#tM* zUXA0CY>ZDN%v%7}w*Ipf-BK?Hy|q4|72$2`{G5La{3J`*gU`?L;LA0kpg>fqvm$y_ z6P=MU7p)|QK^V1Qyeb9p!mk|`G@YFwThWm1lbfx;Y;bUwwi9(3P!c9h@}Cm2=CCC> z0w1~7puFW{!yt(k$@L&x-zTEFl-XkMZCvKbwGjq6l+u;_Shk+)4{jTY904+-9ZoU6 zu_%9e{a*lbGry%N!bId8D6d7TLN_8t$w~@ySf@_9YT7&vg2U01TY`fpw*<#ZZV8T! z+!C-pswFt>sg}%Uq1Mo$_-+(PQ6Q(3z)v5zKKR)`!*j^#lQURU#pzSrkc-o2XW<|~ zXv9c|phaW_$B+?F6!MkWP=-G@iph+{Y*&A_=exNE#%wo%&s2kC45=%f3Va%*u5>DZ zX9CI7-Mk$eFijxGbT@5h6a$+G?XC?J9p)E!$|NPZK7Wm~0>5$%w^YL|)^N)-+zJD? zSru+-T={O&Nq40lR}MW*cN0CX7*aExI)P8w&U7k_tAOO0PKHqxkUmrCaMr|KzH)y? z_8Q;S$TitD*k$4_Ok8W2~XIJ$-gI#LaD(JGIB{WM^jsV98fW0Ll zJM+`r(@JyL>Frp-0uG79x&gbE(r_}316jAAVZbpEqG46s-68jw1iWt`cb=n6En6<- z#MY*PHxs?#?7(o4GYz;o>~Aw_X>I`LoG$V(ns*V6IQJO3k)Yh@J>+T+hvUOee`hDt z5FP`B4afk}SryPYsA#*l*1ZERJb4t8q1X%Jnl*t2Y?7rW`V(2k$z1aqWwOAt`C=*B z2&0!!JCH3X%&V7+a+nLMcwKDJix7~n7j$J=5(^q%@-4JOw0R;G$nnN^jg!&a6Bwz9 z;pQawlo9Xj#CE0>=i&8c6B)$ovAvW0+eHs;IHSbd0;T~_;i!Z>7b}xc+&zEV3`eAE znDp(O1b!qY!+<#LMZG9yDKh-BIQYyt0pD8Kd5}ghly`UAK%U~uckx2{Lgx(Pri?z;&UTzs@i3RD^CR=Uk1Fuj;v&m+B7Iv+ zf&j!BV5h156GI@zR)GZwfkA&-fL}U!n@!}PRb;DtEIZj1cABnF5yD=3>u6Gsf(jZk z8ji{nAVo6(qaVZi3zgF2xs2VcM-ELi%^Xwv?<3%kBspWfA z6{0P|FD9HieE@Zf_zD&?uYek=Is!tKpSEi5ac*v%h`F%>{UOpp*_|fyIb9e6N6uen z(1@9a5wf?2!0_O9W~hI*VS8etac~}`v-zCQ=3_paujp(}{L>7`*j$mXVRCnu<8_Sg zuW)-T=3x|!@9tJGTR_+JsW2FKy3clJ(F%Vci=@60y$`a8!~`THm__qQk7M1uo;@JL z5(G2_I5)0xN9{#}f;i@#oy55}(R?yV=}0H7ekqGr#?J9W&l!JC4-3;tP{ERPx=Ho$ zl)I66Yld%b3%a@G8fGT^1!e+viC`O;{{A+~`yfz2fR=zR0JEQ|8Ax~aH7DKY&ha`U zf@!1T@!cH+W)N_Te-SYhSCba+ntM*Cf;ld})p7#!hcLh^4gfUXek*Pjj)o`|>fWG8 zNZn(gOh{c`L|1>pUPS!u$#_6nQSf+c9j%s7f;! z3sjou@v&vd(HMKvIX^t?*OES}v}%H>>1*d2%DG7|yy}1I=}wjP#OH3sUP852FVU|P zSP3{&jCXe6?+RA9yLO`$9PPHn)y_`N^C^R?U6Ou%c)i#E0Z;{wpFo@N5Q;?!!2*<9 z;)!rVbx!>{JCmq04cCUa6Tiho_XuNljW$5zw%nu_fdt2{YIQW`MXNQ=-T|2&<}?gP zRWU(QvuS^u->}2z^bK5qbAspfu4PO_59pjt1Yl^?6e6Q?0Ldyc=ilAj+}PpbOm)Uw z1$6osN_QBLd?N$$^8MR?5BCu@oq4J(Nn{Rb4!fm;TQREkS*}I##K7mGb}fO5_AR2Y z1P?fx@9ZcTkz|;`prX~sCfmXntv1=DT9R{W`(st`c0@uVKj5J z>au@YlOy#z=tq^E?(VK6DozUvumyJ={)<2I^dIuOko%_Rd50eZ)cm-Fen{W zF@~&mQPQ}7Wu-L!_<{;#vj!Ck)VBb5Z?)Q;39kxso9!GgAIl!6k718}rWXj&rjtvR zb~!;7I^{;f>d-S!?+XssL}yUivyr(}G%tU0*&nBls6rND!lhoOvZ(;(NVi3fGv_La zC(sRrQLJUn?DlPy3uQ$bU_^r$&<=)x*hU{eUdS()(K?Nt$C zL*Tb@K#FdVVw&9qatX`|nrPs?hjaUzZroV^E-!w1^Kac+-HYYT8>_>O5x&)ln-N#N zJ^JZYemmHgPokrflaGI|pMO3%rkH0@QhZ{KCRaQH7@+kSSQct>$%(#U z(>4p6jFN_>v!M~ry8GK#d2u;!g}8^f(efH-Z-N!Y^Nz|Bj%s~?Bg>#6vcLAOTb#7D zPqDe?=u%0mA*brWo2)3&X6l@j(oP^|mCM2HdgFExKW4iaS`omIx^_9=C{us2fZ33t z2}Dc>7xDFTRN;8HTEJo7n|h^Nq>vrWIVMs(-Hp2*I=GinPG!|>yHA1qeYac9#zTuy z@96nzI+Z!ed5`RO@N_p(T?Hy0mrwR7k+QvVB7$l~s?aJ)y)vKe_ogCr!%~>s{qHz; zZWW?Zx-RSu(}R4Nw#9c*))s$HL#Oa*+U}hJOV^A1$Ua8)E0OycxnGHV(veJbIcqty5(KO%C3*^XjX%|RCJ~L zQcmO59MAsIc0c@vc9e8x@=#m-h<4xAlBg%CeIBKgkCMf}Uc2{a+nj&8K^x$5K2#FC zSC9_$=>5Cni2k0xef{q9r}IxAUz{Jk`S9}*iVx}dN6N}1Y=i$X7PcwAH|f4S{&4d1 z`N{F86F>gN=QnT8Umd+T#%P(U*ynGK-@ViqOD=6eBQHg*(xm(}i-ATJL8!0dXfimq z8ecbbS}jzH zLNDVoez+7+zwW1#qm$P!&R>2!`g^U>dNF@owf5=-oJ9|rUw(Oa^wwz&wL|1J-%5R8 zm2yQZ&UH%>titZAH}8*50QH&(B~Sf5HNjlI$g+I$a7{lvP*Z;iU(r*@^ZDJU*FU{G zetG`<%gJ%H-D|9^|6REL3q|d?0v?iTtCM+R1#LMVlkF)jvb-M}rVtBhWYeiWIq>}( z%C7NXP|%5B2;6@H+`nlBnO!S<*7vlQP9D~FF0Dtwdq2fWSY67DK&?hv6~EA&6e!5T zBXx{N>MSZ~<>P-vi_wuYt?f3=h*DH?w>Paz=j>i^rbST#L>wN%9JYh+p6&n8+ut8tzleebu)Q^>SXr)bE``Qa3(n+fr7WrgXsbscIT6r-j{E#%w1r{Lheg8#3O*k8`oUZuZYynpll zqhb=ypT9oYBu>y~kc4R{cT%S=#++?ZdV92V-`0O5tf1eiPW-!s{*fN$mBwMZ0*|D} zuKyg*r(~)ty0CLpQ`kZpla$ui`D%&!GavE{wfq4>#=t4S{eK<#1nFKDn|QHLtBWR< ztyeqB!2$Y$c(|Zf-O!u1*wC?MfrC*3|8my)N$C_!=q|%of!yCYS^ywtuE=S7G(6 z(gfRL;`(HI#obvo^~Z4Y_jMNG|HWEQZtF^p_qXh6WcXWpZ$5q2xG&$+ zEj~$9@~9DSEdZWdjRUO|fPUX3=_NOPwW(<**Hg&V&@gcxi#S18_$m0`<@{V<Xfn=j^uC@Aks5dwoM8{v6iZu$_k{HUg1z;s78Q^@HKq%`Y#YZS@gH zCRA-|Z9iK;En0pmIwncbm&+EaqplXqEjlM`n580KEax)ce+g6diNpV=rsq{2Uy>*U zz@muW{>#90D{>kSagLfAaX~YzOE(i}sVkep+p9qtO$Txv-5Rtm2B(v&=ox>lam{+? zzebBJItUs=b0!2p{1;1Ah|CVg<}AE2XVhW7C&p2_CsvWfP=cXCpykyJO%36^n?-qB z9`?yPqu;?Jayy~V6h0GX$|pj5&e)otPVguZM=Fr%fYgCR2jX^7&(+TB`An|%tX^9? zZK}`7>C}jM0iccCYxCCDbZ~zII4B#Aib7Fg^^Rs%?`UpMEMxD)l4%qEY&RX|)_`jj zLiNVDYZa~&GR7hw0dQ`>-?8Y#yJOrZApw8U@Thy;fta&{d zCKc5eQkrAM`w8SZnE%SN%RF9q;*t*>r#bFOcCS!95iR8sQVr%Fnbix-ul=C)!n>_n zu8^#Qm}sniGsndDmdDr3d7`1083jp+h+`^s=aJV-=(^E`5^3VB3NsoKH`;!7p+m<2 z`oNQDqp?w9Ro&lYV?uvXRGUZEibcM^I3hmgT(De-_Csc*4^;n|vw8JXc|JP8;Y8oV z8<7~sY5fj!)h;W#u_g~p*gaf-hzy^HMVpjb0n!Qs%>?8|AxC3iNGBz`lNqfCo)3el znw9OL-l)suN|(vaF?E?-OY$Ko6G;91?!(cG|9Sr5fT10D)awR6!UEkk9?I6oK<=UQO0 z63OWtogXEq!MxoM|28HAfmQcLh)MTmXGaRL!e5BGKAd!~N5I3v4=hKB2+?A5MPCpH zkUhk^pYlMYVF*q4hFbFws(`{bqaemwfkS}^C>(#|FML5<7;OjgAilekhgrydn~Feo zFyn3jwRf<+JqX=UTpK>gh0+J5X_}jh^{k4I4<}$biO~5VctpbIGw z)OdeBxV;|qqMJd_D)DY_1CLUm;0PwoR#|MEMzWz8M=Mg24iU?P z$#99&3ybx1iT)Yj=U~$5kCyHJpm!Esq5U^NF$K_Hp%pm5Ht${=hWWqq5}9UY41$sq9A27V!I-R=nogrlLhnySoYI}&AU)}qw!%eD#Um& zKFH7

fmXHJ~fm*`Spw(PgHzY;~fXawHR267-ko-{)i!w1^I& zH(qO*C;0{!PsoG*ci(^i{eJ&hluY=-SmB5AzSz@#7kiOb`hV3&Fo;rj$Aj%&#OJVq z3VcB;Upj+90X~62Kznc_hIoRd?5!|2j^-g8Vy~ubMy%~C*-#L37e@dl{^pwkZE(DV zK6m;XtqE~cAe%#%I4UeGBdw4H>qVK6gb-ypQ=O=cLK4SK4lG!n&oWnn zh*OY-k(){?QGdTJ`UUoy$>bz!^s>=PSBnc6qcM+>sHi<*^;h)wOEZt&Ms=iP+pI5b zUga4w8;y={`RM2Q?xhPR_iDziQG0zYHUQi6L1RIs-J_@@$=vuHY`6dm_4T?%3OFrV z5(lBe3(Y9hqY&D-o#JkWeoM!C!@@n>XKBYE{T=8Bv$H@SgA|W zEOl|zRDXx*J@S{{wkYUmUS4-ls{_7g{C(3AvyiNeNvM+U0-=C^B%Db}FoQJK5>|=I z$mNMF%6t8(C=6qCrIRT#C*5mePvEzm>yx#_c;s|2{-&K9xt=;Yuuvft%xLB42HkXl z{bk*ArQ`Ga2WS=}V3=5Zz963=G}x7k_5D!Av*pq~29VO?2>v9o^ne&E-?2 zlhnN|{Y)3-N*_Ug!e%4{aE@f_ZnTY<5|GfrtRmN!g0}smJIbz7g5V4&6+>?zZ_&y1 zvG0VNwe_I@M!#UM$tUcrg6JFT+9Y_%6-JIPZK2(Suw6b2Y$^FY>BxQYM$a9 zZ+)&Sc~!tuv~NCGkym5i#ZblRMuRi{Mt{c!xc`V-7D>EJ^6~~*68iEmF3?&4PEN#j zy0XxkY-&}oE(vupAaR-bbRi(S-fJGnGm_NyAq{%6+Nm0ag~n9G*+i`iV`nerLD2MQ zb!cmbD?uy5hHZC}x_`9XUCqo<+l=0;ipgOEo>2I0WV1iZ^S z(jSTyX8u~2AZ&Kb@z9I`diZX&FfkiAPhG8Iiiqu0eB?d$H>waJsXA|_)*2gtchDR4 z2J$c;2T0^@WlCK;}fLO_k3{s5R;GA#5M zQd}J>zeHUV;58000qU<|NDks*V9DfhB7KG5Uu! zZWuQ>%h97(u1L16T+8L;>(k}?olwn_Cf`91koV9?32JiCL`cuw*nc+c4(D2= z8(J4)$uLJpOzP-_IddcVMQ35Qkgy5L9T;VHYOQ9sAKHJIn*muL`=u}dZ4)(5%L+jW zJ7gD~zCCa&o9DnyjMX(J@QB3pe|Rz!x8pzfT(9{`zs+< zfsHqH8|U1BM!RlPPdhXgy^mtr@+2h(Qb)>Y#wyng#1c}Gj#8w1k?)7EO7NO@6Q5)i zU*lyR2kz-`BX;Y17e8L2aw;#p6#c)$i5FeKPy~D571Hm)Bexl^tzDzCp#u;Jt>>yS z02KNl2Ch#U5(z)q+u$CQZ&hEw$KlK2Va>&@`Y^%a^w6& zm8ixiPV!2($PrgBB2FdO7-KEl%3*pSNdqzwIXVoJ(DW34qY19%p;|X(yHAS<*{`F< z^EcmC=-#m)C?B1kF*h@-%s0O1pr5Q7&S8BF=bcVStilYhCANd@7})YyTeRHW#pdx4 zvXzD;Uji9YY10Dv{PQUtaOUL9u3KTPLXzObU4MAasKO}YtuoitB^z3ojX@y_EyKvd z(D+=4D+e}zVpJ>j#KVG}k;Y~T!}h10PmYR#rtA%8GmjVL9Ijbvq}*ugmvejqXIx~` z>p4VRGwU=xC8z1Jz?X5NSYr|+1_IW2`-xgM)hElr}0lcu@S?=zh z?30Fo(Ll+Cuj-+zN2U_VZod}nxhc6mXB|!ynGoR(?j?04&W#Rc?xlk9W#!> z#{x!w^+V(F4?Aw;L-z&)E5|KGXA|Tv|t2()Dj`bhnZD&LKcv9;&Hn{+H#LEn?*y7r*or0KI^J zNY51DOP2U9&bQguU(UE&RRxWO`utT{k%DOFw(QIU=Z%mr3=43^sQ1K4d+^xDi zU4C=c$ZtMR%0;~V*96Ot_JQ|*AKJUt<9R=lRXmdYQ)5u?E8j={9{t zL&E?nqb|*W(RhX5fsUsuUG9M9t=9tL`JVO%KopR|$8DPf*vON_zy2cE|& zlBnucJRkHU_4F>a4;AtK$SZDp!|jOb+Q|J-j0UQj=+QLteAxSKf%gdwrAZiHd$P?D zu=nUfrRiD#))s>hg-cO?f|mkphwdlh_UX(0RMKX7o9d!-t7EnW|3-&}Yp7(MLIHE< zZKv*(Qy@(b(SQ}m9ny7$RNhhE=p=p>xI?a450;_VxHGGI@Qq0i@kC&b{>TgR}y0)vkl zpRvA4F|wElJ??EndtOsQS-!666_1DV>PMMcmsy#$9z-$=6wS|Cn4)0Z6TCYMSLB3< z`JqTgNvA(huYajtXoGf#M%bP;E4=u^Ri`EMP_kRw2w0-LsS!9U=>ev2;cF znQ?p*j@O2Y&$J??!nax`EB3Ch$blx#S^(+MdQ?>3#`k%=5sk7okH=8?Q8@tM8!O4C zszh-Rj|!mq0lx{O`5oLbc6Jb#I(!9Qgr2@8>+FO@@;4^+~D{out*Ve;7r;xWv`OdohBJNAOjd6}u z)JnMF76EsEE0hM}(ajN_I#kn2v^IfHKafbbPq5N+S|gvJTd>8^4(6OW_1hD4`IPPK zJb{(hO(EfgmFp4#c?(!=B|hv!0Oc3hL%a*y4idTnN)F=?-?PQCPFuOt5YV1N=H+ua z&9tA4roLy!$&aJz_Rz}uDUX-4WL*6Db>%3)J<8XAI`1hD>XxbdEaRUwu4$S%n((z% z%k~QSpI^NOPTzJ2iK(T6w4z{MCF|t(DSV_X7cl%HUh)wFKmKo6cFOPojy?IC1bznn zUNnn~Pi3C{F7dEXP>5V(4O+bxCca95C4?mN77Hcd7dO?T+Bv1^F39zk72)%9=Wu8^ zqHOkmEmaz12H0YT(~7dL`9QHrAGU2LqtjE&>U`46QN5O*-GD~d%Z{89u2*|~r^`jJ z%nKBia0v*C+{v8QG9!p}ZVZdm$sT*z?HphM`z3%~MMqwGQjmGe*3pH$Oj4SOdxh(D z&?@{%ph+`<=px#_tW%!RgCuS)1t`wNfRYSg4kM5flcUxT4E z%2v>51!-Hs87ZlucaTrWHpO^3pTeKe;2uk z-#vuRy89nud;yzsz{0ka*~i6=U2t(dH(h{AH(D`yHJRKkEIXcOg?w~blbgz-$a;f4 zQ$tzK-NK^?7Dkft_`;mq6#nm3Ji%js$N0r6ul0d9(v4MB%TlFShC%s9BJ)kP@=Ci0 zvQA-BEfzXcE>}NRO-LT-E6PZ`{!t}pR)RI*6KC^^idvJx0-+x&;M7UioTZe4fC8x&bSd(%FpFw-bE!#yqHOd!ss`WFM*10W>}Xs1zcH zzv#E{+5Y|yPrrZq;}1`I-~af3;)rn8h8FU>ipv@+{0skE%j1H{zhQ6 z4B>2NO)xVj%uWW3T4Hek|Lj}I`DvlwN@g{5_0HTJeHgFAxLanQmrMOlYNU=3=s<~v zpT~^Aj>VVkvCR`!o_qU$hW0eo_}AO}nc535u?+{g>&?~2-5bKSYk{9`9l!W>+%(n! z1*smY(Cd?yxDjHahY)4y*ts+2dH z|N16S*IAptrdKBq_KLQHt06%8zci#zz8TW>;naYQgE1;0_pP>dDptyT?y+bQP!KKev>jB1c>cqZK~c?;Fr!S?y+4Fgq1mH;Hbgjt1^y!sjt3R z*rC5r;zJU%(h=$Kwb-gB2EtO<^X^d3Xi)^={D{G_TWQL_i8r;?7)w5%1MOLGP!)9&mbfMz4Lly;!uDx*yX++l^7+ z^r-*4h7Wi) zF(?PKoC0T0cCxg{aE9?F07zTPOZ2>douaQDwFq_kJx+G;MTRKWk6dWT=61y?z>X!W zJ*OhB05QiAwgwai%12q&d2P6ajX?jPc{NxkW^G@?tdaBjQ#t?`b9Jf%nxI+*2Jhq>Tl$889KXm!bw+sJ&5<63~ zs&h4_zm1>y(|n9Gj7M@aT8o2Ftler^Wo3*&N~bj>2|*J597M(5Q;;p|{AM{*3aE35 z7ciD5A=1=xd72g)fwUr3^X47O-JDz{OL~>24|hCseCv+@ngvlV1mq47Cagm?#i4YYVB#_h~#cFx%Y7;G8ATvbPU*J@z0YMI;V z57R>dW9@W8iRx-_;3;&IUVkg&=~g}61&&?=?+KQcin)g$G_wI69wKjlkoD;`>#=*j z%rY(090ll6ier|fQYI}hO9jkQ15@keYdv_CPTKICX-&MRKl;k!<*G40_N*g!BwkKM zjLq6$Zb;i^I6RT}Ss~cGcE~v#y)tBUcpGTAo3}Y5tsvj_Pv!6V-V5L$`4cbBjULG{ zm0Sc%>$bD>7T?gSFFAsLf&|u-k$zzD(^9XiBs{ZqY1?;ab0NqN@FfVslv)p~1k+_w zQ41rr`jh$Hool+M5Opu1h0UnChsLZxM42dVERevJ)q&ut8~^t9r&{7=aJ{spL)WOjL1l z4H+l}bHA^HYTV1$pN^itIew{aWFnnbbKA$7w2*?QY^B6V-`c{<*N+r#k3>libLqy| zJD=ttOD02G*ujB+)JE#m35T9Q^7~(oKk5ty%6^uY@BjWzXEBhkWKo?k+1yN>Q*>ob zw}xY*gO1g))v;~cw(VrcwsvgWNyoO0j%{0~zpMX@x?5}1RgJ2ebJjbb7h4l|0a|}s zi|u8nn!`{qst*x)o{G{UK`4o?*WcEPRR+~pLJ&;^FMKa!OeOwYXcz9jOWVrhx*)iu()K?qD>kL zRA1HA{U7X86&?x|<*8})nj~K`Y6l0~$HG#^g7cvMXegdC%?s?G#utg@_P|`xm&W?; zgdV@1{Ze;4W9S~+h{tnx^MY!#;b_WD>?1G-C1oNgICzh0V!*iR#&S<=zWJPs?pW?d z*e2vlWds0B_rtJc=-AJey3`-ScWUrtUwTq^cW>N$Rd|GJXD+F+xfm$_z@-L zfp>>DNtnr^fJYcbT^SDg$U6DwYGe(kT1HiSR@afi>jAm5VT8#LGOF;CR&?2oJg>2I zC_QEI=afTE{vREoQbX%c*B@w^g1ng`$^mZJ11x~F&_d27ZeDOGZ{iZ0)-))zrlf2b zi9D=Dwg4XmREb*z`@kbw4rd$)9q3`qj6j8SMd$d&fjRROdWw-9V{uiB z&Jrfo%Ppuu)fSrSxnLS$rW*;0%k5?gjgp?i`(>M~P0R9tnDd2t+9%5DsYz*Kd> znEq&e6D1~Zi{DpS>;MxpeyKudd*8~Mwg`~e4dx9KCHEY}D_4kf+*UDMt`{Y6uq?_= zhYJ4;NlRDkP5e4&asgLT%6pNdDHn2+WUwd)ab|`N9SB`pA%q6nK97N9UQK%H?OE0b zeK=WNsTivXM@lXHL1LG_df3r-XRqF?+!p=jgluGBWmwz@T$ZS<5Hzc;xiw42Fa}@` zk@)b*qxtR4wx8X1#a1nXCZ!MPxw!RyLok(vm~P%$*9YMmix z=LN^0)#PZ@QAc%N#_c?c#Hp|otphw_JtAn!tqUy(c$kNs>;LuU_U3?)eO;%}ju)aU zfN2*zy19>(GtPX|`hm((Pi$1j$#QC&3pYWotw|!kZPT2;JNvJU6si{)UoeyX*>FZF z+%=r86C>;k^1drj0TY9k(T?BgkZeiwGh4#SB?o;)EyK#iX_UFj=)P8C!~*PpaRVS= z^jJ(pU?7@3ce7J!)?8<-JwunUT$Qh8ENYoWd@>+|u5PS2oiwX3o=r|`v7f0K*WH{g ziLjG}_Jd=$x$pP#`kxIuYJTobgx|@2M=f0XDNmgvH^c$6b{%R|4HFWPq6BxPsB$+u$HvV50_K^YC5DBJvxg2 zoDIGxt2k4SBtN>Ewo0_YJqme4N&QU()aH;K@kAoAWJwPIYL0jX`v)L#M*Dd{lu-P9wp8MO6kbS#=UmZc1 zjS~t^xKX|DvgaO2PKUI(SrS~hL05wVnehQ&gZW=ht#dGYFF_!7=I7&Pwl|b3 zKX9MB?$g1+bom)z+8v)*T&Q0Ni}W$9`UKBpr>}_J)c^k63xB81G1J8B6#lxZ1$*Xw zX{&J^bbR-B47dfJJvEnx2v_Zjnp~-Los|0RAb)W$#Iil^Tfwk=y#|J&7%KsuMGuMQ z8_5Y(garCfK5(Nq4w9^-a>{HTDq^+=!Wbpv1WhJc-=*6CguFu&?gxoid>I3!1d4)qNBr{ZI|jBb$fisQ|6|lW%H0{I8<3?gXa_;Hz(V^}+O( zp$`#tajY7-({&qre2|$WW2Jx#SNur0dq&=v8Ijm-R%LWalDWY!e6$BRi(vg1J+ub4 zwgl~6tdV>J+T!@Um3NE5GbxGOyMUR{Qy~gIS3-?X3B;%%4x-Va0AK~e7BP*j6kn4W zl|76P!(rD~Qn8Jd8GZg@-WB`Ek)60pWAsdMz7>()kg;TE_u%pH^aMZ#&?tPb!^y(V zI8^OMgZLXgJWmC}Fz88`c$lATL}R+dYjrCR$rc5Awo#U$XP8~_G+#keFn|6wN<@Y_ z0+HQId|syJSxN7*ZDo;rq*w{xI>{fWIv4J`vV2&Z=1PgdbiKzAsOxd@_K?lRv4tA83ggk_!luz5ioli2A+*o z5f*Cf^ENXgQbl5|Z8aMUt(oaR)Zac@fR6a*im{}Rw!ccq{T0BpF+~Gk>n#EYSP#&R zyIJdNb7*C$MYGAW@{3#ZkZ!Q^;ik{y-ePIRN6)(hp-fofqTW^BX#JFOPwHTUm@e{)BL3 z8+!dxIA1wn6$Wr$-v~Y+mdM@z90Dz<^@~=vBYq)W7c?C7MS!)U3nW2VaqmZ$2hDHA zLC38hMm51Y&jQb?pe4(85nvNUWs9?AOLIMoL!ij0ODb$ZCju198y4rJ>)sV~q2OLw zo@LEyFl#7e!`$4)IKO2&{4|{|YX1IwGIk}(8>S}d74;>GZ{w#Z2aEWG!_!_Ml7qfbe9Y&$q8@|{; zSvK&)NQiTiJp^(4C7b(xB)xUo=BCHk&$ZSlt7Yi_^8hBGeL2FIs4!Sa_Q5%*bX@zB zCAd(;RAvEykbY-7-$cT=*=#k%EP|-9F+<5Y7+X@)JGM1Z*Pa?c!Io73%{xTc;2NgR zCgn4mPLY7)ZoedL%>+pn@BdaqkW8%TPQ;9TN{VnWCSl1v4#fgZX-0RP1aNsJzsEM;J}gf4b3 z7>dlM2DOKf10DIc?cxn@$@3zfEYXIL?6HFsF@rf$HiEMBl2(!w{C*a>|0|BAJuSO$ zTyFubGvd{+hZ<5(o&%c^ZVeXgkzSfCa!!Ml&;#}E5mWVx#ZsyIG-1=gnCmL{@kQ&1JMOfncr+5?GrBUN7>7Y`% zuMN9z*(M?#bj9T+>ic)v(POVIvKy?ys15IG*pZ%r>Zii72PqbgfMH)kf=I|;FJBK? zJsP)!+R+iogvX*R!dA~!ECi{=NZKtT}QF>Pgm}tM0 zevK~i3V^v4La`?CLe4~+do}Z;2q}%ND{&`1(#`iAt&lkXBHy@{v3jh5wpe$hn^&t3+-M_B`umv)9 zkoEN;ndVY@cDzsirQU2fZwrY2vi>O#CHY|Fnh*`m=~tiv>o<4BAIq1ptKs6)H3_AT z@&<`RTWH+b8*&kK!pSwz6@A0`P>+{Yi;q-L<@Dp87Ah4GXG6WE@KPTrMdLZh#kQ?W zd@j0#TrZ-Aetm!NuWK%J_7y`9K;6DJs#LXVYD_w4NHLcB^S8u5n^mkxh8su3NdaKD zi{U>-DaI=n+1YCwVwO}!g6}J39u`d?R&#hUp`gL+x@E|v8kN>19f=)&lh#AtbLN>s zOqRrB3riQZY^{cf#8(JY@oNB~(Vt7mnhLp$Gn3}_N3#|M*|So|9NGy0;JgZ_9HtLB zEq$3kidHv6eQ_E_BG!Ewokp z1f~BH$>G9b_;0_5$?-bz=ym!`+h!o_)G`#L0@SBKIvmo?t5?e$yN%$EUC2PX*9*a= z-_sYi{tz`;Kkp?uexZgFpv0U*k;9hJ?P#|-Zt8dc5s#2EKUQxv0^?4cbGo@ckSb?8 zYY+(IB>;~tul4J!;SW?&qgj?8i(CWZP_Bqg7gv>l!Q`7kT(85$8=(3?YO7FC+@06k z<@c~1S;17Y{r#O~!{!46cD2^)mc4i3!uR9Gmgak_-Oa{|8`cLK;O$bG8}IWtr`uy> zM72FC4Z%xNAYs;4t#xwCM8A23K2NWzyMygqvRd}Z^%wg_c*Bu(%lODV4{QJ46RTIS zM?x`GM#j;{qt&cNUW1owkD+z@^60E6GeW$RxBy1jn z0wyLsjRQVsogzlIa*49G^Rel?&F6BTJ^NWnQevgTE2QL*cB5-5D44X%>5E3B@J75k z;y1HLgCGutO;@rnz(r&+#aW0pE~PBr83iTzN<8X&kpz%u0oEf^^~8<`I1+P_`LRtb z_|xFz%uzCOij;^cli_H_9Nc+*=>>FTd{@uy$?$uKPRv@ZLxeTC_Jguh3FUE*BTilu zeb9;>T~DR)go^`D$_=;dy%waAGKQm8Yu%;Qn4XgM)+Lh#!Rta)Y8X-z4@#O>AI_G- zO3(~R<#4_!0L+QhhDcc*?>qoTJJx0Uy2G;TvT5I|e}~1eMDo}n4`sXa#G_WPcoA=# zD;HKD=Z39QbrfYJ3f-ctgic;Ytcp7@%&UN-WTaU(JrhS<6z5x#?HJUx;p6rMS-Jpi zg)F#zr%${i3^gsrDVdrwK>~y3n2>8v>&5yYokct%XQ3;x39Cwf8x7up!0x zWKSztN-=*0>eh3?tg)CBiXNMm(HDq~#!WJ??l7m-7A1^&#my|5Lw{ErFi)1p_b00Ixd&1 zsL+E^46AHKeW31kRUU2TxPwuG<;FfBp}%CL6l1kwYUXf-j&>Kf2+!ly-St=cO!@#B zoYn5i7cc5J8xLmDIX-8jBK`}}jlT_f)SN?MhJ-ORwQ;FX^X`Ldwrfm6sMMqJNP9;d zz!T(xX_Kiw64ZI>*O@Mz$t!$P9l2#lww!5)9Z8d`Cn8~1#&*s4)FbLN$I|@su$J$^ zylq-zo+qYu1Jzv1tQvKbOEw~%{nqRkJ;PV~XH|bisowVF#3426OZ|4zylj8R1qv@b zp95k1=Y0oh`s_C(civr9DN-cRF>#L@AaHhX#F~BPemrB0SCVAGf^N^HX*7rzF>c~a+m4CpH_s-cMM9x2rF|@nUBZI%-jhlKzZ~= z==}D#DZBPKi^ZplPl2xBp>eSoRFfmDg;cFfgj)27&y@lVvrsM+J@`VZryJ~0lIPcO2+)-u2a5qfN9-g`1Ys+1 zV%B`gvhB35N-P*&3}6`LwKYUoE{VRm@2lxd||0ctxh+oQ%_XTMLfS$F}>Mt!w z)KuT{hL{tINpQ19#z{-tQF~4+EXwWiq@vlvlO=8mxZ`i?pm7h53WuVrWQ)+Z?Xld9 zX=i-{h3{QCA@ASe+$m!({8Q`8;z}{@zb~04OA4s{04;fhkAwu@CsBm*{rk zCbye3amc1AFR~N0aT^cF@r#wu=aC}U>p_FdIdulSEy1y3&YZVds$q@G*a0f5S4B%RBLV@F?a&T!m|(TMQSHJ zKuhIbl1AdVBEG2P0fZO8#^bKYu(iow`x%*fjnH8;&L=RZW&81W(N8Cz0^zm(i+xh0>uq{i|QzHCcN z-_5lO>oQ)Un70L5_)M>i&0NyB{M&g~G8J?HG|+SYMkf|;fc7B!;=eFe)Fi5_gIH1R zvWB@%XJ}ux$BU(d8nJJh_C(6L4NpuoPZHktJ;S(Alu$c4V57_{wjG{}t5|o~-h}7! z^72(~1!X$HEbDbE@egAM@_Ckxu*R~tSU2SmK8YQk6l=1D{6xtuNt-^px7n%;#Zm&A zl&Z^8#kkUv0O}C3JXOlfs->lNKb4wq;W$@i0xffsM(>zZ7c$L@Er%Oqn6JJ*9vaKs z4^<9B{?n+Whavg5u%riMnTl#opGq&idaAuJV~dtrR&b>)n4!lMz>YGrO65nh99tIB zxsE>D@tcwJr?GPlz<{1Z=d1CJIrqJ+*4C3f7LNZ6053B2Q3eo5cJk+$hI>fkIbvAE zoVpQJN>baIFek6>eV&$CM^N>VU5{3=FicTaUMcH?gU{x(Q$TBchX#D0WJj@Rh((<+ zXNalq-sl|kaiVjC`5ec0_OlmEi|&a|7uM^Aoa7TEaz%3Koxk8l_RQU~bA2I4ehZI$ z_i?`fSOIdi$%SdBs<_M{b20wy?zM%r1>h-yJ78l^h#mRqdr1QNsxMHpJwd)S!%R1c zD>>hsMDBZFZ^(m4e)c=h$SMwczu`dNA{U=~ArUr;#irf@QvK_86G3j80 zBnZ-PBfnVMYHVrSiL15>P0|O}Se2WRdvnPFy$XKqR8oIl*gL7WPL4k}IzV0kOg7S;C^Iv%B?h0yPoED+xT zwTuoS`B=gxDpMz`$J_dhYF*;fU4kSwOYRge@Vvx)Ax?GLMhvw$J~;M%cGT%C)2*-XAS8mw@$6;~T{608;6 zE%HP6D(xRP8m0qbL!g}dg6bm3XnhYeRM4?X{AL7 z!dJHbuz1K8`?2ktPE1N;cq}Mo7R^%qNOMlyP+e-m?xyhSM}x<3mCVOT6+!6b|)^+k=c{|L?mcNW#668jK@COg8gU$gbz-ciV{`_%6kDa3dt18Y5J(u~%|Us?FD9drirOB$%g^zOKO#s^S=gXWjNO%to;U!W>ae_cxb7;{5(8 zcD}hLuEc*UUBttrodkIY_{}5YD)%fqM}%=(KH__sp-zwN{r0)LzEA3CA%9ft6)RlW z1LdWuF?p&Z2&OM#ea^aAG>Eus-?(S5O#&}?i++}E7jw?idaeb6_fecaJ`1}U>A9ywBA9$6x)}^08eC^an+fOU z1mK|#1vP3ziHwLAoyi1yHOy0D5)s?-*G(L2i?CLTf zmHqRTQCbg^J5CgI%MPE0g@f;lar?q`3|KMJAABIVPoITF4p!WTK^Le9KVt4SYttza z9bOEc5@GwNd4rWT=Sc$PomNQ`5BzhMpRVEqoKUe?o?mFN{1BEJag7%s;-gDA7y-ED z+KW^O77wkOukoN<@JI_>S%KP!E3!qO! z@O8_9Rvu<`087pW<&IyArXc*C0O=>myi1i^&n}h$DXmnO$DM~0m27Tc&HT`WUmdTM zaA;XY)5NfTk)5I&bwPuDrM7HJ`4rP_ahWI55IrSZ7vJTiBez}$>BD$3nNq`CA@6Z|ESPEF?P=Ny?G1bWy7=k zer^SPP00hkZvlXhiJtGbnOwkkY3|q4{!GvN0O0GEA*_8)A!7PWTFZtdFLG?iz_^Q! zJu~RN#uD8Bhr|4iFv>H`xJq~cLK-KD1 zSK$*qZUDVGES|m>Tz82bz%VT7&r(7S3x0tZxYL$SX5suu<2Z!_W4O#s-Jg_F5z{{A zoWRnHa^D+c=wW;e7*N^IHb((WsGB3Rls%$8D5^4T)`$Xfy z`R>vpbPzNH_Oh>T0Gn11jkx1EL=R##CQ_1eUbE;0^epM&xVsa_SG=*2xZybcECK*0 z7nip$pO+Jx7YiPLsD@L)Y$K8V1Uf-Ryg`uw;h&fIf#RLDh)7{sae5&v5dYj?#3pj} z-xe?jz&b8YU(dxU%M!amYB3i5n?7KQPi(i(`jpt%97u~4JAhz0Ob z3TTP9z$K5GVg^KF2E~SxPggH(o#=EzvjH+OgJJ@BZmF*u{1&etSAL%ZABiG{gm}D> zxe2qoJw889?)wLGMeevtG_uNrMU4W(DDb!~OGQB&hHyby7D+sOoJa$R>4ZIf-9CmI z?Ltf7wEF7F&zw>1@N>e%+c=SggH~X5fmf5GjYvsB3v(wAMcP2)6jQ4wHCG%|jQ8H1 zzhMCPRz14=pB1*R^o|?Vp4x_F2EB#H3W7*sZQ6wMk!J!N`k8F~+$s`c5Zsl02{vSD zrY0}((^|=sv0$^mKv~V;2|`0OJ)%Txdq5s~9U9xMXea%Nli?R->v#Mdj+O!{S!=Sd z%`Z+*VbMyWO9lx5#cRtDd76~2sJEQtT%CXvdtTgZo>tbEz_P`$)1PZU$X|RAuqhH< z6IPF@vmIr6dU+HiJ2t={bUyy17_x0{u7!@2_b%<-7pS6WB~1IP(&Y;w#lSGB#V?*x zLz$fZ<^AsSDM^MNmoPS@_>DY4pa6G54fPg}Sn$B4;)Ya^kDv(s=Z$Cq6iHy(9ZM2G zqg9&&BG`>C<6V%Dn4+?k2Ns^3Aw$#{FyJ77p+Y#gZ)H%G$BA$#YI|U?RMjW3w-I^nTT`^EH5>a8zsyne7}MSC5a%+|WA`zPnZ?L<7*7Y}u^vvd^K8=k>rHOEU>O5TQa!4d zm#KzLOR`%z14C9VRvXQtHm$UcYFzDl(OkhG34&Q=(6G6>6Lc@WOgS7xFC!sXN!3i~SsqE0>{BoJDhIxReibZ^)a&}KPK^9W-pm&a%{mdj_XR*r zOcNv|#|cEkyk`P6HA&^)O!23($^Z)m+qvr%w_u_x7n5vO{G41|3axp<;Z%z`g5{zF zRPZH#?Ed*whIlDM24=u+l`e21KirQ|T#S{q%~sc?hVhU*fwgOGZ;6*AM&g~Uj<6#A z(3rLx7Rd?UsqBPqX{8wj2D$49Ys>CY7w5^(VB2NeMtR~}tOwn(Ov%A3>pqd2lARo- zClvF{br}qqgYl@_&!2WWVeR(70nVFJ2pz=!OP~=oHK^4)g$3{#TAGPZJ09-)1XA3Z zw%QS{YQsgSr_S$yNac|%^UB3s77Wdtsa=e^j+z=9op*~$U~k{@z6^d5BLGUdPTcyW&3D5iRM|@0N)u_ zQaZtU&_->)*a=V^H%9EUbc6d7AKj%sGz70mR!oF7Af4&-ap#*HVs|oiD_=3``;+e+ z#ArzLbx{Wrhy2WVb7_`K0+pkALXm^{RKr_*Y=r0KiE9YLExW5G4_Ot$Ghxn}wS5vF z(XD{gO}OlIYf_x+U#+ijpt#WsA1U8qpcelCVFS;@QxOokn{{K>?dGxI@7yXxg1<7# zH57+su^e`+78rbwOe9*dc;ueIeC{mhZx>|*%!#9`1C}ZxBVu?4sy=j?LFFobM}Mw7vx4p%OR+>7>|8m&h|Amf?_TQM!Lq z+ZLq93>m(HdhpiloZ)75o-0m)=Q%)h8o4;!cm$}zILx{snp350A;g3m zYzL+St16XFq^7uy;xp4S;a;Ra5+`6qVi*GIY;lmW{BA{E?UDEc^3}=uAfeRCQ2D7z zXti%p;oo0p2$C*Pruznt%#69?#qp1&*yQ+(>_2Yd0yfB+0z4G9J;DDt9V3QQg=MZh z7wJqmbzPo+{)B84^)8i<#L2y0q-iEb%kMO=R+=Gmbh4Ksvd8o zjXC#R81H9X*)!B2)e-$v{kwr7LcnLM=127l+k`TfAXLMM& zV|{Rish>v6cC#U0$zBzm?+sT-uE-UQet(J==+bb?T}-Vo{4-Uy{@-k z9zQ#QAxKC`0|&B_iI@o_kZEyB(ZjSvi?{c>9NtdL}c~i<2Qbq%{O#30& zF#FbAmdke?ZvevNM@kX#2mbsL%_z|HKl0gQN?IB?+SuRfQA1~Qra$AgxoTCdiq-Oq ziM9A0&@7%PRZ9q|%+ux0ixpC-hm+(usDf9p*@_aY*_({cp$)11qr-a$^WhD@Q`an@ zw*=rZM$BlBv#Zi&=d&^+rU$Rtnk0WM_8$ceSl9$t#{l3S>@TKj-{0Tp-cNy_pR>c! ze-pyjHEgty>+_M7c%~nUS(WJY21Rm&34z4(8gV3jg9&mb7)il{MhB^kr$q-)>NwX# z%E`shqO6B=?Y}9e*Qv`N=I@_jU@p=u@G zfd8rqwg+)5TOx4Ookz>;0M+NC)smtE|J!3ziS?#9F=PP;e>1Dv8ZTak3+p7q}1kRMZ zrFsa*n@)hqZm*^7UkMLHS!}2xRAm|8>G?XL)yd-NTza=iZ(9KcxhKr$xrXjaZsi%Y zy=liS_f7}P(+;np=|3mjgzq0uUAR-zzI^}@BVQ5DX+cru+c#Y233R{V0+28X8-t2M# z*Nurezn<*xwB7^ll-l>(Gm^AN8d|%g$s2J$eGa3a9@wduEk_0(oHkC-sr5$vf>p8R3lO)^mH1FhEUsty(f(8=F53Qa$t=B>oL&;zsq@$(Fd=gU z>onx)U&u?6Q8VpR58up)g$b9mB>M}9x}~GkOXl1LJ^k02!bN1?dxYc&05I4z+pjT3 zE^h}vZZ-rx5(|8OulgLz$U0xTu`{=@M_pgdh^!%hZKLb|kgsu)BP0}KNxsMgDfXFt zg4;&$bG*#wS&oSun{-gkCj%a*5tonB#b+X>VWGyi{jA;O?9mlp%&fXGXR!fT{HCo; z#@wsWX35XZJp|6_>V(DUZJm(=fhUXCCdWCYxfsJ;ARXwJE@-+ILAaMJD3B{wq~###ds^80%%xw)Jg&yAbQeD%Hk}7Os}R`R;&cNWaaN+xhK( z5_?m^t{wM^OqH9^-P`%VK0H%rA2OQnn>L0GCP3vdPb>*|;BhMv7d%+0Q=H|;^ChCv z^G4W){m!_vXHQR$*jUX5H(&Kx!=hR1;Uo9Rg7`u6yAlZd5^a%KVryN6GlZ?D%B-Dx^eoY{xqF#uC zN2cFFlZTiL^1Ojs76Owdq3gofP`Z9(DZ+5~$>~Gm>VaA$t+8zr7v|bxrd3h;ec837dSJZcZ}SN4F_x|1ETo z^yDPpVx)m17|9y*m=cGN?q{!pYF&y^l#=7*Zmf}8iSkP>3*6OXiJ&ZL*hoy1nQsY-(It876?%Nu%kimUN(xu&lk}b~0Tij|tF2)JUsgxLo~)Ij zHQgwMKPk!CEpE??Bh#IDtHwH35v%zn#>U~)0s-w)7;;Jmy=8iJQHm``e^n$e%9zS? z$~}ZUR+UA%O~+~%{CL2B{EG66`p1SF6|)Mz136YG*+NTl74Jut`2)UTVSHv}Ww^+> zL??|xl|N3GxZ4N*R`%{h7Nr2|xwI8lV@shX4QNLO-$0N~qkFq+|9g}NP{K5V)l47- zuLPvVC6&5zW;A{oZvK`&0b9(qi_h`TDBe_$McaI1v1vKf=(x|$^u8v@bUL;yW zWX5?BV2YAFO~eiMVqg2Csc}kdS(ZIhz&$1OT9W+`3Vb@9@W$v5OAq+tb(h6#?0|a_ zuE7XoYdDMV$W-(*wU%d&i0WvSA1Q{U!2JK)wf{weK7{w_z!OzaGC-f*zs=Y6Ow)u1 zN4134ap~qj^e`(8UDdi7h=-mT8_ucpYs|K@_nU9rP67HdgeaF_OkAn*@Gg>W4Xq{i zr)I)tQ%fRz!;KEV2VpS$b1gO`|I%-0nOM| zRX7OarC;H7NsrLr5g;*q9`aX4nJ6pjg$H-l&9=;uM!up;>W}8lX{*xeT7l+UDhbRIQ(j z$DuOEm1PZ-E*H=DAPv7K^MZ1Kd^>V(D|m|T&kflh3Mcs{BT~!=pVprRMeA#Eha>Bh zpLp__Xo>A*i&Kd!l`3#W-Q7p9-+!qs=L<_r>>tXg$oxbvBUGXni4~IyK-WQNm!?Np zwA_Vhob3+}iHs z5A0M2Wd?)z)q0~2`T>dZ-*Q&j`ZbtQz7!a507?TGdDPWsdK8wBdPr2+=Tj)TP;tWnmo$DU(E0&k+{8^ zEx`9{RQN}pKrY+?m8kYZ^(TJErT)XDtGS!G#28Y$#7QdvCkqa@mO_iv|vH}7!~Un68lECH<{Hraj$_z*;=Xw zs`O@mI_m&?piXXAj-UGGXSYm5x-L^jWbU*mp{%;*q(zSFYk@B*#u>>p9#n=Qp(VNR zAgs6j(+)O3BAr*pkxhFSJ3T%+?s~xzR9wUqMV?EMCH^}BQIA$xiA|1RYK_=8{!sr1 zLjQRlO-3DOM&5Ln_W)7`+AmiuKdxXyY)sFLc^kG<6VKz9FM%2tTD2}(sJ%nO$vFSN zrnBZ2<>U%fm>6vytlII>DUXUn55)3n{@6;uUaC<5p;{9WnbRXiAZ(wPzZmdWTE}nX zK(!cXI~F>F31a=kK-H5ed-W)3C7nX&hP(?%-S{y^u10 z#v;tiJ;%tXvDp!bYDYmwj3g%-WGor63_)_Dj+;v|vLVEkz?iPRWQJbNB`n)nW(KO~ z5Zxkxx$L|ZJJkfXTu522$qxj|N`J^)vRq@FO>?9{TS8OcCW?=r6$a*5|`z zN6+W!Cp&*6l^mt7E!g8gD8)Z3fPvpY{X=K(&cUBdbfO0u=+sW{5^IHea}4h3;$^VzgxmHNFn z1426W!_JP2*U~xAc5u#}STKP8HD}`6H9z2GM*r*MDiiRB+wb$__Bgle;|`Km%ij2R zC|#!FVe~S+!=+F?{1Ckgj0=yIOjfKd9K8XqsMKGvxp5~ATtu!$9Z6%B#5<1l-{SI= zl1&LIQkKm+8OszEDH2eh^oyPf2MM&6YN{xdh<94eqzVVi4L+TQc%A?qU>p<#Xr9Rs zwV5Xq8u#g0zk?bi2>CO(j`{cOFi{rBGG!B!=0k8xi8PbHco-;Bg$jH|tlu9n z(ZP8ot1dBv9ZTT-nKq#PjvDMtrN131F;str?LI5hQzuq;<3|k-M$adk!28Q8_Mh-r z@#yRXd)$JJIr+x(^5fjw-x1`q%qn4ZijYGK>7c^Qv$aBO`|Z5oO$1J&z3|@g9}PmHf!N_i8mC31vBi}5;2 z77x?u&D*~r$Yvy?E#~3_$#u2^~ z4d))lpCz2oB4Hmv`_d_I1X_QRtQ>J!jdAF2&W}T3lXQllf+nLQn%a9FGL9e~@Ne`J zcW1Ca-ot(mK3CNXR6T&tLUXvH`xptV8{f;F6w4iz}!_qQ&Z<0%L= zx7AQBs_qe9@S=qdw?sOc&dGdR$!!#-QFZy{COo%z(ja=ja4#pZUt_7*FUyNEN0g#P z+CYGfu_RtOvse+WCjSaoZfpRYFtHW`Z2{WDT?0V1t7v72Se<28KyO?bxwsw|_Foke#ynbarSb^Pvmj z&*NN^|)`S@aK-l|@L?np(SDQMPQ7!EY7rd`vO|R-b5o%r$dOc!V zv{H2=RaNC~9+L9+bKsRP#*LNj z-qUYG@KZ==$NJq#%UNJ##Nq_yx>tYg*SvN%?-Vwo65$a(iq*Ui3p&Ai4T0I>$@ki?sWV<4Zf2jhqr$ z`mT9saos*5Yr+5mc{BI_#S#C7B@m50(3Lr@^NU)JeueBgMrHLkN ziej$X22DZ2B9Iu6auMg@QcBeuo^Nw^jwzw$(Y*m@t^Vb14AUhCNMmRbdZ|mXjmIh+ z=7KMo!pu)1IpKuBKZ}0mOmtQm9I^=tSK-NA{N0-xShN^~sO^T3t`t~8{9I1YU-H<^1|%9K zU*y(JmXR8Ox&{YGqcSn{;&6}mREMyAz2nR369>zaOU|E&40unHlQU*l$izyyNyJpn zE8LHOM>ASfe1+rj5V+0^8^de-4=t)DCE|Z$ub9Z`GQi^>MIG(1;Z4flL{;iS9SnOz z0VaR2l6BnCpIPSxn=VJReR8JJlrQ&O!bqp;?h(-NP+20kxhkxdA%6vv>ygc3b>oK% zX#w4%23MUN{%<5>Dwg%Qqo(MA zNgt(kLykcf=QSN*lF+bj4$HPZ5Ks=-5^N)|E#`d2Ht|*JeiEX&lw_!>mKg{Z`Kq zwmP-UT2=vp#&1tm8Fp>zd3#-1a#bOI^!@laJil(;wl9DpizZJE=aS+oIwFWb-_pad zY+m4ovA;;ur@52o>jK7{V121IR82N>hol9;U`2P)Lwjh^Mo8XogkK!U_u zPu4TCISz2r4f5|`a)A@jb$u2X|CaW&5BtN-mC7D=fJok!gO8}os{OnxUuvZj)es1a zucTaPSjZ^K5Sl5x-Z}m2dXHED0b1IPJ{5sl^;9xZM<`0_?|ACiN!3AYvwxq%2%u1y zBH)=Gz{@l+>ZOp4#`k)CAgMoYl?-aLABz#9b3;oaql`WA(#yF}E;m5d5zms9<3;ir zS^XI-6p_rma?XXUdi@al_Wg`>g0s|9E3L+;n|h7mj{r~sZ(!r~RnH2Z0EIWSSWuwr$(i#MYnZ{SUs?b1*pkZN?;K+$_=vS-0M& z)j*c#gTJ^u`utkKBSrL}A>Mp^1rhdph=y3Phu{*HAPE$@aPKk|R$~NUr=^d@ZAQ?j zedqIbwd6BH-pIYq!&)w{&7HY1?gpfDj+b|;;ZP{rKYP*QdbtX2bm|suX;A7GfT_4v zlwib&`s#sovNmN) zPkefbHn8?L4MTi7ei)_GlQG6#i@!qa0KUe6Q>Dk?BvFzE#XTIJ!uB(bg6znXF_}^J zWJ1BuoLs44eAd7s+AOTFSl6uNNG5}GLn@~S?!yw}W#vy3T zY~8DifrqA#E|n%$xjIQ>u6)Y_4{)5`1H%e-$W4*@J6bBd9!4HdqgbjXW6hOy_f8t1C>C-mj$zDI)vC+xT?(%Cq2gdnYduVTv1EjBgcm#DE0GdG!!Fs| z5-2`Ds-)iM_iiO0D}Ug!nJ8)4~;9Y zlRLo31Q*uSZyAksGY7+c=)jVeFS)V8KV`SSqD$_8SI$u-nr5KQ1 zK;xpzj`PUZ8!}_2ctklQV9df*VJ>V$2jojc)>eRri_J{N)n*E|V&uo*#TE-(=~8Kb z=l!to7>EswCm zUbmO}7ff2TLsmh=8Nod}}z)_o9{i!1Jnfd(<{LduJ!{r+duG_Qs@)Wur9U#iwk_#cO`Zzl|? z2liqpLr2MdsKV(~Z3OXhf8~m)8VFJ_&$4wms@B0~^A{HX&?Z+Xg~;cza*Xg*RAW)g zXRwr4+iMNRGITGf`jrt~9o(#tHO{sOonrW{7+m6X+65*TFGwf{8s}xxe*?0S{Peq! z(c`G5c8-(s;?G;@@?1Y?xwcj5T#>imU+bCq-|P1Ck%h}%mh-H)rKCBe_RYtSK}|(!+WZv`9j{axfo!3Kk+wB$Zfg@$bmji*s?hEil`-8bH%OCh zr}7P!$?ju0)e7~VoHv^{r~SkTYHe4hignsh#2Tkt|M%wkZ!P^DD$36Bi{dl*qWG}E zz(6RH02+W5=!YbL5NPH3HCBWo?oYldn`=_dc?fTywTew?+c`u3Pon#6ZzSOB@dH-v z+WjGE0(4UXuSSVI!Lpt_ZdT-^W|iD{_uun_BVxzB=ogtZt|K`go9h=(yWSd~I20YX z2|dXyxS9DW=+s%4zAeqF?r&M54xS(uCvaNKD9D7YUste(WuQe#02+W8bRr4h0bb4s z;d@h+1zdYo$L#LVxQTRD;%81<lH-&!<>&lPP)2FuoYw3=?&J_vL1=1^aziY5vW3Y59x zg10*IXiiFI430QWGf^|Krrn|A&zj5zz!mu~Ip+YmP(QkCkBJmR2wc7^fk>pkyxy0f zU(x^yc4Fcs_u&{A$=8#48-~lKkM@b{(jA+UmmM9N$sggyHic#Z zM*jbC!=iE9LH2e4_OFX5umgODLjOwa)7(1QyA8<5z9 zOV9v1$E zQnC5wAW{ziGjN1WnlmJ=FDtg>SKy>_;J@MLxZPLizuIfdf1;)%6^;Xu(0Te6+V~8} z%xGxDMloifBiGyNj(U7qG-X#3;TJCn!Cq$~3(})~MyR;L6UR1v+l_X@ep%Ni%n_QjCiigR3w$ z)$qmPAy-EE(0^>83(XhKtIJt9vX$$mQvKz2h)Os`Sb8@TM+4wpMf zuo7$&xd9pqfMn|KLXNt!F!1iO;_%5-HGvfB36ZGoD zn64q63fV*0D8iKxcTkO&lQT=B~&&{!%p)XqD= zkrEPulgJ|qI>@c$#@5g^d!mQ0E7kO?DMwUA9)R87oHU99H5@c76pa2F1l$!S;^rAj zv(g;x%iDgEjRaD~Ktr~Juu`c)*y(Wm>J%)J>*N{hr*9bUV7CLkRF2d&$;RO8#wg@S zo54-9F}(QNxWT~W3WlQ@T^z3AV3xV{xt`w*ISnkOXGN4Ene$d|zQP_`UN!iTOw`6x zc7WTR!FOteD4OttkSpE8tLMK)%ctcsaHeT5q8E`$O2NI;?#BB4aKW)BMv($pymA2s zJ>s<3ePAyiuSD(o2}9aT*i8rt`T58&Rp>offZ{IsK`{)C#)ihi6vjjnD&}C$AFr`B zBswf{Y9|&jt<%cH6S(O|?or*){(c90n!r|k9A>FFD^&{3QimkcG9lfj`KKP=0Am5c zQzK(!e`hfI9<%a>cDN9@4 zgV-MoK?R)K51V>GpO=9x`OhnbF1O!BklR`}+A0N)+_Yv877Cd_`yFxv{m!$O*gIDv-r-4fwS3sL%x=hoc?g>z9rp;|CEOwy4>Qq5CzQ zvMOK#Q?TFA89F^&)b1KTQmu}&)-by%>Z}IuhY_Y-7;+y<4}M**J?aA#y^waJ9~JAG zzVYrx=LC_66wLP`Zv~hM|HEExTi(EYW?QpfEJ!Pe5OgUvDl#oz8HWhUY9RRoD(+ml z1TkZJz>rNr_KX!P^EB4Iqdif;W>88c&tvR52(KM=Ek|#o?X__6Hbik*nCsXz1?*In zL@-u7Ii9ES*R(OLia8jQ66;iz%&|z1acp)rU22f6f4XIA0v%T_0V@KG1 z>ozdU@8}hM8#yBYuOUTIf1p=ArXu*>_aR$ZkGI$T-i+S`kU=6ZXYGY zAeanU3Q}#nJJuT~WQTyHMa)q5aY{^NIL4#_frLw~ygw~9D}Ku#W6a@a%PNzL(xW;P z6L35mtuQd*G3U5g2^-OlPndQN?%GSt+KKhzF6)o3%HIdD)7qzU<{nSxn?6{XV%4cd z8vp{()~&hA;ZvU~Xf|G>?I!m=oD43~aKf?oS_Sbxn~#Y~vdF&veDM*rv{07Q*CeCoa@Q?*Wit{UbH!{j_uV2 z=VAy;f2e3Vx-$WYI+w8r^2SkFae>SwGiAtJPSB0MXd{^1V`y(80p2x?K zX>?(-DpCzlj`O2SZ8J!&ETTKuKgDNlLpfQq)*V%+C9Pj}Ek8&(vv0>eF@5t%|z(WVwahu#mO!~?Lg#A91hzC)`4$35OlMO%0>ASwVD0ara5n4-NNM8Kv z+lA^v0V8}DWvaK~5<#L{k#&ad`l?w^DMXkN++H~<5M_~d1&&k?UwE(ZE zMYOle>~{%)uYQ5O{3_wZ3*>#8?mX+$5~0ID;5>}di^iRo<)J_p>m40(21_WkXVQ1D3f7x8&K?e(<6 zHD|pG^Um>2pkDyXfG^})r5dn<_eXFnH1)gU_?Xui-@gZ_Gt&#^f=`G!SD1Rgr;?`9 z2PDWVB5~@7TW$NMWkAuM2{thoOF2W$qi$sy);dq50)y!nU;ck<$p02<%!gSCpcsDu z7kGdTXxJaX0aPeQouSVt5EO5SMb%N4@T6Qd8zK5?eHb_G600|mZOyl!SvkYC90Z!cSgj_o9ohlZY)c|NvM+7hJ&3e3#R3ulApC$ zTqb7nmE87x>3P$wyZlnqr8cgW*?NrRe5;LbrA#QofgSU(?$`b9l$pw2dr8}Poo5$~ z*aAH__;Wj`O5gPC-NW4{+X_=M8(ABeV&XZ)J?BtME|a{-W)Wz9I}?1+n%k(aqGpm_6wwIj1XfJ)%`Ddtwx9 z0s@Qh?c=Y={mxSa+ydJz>bD4cbZU?0FNWUHI7-_AsUTWa({DC%O{gPzo0E<6WI$G_ zwVy&W7a8g@N32QRaDy{Dhnqpb?nzjNGy=W08)$4+hr!x^>b`GHuvK~EOxnI3o=o>- zsmlEB=EOcdVqxvh93tW80thPU@2V06&bGcoe4NDQ@!${#xk->_B}jZ=RrupBcK&3jn^5LVi|SqOi*km z2STI?e>OL}l%n2h^Rwtw8cK0esxou>4z*8) zR8?;KW}6OA0Qa%$2%h-_^F7Yh$*cZmOW)BZpKa2rO7aks?ch0H{JE%OV+#xy%OkSc znJQ)iM)tSho@}9dAH5}6J*}`a!bf`yvx|BVSg8W^IQUxC=jS;cLqX$bVJ5-kU8pdEHGLUH?3noj-E%qXNo*JqMShRoVoxUoxsx zV^rFx|gleO;kAKJObr)Ce3fVBQvd z5E1Ns;fHld)y472d>@Gp+zR+pNA8N&4sT5Q>51B?{fXF8SCP@hO~c9iChHnfJ;0dy z3IBi3mj589kQKbg;Fo`M`^&$H^#uYI2Ej2wMj-%naM$G~_Ygn_#Q)5n`}Xh>ApVFi zWSZRM5&>`mApJ+3pJAM1Cw!qtG$PQ?_AlevfQFXcx)_GfR24U@f5&_c*NJ$nDja*1 zSV3|&r-+WKDu>lnrCdj2O~;DPthZ$Ql|SSGpJ`Cv-myP)6x1;e$J0m+rN9|v{5Bfv$3|PQ+YVBE);S~~ zHM{3hoky%abfI6Lk(3V7<39pZ7`@U$WWWp<7G#V1UdED5zpu00~%9oU|bM}xql20q2_go}2dgiu|7nHh44Nl_SeRu{BWs984N`GGWGk@jwRLfInnPBv zJX*cIXfXN|41&(Jj`Mhzg{+vV5%N#^RO0Frv;x&EX(ZQ&}3u;@iVSL<4nd`D8eYUJtb1`}1EKM{#%`2zRfL}B| zL0**Yp^xhOepupUc6))5ZZ(!KvJ z@TkVA)7}0~(Oy0be6_&!2XKm9BbQ5G?YOdi9}DB8WVW!HUK2Wa+~-HMC?5pfO~_t6 zsZ+8K4_b)PghlAc7aM;~qVu#LveUf9tqWI*Yj~b`QQCJ)g;R=YEQaOrV+f>#FcJm9 zgKQgfzJ?Kii3lmK;-8$IP((41-wA+S0SOS>?8Rj?Yh2Pk^v-L$MmXzAO8j}fp@yzuWJ#4UBLSVQnfw9w{Wi-2tgH$vsb_4gGoEvQ#(D>YA>%0npplSmiO+rUCy#{+BGJ6$ zT@^d^(6d9xT@y6AfP-ogO1n-9y*3)o@#33G-(_$d%6ANcLof|-4Wzr3IP5iY|M+$a zWx5|41o^#@-Ti2#WJS*9PdfTRrazbRElfdDZ?Hx>ZaOH_qr?7&Y9Jun<&;Ii!8t@k z4l11#BKPsPx3v=c#P{6(Wb;+b-Ot-Y%r`Aw6O4=ebLElH-@wRi*fi<^CnJ=_zVJWF z!f`4JV~%Byo+iXxwrz@V2x~KkxqHVXmAm?yAI0v7*RP3mL_0#)Z+%q0=io z^@%{N*lpvQ^93l^3ha@}yQ3v}kEupy<2F=azf3|PZX{5-n{4_`@)qBEhB2RJMyO-@ z=gLcZk2Ng8g8`3uOp5PymQSZSt<@zWkXWS_;taTZ*U3a#{GHZOlc%lWiz;p z%kv%=J(-W8xkP=7RLq8%IBtUa#+8gwAft8Zc)P}%sZ>jqS2p!B3PL83<25`EJoos) zCDeb_H;xrcH~mUX&5+ryq1JlKGDWDOJswHhw+dPW*S^2MOl*gKrYb_|Y5xlDd+InF z#)1oQD_KhnZC^PxaF{_#L#NZyll4}4O~>NUu?`oDyP~hHA_IM;cxLgWLYLhtqOJzf zXfiW%ys$b06>rrVodI}DW&Ms!a+w8x07Sm>CybnF4iom~G|Ix=-!y4?aopAoo??PN zsgQN}6bEnDp3z{4t>PVDi79G%0GQna%4wx95*vf^|&a+bf;$O`Fnvk|5E6SB&Ve#xq*GTpZDGrM~{X(v3O zZB#AZ3J5$*5>tVAX;b00*P@FtOq0c2#^zCb%5A@u4*rdct=c`ea#>wb=CI(HlZ0-4 z-{?NPD0;V}&0-cmL}=GLCj=}`21h*yJqG^f=AXIVx zoQVG8;eO`r@VA%PqU}t5`>Bhnf{7nL-E{b2MJH!Xb3B~xLd8$QUxm98y0c8Yrz;&V zuZnsI9}xfd^8XK5{IL)op@jqk+kycDBL^w814uv_eE=AshTWI9$7f5A6uy|GC6e9@ z83U_XXh}yO!g`eqF&xsbCcB_UJdo^Lyuj@6XNM?ZbYeZzu6cBflM`n~=WXF87h@t< z%+WQpU0(gr=(+=_)N}Ta*6&N!RNzg@wpF94L!k`y`y^W|l%pNB({v_7cUx!c#Y!=Y z7pN~-7UmrYzGH@$PISByKf=$(wNa%&r0G$}KA!B4yO#hMYFT8PL^0dLTsb#3ZHXsE zk^OzwZnnCIvHKIE4n+XSulb7;UV@b}YN2hMw!^(9Jk!J474vvphY&e&Hxd?g)gK=m z)uAXslUsB3gWaKDt9mS%@CDRDoFR2~c%kwQzDpH&BW>0a%S#$s^K)&B{cBk{t?#BO zPet1AW&5Nlgd#L9rdmBEjR8rjxVjnnpoM{?6V3+sxg})U7f1oQ3o&KmX9lSBM^%RT zeruJ~mmk2xhT;|2fN43=ubh;`y538iLU`Ez$3y};We;*7_<}TYn4-sdzY4;I^3-Yh z6kP)76{B;ZnHA=WU48CQhWYTjG$ZXg82%dMjV8ol@i{5X)|>a;fn2tr^23-nV9&DmJQZSc#h%LWj(~I+mnH_TYfjWMk zMubbL5zxaqz?UWEgdJ`BOf_R23x|ya4~}(I`bL`#Y0=i)-m%*f;sUV-`_l;vHPqto~0n~$65kSmd}uy+-qO|<2XSm@~{Q8Fjr}Nfyic{eN><{l`}qM zdj)mi+6hOU_}kHf^#^?8Xu9&c+*8tIy+ySmdYEbAKm73toLfT$M$YA*?~X%0+Z(g* z3l4?#=o~T9B@b7`uTIrFI1RQt?LS@Ej^DM0TZ5knmz+n_nDNFbJ4<*+`jxX{~Jfh&PT%P9aM- zXfqJUD&e5I{pequvu})SzosDdYFl{hzwhW=a~lh=5ATq(6ADN{8sWp44W&SrVZ+M4)9VJHS;mp`&_}~)Q z^5IYS=wQDe^TVLyfWTR+2L|wZ0};@G8m76ex4>%*sK~iz;|ew|$D;i;j)dbjRxp)- zo4=wY1d}7qU@5Tgh3j$=_-*;3o?BI>(fD#~164=o0~ zrJj*lN%9o^BZoayNvyu43V^NiVDF0KeOw`1Ui%vNYqgKlwN-gIClJ+1$DeffT>DVq zrhJy}bFQmrZy5@E4NGQhSmdSpZIweN>Vc&G#q&JtHhV=4b>&_qQAt zxKGEQ!8`iVKEgPL8%0lQtNUPST9Q1@IPq@DL+q$!{_P&3Hx&hPhc#SHnVIz7cc{R{ z)R4TE4=q5mi2*hc3s)L#!XmTnvIXmO$l1G;9J@PQfE>_rd5fJ*jys`r>VVlVYm?XL6{ zn^^_V0l8xOJ92jp+n8e_Nj46|sv?lp0X-escl1XJR=4=ggQL$TSIRiPKKeH>wLWgo zf*3H}6UYu!dJ`NOZ0TDDD6=}|2SpB>D-6-Uq6=z*^s^8;hX2f-Qg}EU^(4k1stuJd z5j!`&JA%HX5Iiu_Y~=jphD6p*{S*cWm;Dgi+ODDPZ~t0mf3cpVJvlKkPul_OlFe#T zQ)>KwdrzSjyupDN&QKPn?dgR4;osyZBYLJ>!05anNO+tM0wOmmi+Ov{?QH^}Rysm< zx_0|!WSUC@%PND{670Rob{>}U-KwcN+|X>d?&xXQBc>6>0Mj}~v|@OO{BDnjo@is! zgh*%bzuo1Sf+-;ABfP%H9XuIshjS*`fN!v3UQ(HCIBC4I2bBl!GMn**eW&5P+Sp;_ zZrWYiMVb9^rR)6U$jIQ61sL33H?uY{@)x)2sTSX}Cqg{d)E10kByeZR=6Kkn9ce#b zp8AdZdLU2;Jn~ib2Z4Oo0i=LaQ0_WF80g`)@@;@2rS!sp>h#|a zfaYDdR)gId|*MaFt&){>TdbZKRtfEBM3x*H)JOWL+;(V|8A!=z@z6y0-; z;>cO%h7m#gI z=3s_&j3Wdr;Rj-$`IA5CgS(LT3^Qyy&%Q6BgV%zsw)Vo5C-nvry{L20H*&(^IBg)O zLxEXr3*nDa(cU@H#pHhy%h3y3z6^zzECnZii0HROQN zYb!^-No@9nJB*qgUv&+69^t+Rw!5B#ti_kaN`5LQyo1MYZ5ouCSZeLS%?`AMq(t~x z`-ib^l6-;ecLYlsH)Qf(3|f;vZc>q!y+dssUhZkbP4BPdbJn_o+rw4VSh6L*BsR$n zEGz9@&D{A*dZqw4~bw_R(L+&MvPz zNFeeYd~o;c$2a8Z_k3a`a}NmEgM9PM6AM5V<~(7!qnPOn&5f@QcU;%mvK8Yc`6 zW}<8)Y|r9`rn#^Vb@#qA@q4QIChCTD_&f=fUN(`?ENX7WZVb(syMbJOdo~U;b>X;o z5Xn-ss28(5Hp)G0c8Csl1TX{;s@C#W^3=?rs6e9o8ti%Gmxlim&p!a(N_o-F5|K?{ zTSYchE7La$3LgOYJ~TwpFX#P`A_r^-+^Y=RwV?OhXa`?in0=I4e9ZKh zDL#3U{vf87t=@gsBZ;co+yHgq#nU`-oCpbQHVvkaD65FtrJQX#{RUi8W=-2IzjC;u zIgb_^5Xwp?JQvs*%C3Oox6$(EqtS4+QlxK#N6a@NZ#X^ra1Scu9kql!i)={SUA(;C zf;952lls;;H9+6TFu#xY;3#91!i9ioYWLQ*McM3{RCkQ)#t-q4)8P(>KB(r3Mjbnv z+{rd%Ttyj(<}*kH_X;H$4rQQDxVrwEE2*0|(@W;=-O@H?SX~5;mZ={NPZ`5#%6Zr% zCk!JRGLMuDIrc7Yn!Zt;0tvF)-hlG$S(#bwf zS2p|%Tcr4PLx^K>38Z?R`A;3c7j0>+mdLEslN!=SSH0C1D-(0ID6ASowy)L(4|ll| z)kJ9y{|Mmkx&qX&G8HQ}U9p3kRC6v*V8`CxT7D(rM_U3blT#3bikxH$3=Sncps#_W zaQMD0t0@`6h(e-(H@ab%L4sU1^Lv3*91V|t?lfjfRT}mP(ksaSbFypVQ>d}7C)=DNm#PT=}%R2 z+YCPmC~IKqNqOCP0e^=3M{LY1K3&SfF8g~emUzeSZ!YengQV*bH1rX9FiLX?c124Q zXUWAlkMejK=gWHqbHrXi)*|9GjE`{c1l6y(Y`UUiM+zt~zuWAGm*e`9RQ_(JDDM90 zEbOWBEWr&x45mh~tkj3J3R=UE@2u^@`b-MO2V?;|k7#3`*m_wUX*U}O(qLwIjh!Bv zJ&c7Xcku(TtMELz#HVf}RGo3d#0+H81n`ltFY?Y}1j<%@g~u-GX-B#RPe)N;l1Z4e zdL&HU(SzJck*rI}Rrb(=cXHpf6y|{2{n3P3^+(>XJY$s!bTLVL9$6XfiN;4xlx+-q zFHk^Ui0X9AI&f##rrzUJ@f&mbf8AHVM0oqS8rz_p8Yh^HLTr|23&l@ zt$TyUX>jldUEpd8ezG84(_?3|4|qKLhEh9v-Ha?rKEWxRkUZOS&+c+o}fNj%4VCghiK z9<>IocRbj|>`_~cBx)Cmb#&OzY(lP^qn4!S16m)3&eVo>_>7pa{NUBSbLxhjq3s|_ zLvok26E%qBSYPgpb4?OD!6#hXju_1{7s4l!!XbH}5i9JRaMsf_ced0t;&m3h{#_8j z)E-BxuJ!;pKpz^7=^mmHq>7ji6g~)=sZ4cI zA{3uL=>cePy_zcmHK&vz;5YQwU+xoqrEyOP>1tDZ zk0L+n0BscOukF zyrv+(={~2JHa9hy6(YC(+62)CZ0xbPN#qiHrtQ+Bg$K@Nv_xM z2;@snR^D~{VF}Y;Z-^$V&2H9C!NY3slHD~9 zQ#@klZCC4RZogqOCIxWKdie{kPfq^nB9F7~g*c23%7eGfr4zk6;fDkg<_rEp5R+i$ zPg7sj@H=FIo{aVaB@uY!R}zeotA0Zaqk%@2GPd|-O|0Jr2=F0MWpgGwq1`7toe5HE z0ruRGSDOlFO6?b5YVh-^Uuv7qbt8*Ct@Q0FDNWT@Q`1N&d(h%J9PJ!K2d_&LeUvIi z9IU67$Jg5r6HbKcGSVTmDK9TT6p@d;O5xUbR#%wxTl?*0Vv8s+>#M6q-Se5qLJ6y7 z($#v3g~}2sS1k8sTjd)ng=Rt2*pC+%055^E4_o-vY<8$rdK45uCwD7#s|!seC1pN` z=s3a(o zZu`MsUz+i6!L7EyUN#FebUK`h(Kud~_Z>U<{CRiytYzQ3F#E*=!rFd1fWYhRfV)VT z+8IWsF_ae0SZl2QDvcA$u71{KCOG9yo0CaHv>tg}z=_A`8JeLPAy{?mvi?`OnDT_( zrauEodY#k>X<|M)6OBRgAQlLW-LBs6I(H4`<4}r%Y4ZY4Pnq6h9$fj?BsZqTOBrsXT^pJ9Cl2Vb zM`v@p{uc(j_4zxHbdER`x?uW^e25(+J3;kI5$|-){KHUW<*vYzSDwQ?@xB%>z*^x9 zp}i9`$jDf+3(>7l%LK40t@>9W%Gd^#r>6t*&BHVPalA#^B%Fs+HHi|a`X`N+!?D~d zGypK8-pg92z!M{GI)>O}&ujVK9j@2-lVeaod3u2=N6ZE4W#Tlll=~Q~suh&XY_|zU zYV=+(ms80n%%JXjWAImz9XW*`8>KJId!jf?XlZZh_*_BQ`}_11Uu{&tNw!OBu%B zhbHT?A;tqQZKlG5;edXxND)+>8J+Jx+7TqrTxIkXa_UaR_wBb*I`D%Y;nTcEc*E(W zU}vE~&gPotU)lH70^*3_6yy1wxryA;h;pQCZ=s$gtxgfkKSg!G(nwnHQdd$!2h&aR z`?aV0M0LY&Gij?QmtIE`gK|}CuiAnw=0B?0W`k?;*6U9}O%w8ag)0YHxS0A7)bz5; zylfupCX_3S1JZIp=FY;{nhg@q0O1HK_M4xrqh}_2rEZ(%u2;_A{-#Bhc~&It+3_nk zL~Mo6AE{jwE}6;!izZeNSYYcDFFhk z;6U=r#dpuc#?9j7v8D-H)$HNi;OxLm|6zJE5)ft137#)1iFRUF2UO|fH3aq5DSUeT z!A#Gmqel;9`nUCXCEB*uC>%CHNo``Of+UvrJ#yRuujjjU@SguX4DdImmIulXc+&t7CxdOkh8JncRe68)5%g*xldoNB&Vro-zjK@xD2z=P6Muh?BE% zSROSN3qC=?SooRqFq@xb;bPI6MEWMLJB$RoIA}PLU{!^`pE``PDQ?wh!6+$si7VUi zqZa+U$j&ZOd)@T&gB(_^m{auo=IZ(Olw!c`Z7t+gnCWg(*l< zQf;L0i~~UgCv-aj%@@h&;G{nHPp77Cdtw}(VYTjG*c<(h;2s1hjT>rSFh@)Re;FVi zbuB(O&OD8yT%Lg8nzonGU#Tfy@}8Nc6& zuZ*F%-7&o(jLarR`c4JCP5P;h3XCZbLJ(c3EyWJYC}q9!2c^!7otGPrs&U)eU$W$A z%4fuZD~e4e32L$$IE1wd5|t!ReD)@-Edz|=lZv8_P-p?H7y}#x zq|@ffU|0J~=Exznl(p~aIj(BiXD;NPZQbG{`aa^;(;qlq)8$Bx+l{8e*#y)Un!F*( zy~_G&Zk`g1Pk8$oybm!OLfKe605#^IG@{09evs`)6oDsSbwPdi)qQ!c$psaq1Sz|U#|&DFa{t^^b>!vZ($nBkv) z-B{dksbV8J!bBQd+jX*c+9C#LE}2KP&wY%d$eIp>i4ZMMJeW~})t39D+1wfHu5-~g z-m4WR&q7iw$cUhXslmz=xX(1{jsqclIdzgS%rq#b8vlMu{hn7S3<2`q#nvW2ON!rj z{Y+^zwAER2A)f$367Lpt3`)8e{XM66u%8cW;5k;I<2xn-48M;Clo)q-#<)P8VN}E6 zM2s5A^PG}(`F|F6-ex0Jt^8e(l+W5W^&W@bcA9cF0culCiyzknb>Ej+nr=tGMN5g zEimnrLOH&Dwq}-v$`7c(6pMfBcq!<_j4)2Ycb63ZS^LGdciO_J#~cKltd+*aN(a~s zuPv7E4LW(aU6?3u>g1-74Bdo&KOl9@`3Cr>c79_XAdq(Ui3F5E07uL*hcugwQpFGL z0d^{io!#HU@Cq)#d#w>QjKtW0rj6Ff5hPKgMesT6%oO$d2B&9lXkRUbe;zg7!)onY zQWRno#?g;@OIeo&yJdP?Q-bG0IsDK+A(4R==HTluy%B9^P;+r@)=I*<0QHQYhc;(V z_ntOzH(+wuX8(eoMidzJ-wJvnB}e#hb<{<#81S#^6?4Th42>FSG;(kvl%;QRch%03 zV-)<`Y*6k6WzA&D^1I#4nk-?peOG7`Uv$eCsPn3#=)j`T3;rQj9S8*N+yO9v;R$Eu z+s5YBZSC5>nUAdC&sW+JJRsCZ ze!P<;sg*x@gIghK0L6FMb8pw3Mgjs0Fu4p4;e4pN2cW`cxh66mMXuY@V1RKeYAtm1 zMWWj4`9Y%)M*l^*V4t`x12sU4O+Q8Ew zBxHTVk;xW=jfq^>s;V2 zb6>0Tw!_I`gB(k_I|*jUe?Muh63XiREMoDW!pAd*Qa>_Ac_1bIuE)#9exuiswu_hO zv2)7G*`|x;`)7Ki%e&qj(C4y=C>;Q{+Oc>Mz}D{e1GJRUB_TjhraoxtkP#nq3F*bG zs#D}zjopHV+F~vL#CbtGWpyq|`OF*}#XV~@Kt9|gPy8g}G}|hslVi~l;IUw*6ETGj zhmA&S9E_${CCl!OCEAi!D$IU6Bc~6ILeBENTY7#HAPpgoC4qX#eY-uC_ydJFIAyAl zYz6`bgiGW^*xa7GzKMPQH=FY9-!@m`kYA!MWh1lX93qtgQ#$zEe8ZKIGl=>TKty2W zS>3@%bMMt;a(FitSpOtpGziWboAr+yRnG-v@Cd*M2!OmF0aX7B%HjZq)-8iHa{#oE zfk8qzpwJuuy)z-v%(QNt2qH;5XOy(`Mc6d5Udw z!3_13iSRg9EEGJJaINW;$%mXvo>*6%zATge>MKX@W5Q+Rw|8i2(@VtPg??%72H7Wq zKb}tDL0Gu}MgR{;JQqL#5C&Q10%(BG-Mos5QO7MLl8n-ZF&GC%o~ZS-6R)hteYm~L zvyi9pH;yzSe1_6^-|CYs%z*Pig=24uhi>shKKpm)9w8cLHtb>8IY$AC4>%otOM}(}!{x-=6rUxko49`1g+BtHAZ-GY za&&=zgV|cy(!q(lXLraE##v|%_3%A&OYS|tIn&b@p~7OkD^uwvV`Z5tIjf*K(5$iW9S>VXeU14z0B@)%bhfcU6X54n6RBjf0(7ff%u{XOz(7*2Ao8+5Lc|~y`Q;vRM)5IrX^Hb+~GaL1n`C+}_;Z^YHcrD-C|7Bu?lcArqo_`_INL}cUE_WH(=7^=+`$Lvz{19gBBVT zIb!RelN`*n^LveW!bsStrQtn0f`2)P@f52cZEt2Q5maXF+4M8CW6-?wUA-IR&28yU z>{(*^UCFmmqv!dX<5hlLRaCFzwq^D9Me(yH1(~jq<%plNdj9&i4zyB8DL%j=IA=r} zyU}8_i^M$#9dle5o@5i!qST-KHA9|-19<6sBUUbKt$o;7gJ&!XNC}bZ>272efVopI zJ%Zs7okK4kA!@?;2ZgzUO?r3pb6NTHVC{oN?T}8@uR0NC1M@hH`DzL`O71y#T0qZP zddd2aRw93G1B-G1SDKbk#01#%?@8*9VKkD&ZyLhXCGI8e{GjhiHVzXv6D;iy*m+Se ztmxRpVl9NbchG@OVBV&|v3Uf=F|m0{(9iP{o%PovD%4Au>)t%*992de`wr?-HgWpI zUdO%+ZPrWY9KqKJJLk(q^B)Us{9gbzD7fe=E2%z!bIL`&OM2*ED&xoDh_0TF zK{hgD8ddeJMjgv9?#*Hf^|tTv8YeObnz;05KmX;klJ|9n&kM{%>J8y+G72ZnegPCu z(GHW5#wg~3nSf*Kv%LYiFAW?s-$lRi(zK0hd}Z~(-`h0miMzW?awP@w1BrDjVrK2J%G-!Ps+UTNfYQ*q|%x z3vix{Py&6TgI8xgYlLdZE=AQz3zo}Yj0MTK=x8KkSvo9|$&?BLkyRHGQ|Nb&ON3?E zJQrs#MGDwXRZ+PHaAOl4mJbD1K5?~_mOV=Hf-mWJFaKnbb_XwLF@&0~BV})$V1RUs zwP3<$zmSEU%p$N}CHs}TByafb#%P_45~x3k^T;v&U2M_^8NXVirmgjxsMC~NZ4fab zOqczgV3TD{F@6>Yf@J@9yK;}Ew_lD^Ufc)xgw|Y_5)+JObk+3|yq%^?{bxJdegkj0 z%`XpU{9LzA99)UecQ8B(0K0wsftJ`k^xe?C64X800fM%n7LR%_A9fMT_G!;?ZlJfs z+8LVik0rkI=G_J0Ez#Z5y+^&xOE7o)xFl4)oK#-$@G0jvNr$4Jv>09J`jH4-;@Vr1t$W|Hu&2OX1IIQf;VMwoIO&)0(9_J^wbEFvH3&EbB+x! zh)-I_+e(rwunDf2CQB1vWI3A7;7Jo%&6+cCMA<6%$Y`AX+Pc`2Qb8c&rAaKm=YAAgIr03 z>8cCHrKq1hQ6gjYc+^@62#cLn5QIWZRLtwyRJ27X`!fi=q{eqVt^Z_d+@$>(Md(IO zlq6y{Z|pJ7o%77?ISxCuR`Z;6(e})_#TFZ??%P zvr_95WJ&kT3G7y&PS?~z8OqjJJw<-6<~8FT8#wfQ-*k!gib#dJ!fBY@2MOPO>49kQ zH9lk-cCJjFw$22l6+h;WpQ=N}rEU~UQKJnY8v{}FEzwdY5U@Id;Q3A|60Tjb=OCK>>2AzA~psX*dF_0nXoe7m)QJpQ?n1IiLL?*g}zrg<5@ zR=trH4B}^)!oI^IYme#GEs-O{kw-;FV~Rn}zlP#&`Rl;>?Ha1@)=373&YB|k+Ka|H zLG2ZCb4t*_h)nc1wXES3@?~~7Vj*RP+x%tb3$a~JH!hF1#(Yu z=s2u}PT8$DrLk5~sB`Ifxpt}llDA!GP0cqzZou_-(;5qCVl!epM>sLr$e_$NA6jz6 z5VhzC7>|u3Ky=i&2i;>Q9W8U4Elwua!uzVSX8zw;Yai%j({8lP7cC9#5y7+785%WB z0R=1|2}C$GGo(V9&S(Y0Y0(H-2|Rh+8!nZ;+D#uCwh&*8VzfH)A02eY;)xuGpimHP znu=PxLkl#|x9^C~Wv#@!zWITq_ejsPZ~a3K8zO6D60$Nm&H6MJ#O8tCVYpgi%}Ro`8=B(? zWQ-{nfN3_PK(Mal=8x^=wuocJD%uM7ize5KTi!tvM8S!~d$fT?(0>ZM>>fys)nbZ~ zau8`cxKKE&zj)@h-Iw^m5$9arB(UIcg|xrpJh#=M9qmmrsL*$}tI9fHCH6eyVMsNB z7+-r>Sv=R~Hy7YQi%j6yJ#jjdOG6t7{Hq^!KFo^ssA0LYWRCql6Pwq*ObI42?iFlQ zg8oVyq^>sj6O5q`!hb6W1|HMp!;$p6*gDcrwx?FTGI`t_g*7!Rip~Ry&HRF{UIrNm zPtM;u_Hl_LYjyZ+8DXbi=*?~HxCB5-g_ZN&ae}|QTVqEzjR1UTL!LN+_!g-LFk1J* zUG@qoV()!m^ySTQ0WAlELYIc5T~&4w$)j6+Of4-#g8(jD(a!in{k()Pd#lT8OB&99S{Evb6trRjN zCHaj2n*ZGLNmt@F0D)JO#8E&Yb zG+ZF3NZN#f%EVD1xZ6V)IF_7_Fol-3bJkPtR?}};RJ!KAnAD#B9x*32=h@@Wpm8=i z43_A7EjkPlzwMi)w=496>4e0ZcFdJC?7U6paPqLx{CvH?c6@4mgH0*@CKHQhQm0qj z7VIzg+yEt5;ivmUP4f5>?OPRW#o)J;b6&)0q42q1BT=ZYn{4IxK<`y}E0*50{l>=& zYq%paz6t?fx~%2SMp+(wY9m{EyWgg~1By`6e3=a#7Hvy%j(@;ToXlhhBj2M1;`Rxt zN+7jZ7^RwCgZl_{)BZ3}Bnd=YVyEC+p}qZr1p^?pGT(btcyU6J7_rn~7{Ze>?ZYU7 zNfim+lHV2Cx1F3=14SLjykvOrNP$0`g*+qO(X1U|6I#|MAA^T-AY#q$mhDXI|E<}# zJ>o#nPaoE_4jE}0zzN%L)io}|W>l*}6^~iN@Om66_%Wv3( zf46b(BN1up9GH`D#PeVYi8Uv@+%3%NhRis*Tx%t9P-9Vi1*!^nXI5@ns=*2qDm;`} z+5bYQ)x>YN^z1+^4Z%p2vg`FGM+W55#$HoyL-27EF0Q4mJ`uz&%I-8@w@i?#-AuELo|BhH`g#?V`X*Mv14YdoNE$?T9-Z64?M=v%{^Q7e*Mj$b; z+O}*6A~9Yq16|+{rWb{-H;(4_nDO5$hW%-?X@2-zmv0bK+|44OpzeJ~F5_1th z;;2?4y7@U`v2fNf1G_ltCrjO}Ms`xoPJcT82PXXtYM$=>LwCO&1flnwn#nzk zw^5ISB9b;98F3v;K}uL3=#crcGnf2+;zFI9U#If^kwyV4?)!#uxt?4nl z^2z%8nIe%pQg)`>KBE!B6g~wviTZc^fw|_leC*UHtLty!+lx|}nxU$^Do>qvp~}7y z^4%g;u^{GiDvU4PrM(Ms2@Y1Dn>?rS#M3O2B>$jU8Ai}aA%YA=m_PBSYmgjvFrpdo z9!-e&{ZEgpJW|9GiY&j5KUgrn`SQ1|^ugTb2jbK-)B9*_F(-Y*3ZZgK*%145phB^0 zulf&1naDP9HQRj|W|q-Uj;hqX>Mf|Uw@(t$l@LIN{#FbFD!J@NqQkB|%j>7XoAuh% zrvcbM!ew|ROV{<5`Ux%H6`xhj{xw?uFCuvGHgcYh?}@G@kJgjp|7nE&GeZ>No`L=G z73bCU)eL<_dVMuQpubJvQ~-yW=IbVKC8+;KDs_7p`GCrwz`23?p$c_DLZM#_0Sghp zc@POgk{hKyh>TOH45tZy3X;=>E@V2h{-wkgCO;W11%d@Vw zxdrB&j@;DuHh7fQ24-xc;LdMs;baA%@dXGkzmP8@UarGl z3L+8d3$FsZCqRCDJ|Y^7FNaVb+#?}{Lr}92GAVM=@K&UYgHN*V?_PWRcZgnEbl~k2 zTqKOu8H`xx9k5w~c`WN6Wrzl*ptY~B3~dmU?=Kr<^nB(*Q zd>ffE4Tdj{I(H1q*#KvW%>qKv-h}Sql;`Uby8ak=jJZC!EJh&OJ%GY{zFZ2n8{7m;@Z>J|)q za9vB65MK!60`ID~uZ1YPo^5M>Vy_35K||XlLrI)h)p0E~U9`&mOeGA6AcgU5NMunn zB30%_bk~-)bidaT99B@uxyXWkr&;b&WCVs-SQ!cG;`@GRc- z=6OaIa<2J}W}oJMhm0tF(qM&atx{cNzuH@4K}w}!$G3c4109Xu#?_=_17dn4T&wR~ z5Q3htWrwXQvTx1W;}%>i9k3Lcr-1+S+rR+SGPre@2Sc4x*``H+YX4|H8|4POBF(P8D$gEW)1C8Jv@BRBHO z`}?;6t!Cg`5rrOHY8-MLYAolh+_uXKyTEL4!DuO&6T;vkImTVw{{5K#+D%*Nf|%gB z`vumm-N0{50#c-PuL2BxxVp0nain-CyJO#f!w%$YeSd3=&~j@k@JsfV{jz~f5(7RV z{Va-JFM+02@G)nwo^d=4{%OQqa2j2e8TZ8~;JF(ucYl^y~ z8FG62qK|Q?(=|FxG3967fNMfj*4!}cQj+1_ocFK@r!JsI=lL0Yatb_N4;sKg=eY9m z0S&M}QVOLAbp^&4vr-haLv7(8#2QNlOV4O$FuRwq^Q>!|jN25HP|Jbx_-GeF2G+{- zD)hMr1;6E{QFFPV`A$z667OleRJ(JrFL)un%HWb4I5%f@gPM+4I#weU`#I7Y0XhZ- zQuUk}wPc!$4=cd|)8YN;I+X^Bm3{R2QbvdtMCcCcuBho6Uk1x>I)Eiu?}r71%KKfN z9p(;A9mW1RttEwibq?S^U)SWy({ZurdH9e9=6(#xdtK?vUTY-;QH5WyEUL%nO;pg} zNU38^;{ZBHc$83k=iIzC?ug=v(|X(wwzs}S4tTvGFfg@BdV+n-GJJ+$l4`KO^i=CE zDo7i*PSsQ9w)79v)gc1iVvr&-seu>brH54nIuUvBrUP3exth>?S+OF?wF+ z!&0@hY%J!nmIZQ5;`U+&Ov*~*9gOkcbW=N`&yzXac@njOiWv?Eg8gS$YtyJk{hdnj zgbszGp~@;Mb$A&3;bm-|Yx4=1g-jSL1xX?1MiawR0adD{h=-hK*xQ1T`TWc;j>$an zT)eF(R7{V~`C`B|V zVs}KjUqYfCc?1?}G@||38_$2OxV&9d(C{Ox@S;0o_FVvHxa+>GZlRvKguNrwDdERA z<6r?lRQhei_Kw0#j1j5ONSC!Fp$jF!Muv%FY{Gb{PZ4WPQ62+j%C37Lv?(;46X~O| z!ysYE3+O{M$QlcwThpW1_SP{d*GX0r!#is_c}6N~4P zM^7uARxx887IvP>9L8gv7Vm>qheU*^9PCcKK9ag+C^&l3k`roE2zKV>4 zmSA_e9~yI+{6e0Z2Qir5(GqqT4re_DMq~)IlpukPH#QT=Wq2LrOu%pRJn{h#*w_|w zYHrGu5_R$w?fvaFrIW)ZLY2;%F9$)%9F4T=-ldBv#)7>0MQy}K*+mbf0WAYxomHp~ zYN=BM*RlFY0SaW3*rYMTi!i2FPFdE2iSwv6Lp$=6q)ydJed4(!{@*9R>Q#{vP!>3V5AZvu zc@-QG`M;P>cH2uHkR23&6sQ}EA&KFaZRqS{Y>}F4xoBJ0kLK*|j*bG5Am+mVx+h;h zH@&f-`Qu6~<>zcLOm9hi+;+&b5ycD*RcI>M&Da0wdEfAQzOcQVxgH5Vg86Yw;YX%? z=9SOUd>Sr+;A&w0brvy;mJ`;WAI9T6anp(AV+>uR?-LRJpfLDq2;jFj#5z#|P>9P@ z($y?YE>S_eG;jE~khyZ~I`br)1_8cD@>Of)={FKgKbDs5b`Y)Old&RmThv^yi%0_G z5<@HEWD`1u-c>(OwBAmAN&dh;qoy`~Mjz;ZZ;sFus|q7j`g!r*o`nonj@#5C*S}<1 zA<6-IXyD4^?k1q07{G9UilQpvN7i&!Y8n|x_oUp^ZT|C)>`?q9Wn+STjrqiEI|MP_ z=>*cdS${E3&Boyq>C!1{KynT~*TpqvxNfjz07Jm6i=NVrKOq7Ud2u{Q@^s+OH>#>3 z3`|cQ|JboSiR*dHC}ynhyEpCLhC(L0)RU5;&s3Q7mQ(roxWLUu+v`y$b<|sO(HE?5 z-z|)J2>No$^fabnDQUW!s-B9zn5!K)i5MqA#blyluilK!^|0dgNv##t6?ra6(4s}< z`pJtZOr-3FH1eh9DN=bI>R52JvZ_j*=Oi{7&Wb`BT_=rqULLtJ$@P7(_(+|DS|YL> zPzV{>{H*|DB_K_tYft3w)VMK{RuOb(wp(#B_C~UmWf%sE1ZXifTuSyah=(+pZcT?7 z1ia?ivsnIv{Yr0rHwslEjr!!?kdsqMH~h^MjH~pu^?7BnP?%cU>g3DBfi@m zi88y__~E9^A(D7UO2l`oXihcc$-;ez0{-2FpvP7!df>&wsB!JIGAmZB9S4V)(|$M~ zmfyZ8LD(1KZXeDl3J!WijgKy@Nbqmji0XIN+`8bL6fAmEQ+d5BDBah=ZlKY#QcSY{2F`$4Z&KPnOJ9xErou-g%)RCz(sWhhdNzmCB- zay?l0BN*Y#CMmL#)7k4w&bf+jeiCNq%i>KwjxRjwRWY)0zr?h5heS7+>1#}OPphp} zKiMnT>GiagSpOc62s5O=n85%&)o$lD>kN3<_yc_i!>-Q;?!@(!1OR z833!{d`Y_wtNF{ykM>I&qj=BG^vi}x&7@lESYC@Sz{^WvIgWNXP|>OH^Od3r-tjWB zN}rXzvm*bE4^f`NNh3ZC@&{W7&S~Pna1^MpE{KMs@81mc`mqynvq zd4eE&p`DqJ$chL&$0Ld<2gtl7X*yh5*xu>1(8&-~^YJ3Bu%1qDurvi{SVrVBl;Z0V z=0YPl`PJf!A!WM*uQW2K5w67dp4$v-}7ybT%HxmlZ{#CSZ}-!4!je8c}r1 z;B3jHG-`>(e88SLF`rO>L}`H+R@ZBWhd0k!vmdDf+Xa=vJ7y zzOb0YXLt|@_J99ys7_y?K@0EzO0+GjY)7eMkKy@!;n2o#a?B7xhEvvRr|?vcsb1o6GluI7W53ghhC z7sNohb%!nKj%d1QBZCC7$(?sQ$aV1=QtN~My%?YYH790k>i7$4bNDl<^5+Ya?r|H9 z7s&Wi>S0GUc{}HFzo?AUgLy;rTSO(InZ38X=S~h)<1KYR++|(WEbtQWmD6P29mnNN zj=3}o-jdwU+!|jkXSq<$a;=PrC2XZZby=jFm{haTRE#X=QwszaOrL&rLpl*0;>k=u znKzgK{#$W$B<&RPZAnfH4-!yEv2)9ACo)rL@9eJ2)*-0g+H7=6fI&OxK4JJNAGRWB!Tyw{{0J zD4}9EyslmR5t?C(VeA9^D9ZOmfolcjKR`d<*%{;G9PTW=}o=r#tuI&bI zBL*H_4_y$g4246>##Z2}UbLcaQjwdn-K_^;C8|6qHf&*mq&h%%(Emrc3 z-uYE(V$2+8w%~4TA=wqzQ0(e?#KfR>Nl(?14`tbo6q8kXsVMVIM@i3@r&nFQteOxm zM)t0%LHbW0a|%{`fzpZDd>b9m#ItX09KdWEc3t6taL-!YWb|-62$9 zUJte&>X563#DWgwrh36Pdeudl%lAIJ)lf>>Z{Ug5C4rLA)?&b&N~P`GFw=vo8vzIk z>HLiJP4{vUFb10U6vDax5`W|EHfx# z6E$e$uNJZ`T!ovYyh_X-O}5Xc&@Yd%8#yC5=Msfj%R8X=x{Q@776HwW$F!$yUK=hYWWXA;v~*MaC6PALb(#JVHEgeFbQ${;R?Tl_xIaVfO5_kfZlM zC%#wDlo3f~B`)-5oGN{(saO2cOa>p6HXOVk_e;^2&QTx{av730j@c#(Scir=m=v1P zQoG--cQ=_Kas&1#%r|0gS&)OQKD(=vwqZ@aW0F9hhP|*piUrRlV97+_%e^(Y3O_0y zP9sVQ<|_GzK;S4M@>g;^$T?Uxai6nLC|q}6K}k`-TH_We)~-ItUb8u~$-SC9HbUo@ z*CL@We#=XOv$P>8lik#6+Z3MPTpKY{ebJUFij9`iKn;>6q0Cxymz8`^=mpjsS`im~ z^lxC-pE&I&`+pVl%EZ;pZ+{zo!11%W??RskML&R(V>4Nq-dibg^BcMg>VRf!!LoUm$US@Y`)nqvbvOT!1C1LRYQ=9%XR~T;Biy{4D zH8g#tbz%Ph1}k?rYdcUCK7bHBqj?-3fcwAFv_n=62f82xu!37P6B7aE!T(#v>_=O9 zK(E9AF7T*kHWGj!IP8B)o=hylE69@+zzBeKZZ0APl>Kips)*-bkQOr*Y8#)1N9 z0Te)a$9*oeFBrT!0CJ;=^YoFT9=5HRI#!ejV!yVBLIkWIb{VaGu!4dP8K3Olc zE&zV1zd7rKP|{!_+L}cF#>uflav->@EY zbHVB<8YO2m6XHAvxK@F!+JkG&_LoEWSUjFr7c*>Welbi0il1Ih^0kI?)n{zbLV@hB zv4%AjGCxl;Nfg{tx>CkGdBq_VjHpdAd*G;^E+?qtoJ@Ird@;91WkxtKUpzQR4)%NB z(=cy)VD-w=a65?N7q=%jM@=ss(vs~&f>N$bv79{ zdZ0-pi#DSYa6R9ak0@zxu)i+! zsMxgUNz-RC*dZZP(jV#R0F+2J=-d*A7tVK3=&O<+Io2J)V^abm>U~vaCxk`fUgnclo%`vbtz|3&8 zNo^fxEyF&@Vuk(pZ&%!^wG+D3tDOgA2l(%6*oG!X`3XEMvZPkYg$G7@USlJPj%Er9 zfjpL@VXtseuj0R3XrXDOsDV?a!c<~rrG;G#JZvp|U_P5|(-IBWfQ|9|Ou5Q38Tm%1 z(q8cQX@}xr@y}6UYgcIbdmUvydkC3SxQI{c=|}cO|pxu5&4>1X<7_ChKvH^m81EH4WMx^AAiFH48+KHPx!n!?=x)>RxEHU;mJ(91y}HbHpbWn z2H6Oy8uiQpAkFj0;S3#f>d%8|Np6ByIb)`28SC?RCcmi0N1|~!lZ>PB@12wkrnN-v zyHTiVfl!c3_G+*l_(htdp4xiP?lMKN^~7OXlC_dofY=CPzaU~$RAS687@oVZ{(v>Ey&qYDhmidfbt^Kv#EJw7TqNaOKFs72?v6D|NysL=rUz62(bX5ay(%O}#UjKdr9G+MtV@Ie% zpC9mr5$9jU|k0Iwh?3FqD%`GDq6hRvBdq2#RClvrUpt4RGG( z(~Uqa*pq{1=B`srQE8Km(e&w*%^9kjDbO<$fQrhX0mj#vwI{&-_dx4>Hb-DP3ekl&L4GgU!i* z$}mt8cdah==q+IlM zJxo54WjF3}S63D16h`DNHTG-@sNOP%xO_$DtjJ$7_U z!O(O#hz zF^$+Fs0s4RX*%AxR~6uX#-OdL{;(8TclRcGQB~JvM>E73e%>=}-CaARI};VcV6Yl1 zrsrub?0($dgSBAgqOU5brKa{DD(I;HQDx6_m?=4mZ7(0Z6gai{7k4Ce4;CLd8#E9k z|3`3H%zWe5uz=Sy=tsB0t!0(9YwW_m>XDJ3P0_BvKdFT3dmQM$;Pc;pawl;^@fS(H z)pH-k+H>9e-OeZHy)TwaLXh7*JdO|AyfF9JPBJrN9%#^LEgGxk)F1>#hBh_KU?M%{g^=F>)oE_L0pQV)0}UURQ2 zNW1P7B`#kuA||-wVjF7ZTX)4B5%nA0(9wWwJS(pKF@H2X>Dn*aE?2nl z3_oH1&nfsn*9??Xqb_j1_G01J5%@pX3_$xF08HSS>l_ct=VrIb8naT`AH`n?o*=G+ zg~@4LBnKKNVjLl!rrBes0+JELG_KFri_;zHa~9fp2*rl>RsD;-W|su%*vDC}P z{AU_JfLbX@=8=RiB{uzFwIy^6F|lAs!*-%u!cf{D^e4or)M&to)+5}@w1;~z1*RpyPS=gm5Omnte7J-Y!K4r7K z5S4Y#7{d{-!(GL9lD!SW$^z_nyJ>ON+L6HAaHA1d_8?Y?ZermWqaiy4=b!g5OzuTy zDo)OVF~L!jO6Zn5<2o571AZebdNB;}An-(7l>b`->maOj||c@d?e zqW1`8e*;n?@$04&yi}~TU(V3i!xBau}ZwDGPtNK3&cYzP8_aes*>8 zcXxQ-+)fO>pw#TR&_*tNgf@ayu^2FIjr!VAgryq{ZRK5>iA3E1Gc)k~IQoSISSa0VVwiNls9~Xrf0zKOim? z1!Jrvp(3^f2N(tEJ6I<3*0>G=a(auLZXke?*7oS{QR5 zLg@3c;696@nEY6_if`gU?`4<9Ux`iqm?yo~KWMZI-dvR600o=4T@gMwMKjdnN@=BC zob!H-pRm+EwR-rjMy!>gv>{*?`6FL@W1vf{uZ(*LiGhaJZKn`EniIZW%)dE~=?IA; zo2-rz+K9dFOk=pGF22Q^1Do_%_{S@2*9WT|bln{@=20hXEy^iZ31uFChJsEf5ee4d zPybc&C1-UxxVu$PZhe%4GG(|8O!rdA*5n<6xsPQZ2*YAuwfDgFtvmKNr*Qdm`>yDb zkH7D6J`4IGt*~PG9siUGTV)=3a-$n>Uu0G`3WIomYh0q!(<8t6ek`pMrpVz<*Vgotji5P?-pT z8;~U3ye9(C{GW{CU3U5#Bq|1A2bXMi7Xx6z|93H5w5>WQLGf#G-f{DoA|MFzzcR{^ z&uueEQ}s(wUIj&|0&v08K}D)xLh>zE%BuhJK11j9K~Q{oV+eQRUbYB^3n>=a$bG0X zFcG&5&b34%2KpRtr~kp8o+|pDWVleBCvtILXhW_;p4m}I53@zoJRj%d9wv<|)diXY zjsiQRq)chQ;xi{ZcYijVzm|sOAAP8KB^!MsUTrnbA72DJbn$X-KY^U&f55US_*~6K ztsMl+tEsQWh+^h-+DR0ppZ&jTY2m*(w~37#7~M4QL{P~@y_w?|cory`e-y~H^82Hj z95-j0Mx&VEN;T_cPOQG71ZiBcosCtW;`gMKGYdFAtmqN;z57oR=_R}MG-s(ZohzO|1Qo#dI%%A|5Q8e;o6$Wfwj9wA-C=Zd`$)?eXz@$JXcp^uvY}R^y znrJFr`dUCN`*R{4k8Fu^5~iw3Ltc*8EZf7E8K=aM1|MV$AeJ95pb5p(RyjK6Rl&|; z4EdAIc&IpJd18Vj9LnjxP}PQm@S!Fj^g=2sAw^U^H1;BO#94T!r`C2i)Dmdy+2wZl z?>w!)%G8k0_SbAQ5U%K#lN$S07h;<9e9e4i$?Y{Cdf=GN>vu9<61KUvw&n_s2mLFF zG|gmAcZ;;?jqu}mqF?gTr$isxEiaFVM4rW&cw2g8uCvzNGNdhj%ubyxVz07?`9FMT ztA{%CbCSxaY^Op=b|}aJ(L8blkR-_cdbiMjEtDEsVgkP-0GaCx6x%pu!-WJ7MNt_G zSLL$O=mLH%5{aM{(15A}3+7d|IetX$9fF@{LU4olIxB4@((`n+Wr=QlTQXl)2Zh2j z4m%#H+dvz3Gfv24?jgTQxvZA>l=(7d|1vHto~u25I#%Pe48cziaFoN-2fmf|i2umd z%pUz?2?*dq0Y-IvBbcpk}PgWHMU?QNKmTYwxF)ib{{J?$v%yKe9J2}0-oeZ-+BUtm4$M*k(J z7rJnO)=uYz?%yyut><`$h^+TzYrVRg#8EfCy&A-KD{1ShydLU1RzL-4!g|K9JvdGGC_ zYO1I+r;qpSO!spP0N#*;%^3y&XtX~?Yk#bY98}@}@PPDcCUpeJ!TqUOSVu=4AXj$) zJ)xBLRb~>EZ=BfAaB@yM?Vn+p9q@s*+YF`AvCT)IPImwg@clO3oqus)h2-J%k|{k! z?ksdE=fIKX#c(c}LuKVl+*A_kew+k3%RsZ>26@U3J*jvKv-BJ(x!}szy`dU1ed&c% zi;5*~=<{=Qi_709a?S%hzI6^^q**AG}%tinanoeN4O2HOfPVm|gIuA8euAd*XdyGk{6wppmeO932S<_a|f&IrPg}Q8P-MWmR zUA-Fxg0dYms|&N!4CU(wyx_$6G%Qvs>`+(tvg&(6Rk>Y!ZSvvupr1iu8`QQ1_dyo< z4N~hzRx-Pe$XExF7$*KWlhNY$HT1YK7NY5OQqj_?onP6PzjI79Z*Fk3erGH9l*K43 z`AD)D5dc(13acz2aJw~ePQaceO+@-YR{%}CJcHJ1MI_}%v+IEY^$tb(tVWTdI|5Q# zZWx~rQc29qr;y5xMr_2g31SQDt#CW{aCBM76g3)mgA_J*o)u(WkDH?-4ntxhBFklA z!PQ%=nQhro6`zsS{9NsCflKg!%pP1FRUrS z>FV~8LnjNfC^xEg5bQ-!yTM{I5=9W`kfl-+p8DQq!N2-l#0sGXyD1{2pb}k4`GxEa zwKfAk0LGJ*23cXFsNX{i@SGTCrXfw3a7_oIOoeqU`Kg}Ur6@uNw=J1xGRBEX&~ zg+6dt!kWGq)*sJj`L0X})N%t>&205|H>!$Bh`l8u#uWJb80Xi*3;e5o#4dtZQ>{3r3jwnCL)P$9C8o@VkRdw3D=+SJbLJG`w2`} zU;{z4hj1bJoxg9GieH{FM2Hg1wk#!Z^>WTtnPx(6NL7Q!u7pYGNo}S|X@mgqIw_no zPAZqX+uP(*-ohu1L-1P0Pq>>l)v3VMI-2+SOOaOlNf(ZZGmAr0yCF(HwKTag5XxsLiHfr(}Ch8Ce-Qs4%Eb*Z|17 zj6$1V6FxTUhB2U(3_!RoQd(L9@##~n@>F`lJlNy7Kd}pc(>eQ?!cQ#lG=;$9i9Gbd z(&`%S<`hQ@%CHKOX#BFt47_Ve+iSqS;Kb%2V5tyc8NOV;S~>2v90cC3#Vf?>c`5HK zewmK+<_ddvdfC#8VdxVlaeX*6=(NkV=BKX4YIsMmAeTob{F8FnRIRuL(DRu2>u(rO z)uqj*XO#z28=D{hv4J4BY!V)@xM=N>y;s?Jjo35jfJA2$P-LB{H{fl{u+)w8C z>aZ$vMKdNVh5E@o7OCxi?OYyLfMo6w;xZ4Mj?wuYKHFtK}=RqkMbgyPg7h zEJ|(rxnryVL?raxW@(0~N0%f$nXP1?=){_rp}eD$t1|QRaZkcPr}XdL8A{O>Rsl=k zS4$<)5o6CJ53_a3{0)@VTPE8sX2BJ`tZYZisnr#0xJBiGZkLyIS70GiX7gzd-&b0< zv^9-8-3_}P&uw4mh!+QCd14gUcGPE7{Sa zK^ahQB4%qz3Hd?VKma8e9m*ek0Uj{&{%R!`k5mI@XoemX_7?EJlM(X(_oRobE-tnf z`4CpHyQq@k(B!D6BE_2G+?<;LVb_9pv1p||G7~ z*Sh>3iQUy!dO$2B^ilDl4oe8ZQWl0Lr=6`<_uK{=p0N=wea?IDf(!-Cm9-@0+lLrC zrynQ77PkF^Aaj2JF%71$3nNtH`1)_kIX#^`<*s4=IB=1rC<`TA+pHp}91nx-I z)OFnHpW3}VXsfgQG#8ePKM8%Whr2}ds<-d5R{X&X(`)PpVhI3$6dwaA1^_5Y%*+B- zdLtU6&NqsRo{9hWh2raHb@`EYKTuKt__vsN^GE=o1?tbIYtToHA6=lxU;r`jG?rlC z`qOE3>O?sEJchDSp=}le_plK+E2*j!q)$pNs^wvRI6f4+T zF&j4g0IVXJtlA>``*^>*kbcnJz4q)g!lfL;MQ|Yh1c4Wq9}g;m3F9EbcG`ukEr6hY zcXv_XI~O^q@1_2vt1o!7Svnudba|qv$jGp#^|rA+Jhk8>$+K0*W{o}(@Ii}alS<~4 zIpJ+*L(-Y0^bWHqVyKobVG$QMa%r>M_x0J77*BzVO+OTlrEQjHfp4LCpHV|45Co%8 zO_+>mwUh1YQWb}i8Pi%@KOg>%U$mE(?3g{1t_sQj;ltou?88TNP8wSeu)u)*nbYU@ zd#ne*w*K}l;muJjDw*Z?MIcG(qISieZv#BJux6@?2Ze~K+!aY283)Sja%AeS=Zpuu zQH%+~-GNy|9}Ivs=siqoSU&Bg7apIR=iA#fTxc}^G$kKqmw*t|6GTI#EtOcTG>ni@ zg-BEQ$6}N%lPozruN2RGWvqLmdrZ4Dk}X?^h9tATx1A>0?FDI|TOj3p?-DeTXE>)R zFH^!cD~C*f7`4`rs#}o{1qBLXfy>ksoytd0X4n%ADg@j(t90+!p~Nx;l#D49Go{vd zv%P*a3W69hK%E&qBGV^4JWnwqF09~CR99471^&4cqLYkKjGCnrB%NXfI_mo3g?P3% z4=e~!7o-&n1@bg$pMb}T(NQ@3@wF}_7c@eWp7dylSY8`VG6lM0G7s(E^NwZ zKYZq?_(?8D>NvB3rwj5!!1(%^vsZ@4Y)pa=F4w7oM>Fx$9&pJf?xBNkM5v9X7?Z>) zW4?kyWM2M5ERDs-cg-y~yN{9SsH^u|kN0ah8r5T`KKw7c-=5N|*See>{B9fX2&z|J z_9}q}ch`@RKX8awf3|y@ot_v_CJyKj(+k{hZX~DszY8)!b3Z*)-2HKSw9@|d_PFwn zpm|4M^9>Zq**fre$=kgvUI)_s`Mad|+SB24bQg^=u;pvZL+k+c>1X)J*y=zm)aPf~ zysr;h0SMre6N<8GNeB0tp&C`aqVp(8c0+N71l`Hbrp5CB<>+stFaz-x?-g~78h*w#arnXCKKVD z6a9iAJsRrUEBUmc4FJDCH{veF$3bNJ0T&d-nY$C<2iH>G)B}T)HbipW%kj%>{gV%G z-*wEiWo0Q9)p)}4ByE-jGb&2_K-rK3oE`K{uL{~lC0CkZ0AjJ>Kj%23C%wZDt?hCANn$i zgk?weh6S3ZV#8GxeFx8ho^*nKXspJxwU<=;&HJ1lX4i}33S+dX@8#m^(3wQAcK_{mpj8ezMD(*d?>eT|Qx<{bAy9#m4sZvNN-=HOS%v%V(lmK~aj{X}i)YxmZ#ajuR?g%7}g1<-45{2wu87 z-ad^GbTLKanQ3JJ_RpoO>t$t-UAMv?09aen;?~%DX}1_5J+x{P9CBYqMn+AeE1~VfaCJ&r!3CH0_R-kQtxC4J z)c?Yf+wPOuvo-OO5_{{iP(E<(mFz4{_p%|H&t=^ z?hB7=Cq=Q_Poy%kWw{CvP@Q2OXQY&dFid)ysH|D@!a0Y>s0=9}klsw`5Jl>SjCoX4 zBb@Lz+9q8=xC8Wf+mn8Ux$!L1Qj;k;!6wjy{;S#N0<(i6gZajzyYUlFp2lnUdF&XI zCf1wj%J$jPkh3y%%YBt+dYT7#5bu|6lW0tf{im37d*^xAC?C>B;MF9QM`R25_`;3V z9S~C8fuRbPg!Q*>cu6%JyhJmSw76Rs`9kmjE`V-y4mgV*^K=R)2B00{qMwFvNxO{y zrm8U5D;VGewYhegTSbseTwQeJpCE!4pyugnUSev%pVoF@ulWU^waI73(M(EL$>G$x zP5cQlzSG89@myPpMPSbG7gE(?vw!86H|1;2Wy=js63r+!bf&`-1kjI6e?J^Ib62*5 zyb=Lyd;`o<tk{vzqvf390}nb#1PDT!gXod~R0!28=VDLim-DC~tt3DJaPoBTZE1V7_D18= zU0?MjBRb5N7r1!4c~hch3U?@3an+9n#KD5|6~b(ViL7|UocJ+nIGyU z5#v2BAgi*ix!#F5V4M432QP3lekU!2b#=x*+s8t3A?zwKgz6RJiy00l6y@b;GO-*q zu@}cFIWx59q4*vgmRmTn|J6sh9~x`Fe~oIyJ9-Xg*W=?`-GgHc%+t}ih6dE z-TE%{iU4i_5fNNE#`aoPEd6CKInI`XJac z-4uj9(8w1<__*+fuz^I?5T6nNZX%$U+GPrfDPzPFtgO?v(;dBacN;IeHwK0FW0E0m zk`jMM90DCVkm0?MdFz64h0759WL!fz4b5qM>DeAs(_MlM1&oqgrUZaT4)&wU)wA*x zS=28CEF&klTUsD&A*@YihMClI{F~~1zS%Bel>p8353{GMcMWLG?)L($Nb!b>nU?}S z{c(d-7EW|EbJ5Ga;T-nuM3*VZb>3!-aSPB0f%v@4gD#jc@qJ#7fZfsk5`JiOD-x1*xpCUPW1%Bk4~fr)JvioRUPD9S`8QLabDjd^}i zIFu8kz1fwsa}PlE4Th^ErWm7@0^8-}+opVstvN+>fzMLfyrG0`WbLMLT$R$9d=)K$ z?+*v72N>-=15tBZ-{NJd$rExglcl6mH`)=GAT{?60A0MskllwCBn`2C&*>;!B&r?B zvg~(v3iS@<7}m!6j(v%0MHtEf9soeX5c1^>PE#^jk|2UM5}U<6vkLs43D zzOT-Oq36}KvV*QeW3%{TD%)puA{Q$qvCAzaKmvLcic>|oE2O``D?Rve)nVz)8HyZa zr0Dw5^=o?@yVw1dKOZG7ANDpEPfRBnYdmI~9GVxS`clRuZUUbm&oe_VZT1Xpv~g|! zPYphEtsV>&bA-`wU1sOIr$!(Q)VE(GMyy%2!Zi>#`EV28^KF{qg{AD-XmGd*GK(8% zAa(3kr~7G!rJ(qjkvUjlVwCUj(fWABO{SV?@$sBANZYN z7G;NKq03FevjJ?HW;Yc%nuJVU07-{xL}#;u}#6`G9P zQqK?8C2^^yp1BqN$~0KQVx5zl4RR2nMYLLbx-(WId>o5Bvhhg}RiPzchJPwjP6l+M zm-{AyTmF4w^n2LF_hSaw4{s%pk@~oe6!M4_kg)$~ax#ez#G9B0>Wn4v$913*?)iZ( zJS7;#CSE8$NUO?Sc@_a|-YD;VA_YOD28OemZ?M8U*TR}_2NY2fzy%j@?|O9CK?7Ad zRI|$xy8X=&5OO5^Cj-Mea1x>oSZT;}bZU)RvhA=9GIbP;6%qTBuCmZM(gX5uEpODz zZ*ZOnU#tfTG;@i7vRM?gebZ`Ev?&is%#<6L4VFB=bVyYs>Iu;cgUA5;S+k8O4p3*F z0reK|@;WA0sz-N{c6bAWG~VOqtN-xVNj*;*W;aRu!qojX3daoP;4G?wgEW9gVN}gp z6iq)azY`|KsqZ8BCHxst#FErIR^2vtI?p>f|Hx0Do25&D6? z&gCKK5&jwtaY#0!;iJl3ptKzc#bF{Idc)McUSgy6R_4$tQlN=Pe5yIBQd5psjjs=r z3q)$RL9eIFnb4=qC(OJ9MJ%XNQ>cYOL(I?gvk#Kc7*eFo?_tGa;h?ilIWUR`y~x#a zWa*!_%C^C;m+9+7cFpL;1*&dl%G6NU1${a`@SO_^_>jc5V}?@Uc7%BVxZI%O^^fNv z=+mY%hKW5tz$bx1v5^YZlmX%u^Ho7nBT3saGS)a*!Lj+_plx zc_GyZ;t-EC*?zGEA-5umEbPT*S91jIW)uZX7DY_A0lA;UFman?l@1tOi@v&GLN)u> z_A}1O7)?bPJL zH({D)0fg}s+s+(O7BAurkLyQ5Y?6kTAPfl84cD#fpNXBTrWMq`r=eC4|7?YPT&NI+ zDL9fMCpnim9K;rugqr$>>yg`P!dFGj6S6R{Oa`lxm$@u-NmBQGH(+N$g(XMhxNCm# zlf(pZj@*1yK|DW!6~w5MsublhC&+3ooqxTZ=klc5()xB0c{r+(ym+xx?>*;W>>sgifdsyHshD?S)2>K_NOQHsP09>E%%v_z} zE%$(MbD5@4c{$`lch8!VsQg#v;o2_Uk|5wkS@3vC79IM5cxELz?Unla`-t{7V`Dml zN{enk^dJ3MEu8^6o)5+=6F|Nh-!TWP9yL}}?wG;IFU+hc)RcS-xnc)sqa5W)gSrO- zU(KOmgn3Jf5T>>buLOYEz8={?|J!{wVjuoa(o@OizG4gVNg^rRS%e!?5ThhD!!r<9 zpYB*TiiZ*v+ezv>X%_4{?y4)6+F7#l`tEmDz`K1oT_jjB<|#NV-x4m;j101Ou%V&R z7nT)eXAZyZ_@{m_o2(e#$SiZhh4If}7sk)!qi@UlpibxKX*o?U2cTB0EIWPQR{J^3 zp+uM-Gs~l$JYalQ!oz1*cC7he^kWF9#1OG$qhz^lh}oyDjp;s>XE^es*p%PJ-k=%X zt}w$R#=&Hxj_ipGsLFW_sS^@Lu`IT+nCGt9l0!O(jF(d- zRBQV3$NcZRYj-rwYQK8B4CW^1nTVjiP@}zSOt}D4YuYmUB7dBOiPTRS-_D zIoGJY-vRaW4CCiH&-l&yd`WbJTQSHw9;-4VtgB+OGG9@zv7`@LDnA|x`3U^JX>u0j z+Ob<g&)MrpPC#muC?nZ^MFX`LurLGXFI_r0rsvo6AHu`B3>FRZvsEV`i zKhdX7D0(^h`IBElAaXov-G(OXuY@Z3!gGKyLTBvMTPf<-Lwu>mcX;pJ4v9LBz1!4< zxt6Ne?xb}2PDOF*`H}5~&XRikn|ku3yy#PQnA0Hg^QiHpNOoe7x2Sd_?qUc5+g4WG zi9}!~sdf;imd2?`X5S1TKv9sW z<1XE2t;W3x3=$NAdMptm5-hV(^9eSkM2srm)0V+G64_)#{if1mRzuKak5^HG zu2rKs{I~ch93L@6 z;V&>qg#3k4wze&#ru{~kwsp(O${oB(O;F+O^%OF7GIc&)d$`}GEMTvxE0a;>5C2l^ zCmRmxLUg+FOGruM0qWowdokaooRPEN?mg2;sdGK#BARB5DphPLndfQBoS*fCAei3a{uFd31 z9JYR(V*1cnYjP+eezi8Cs!0FcNvVW_hy+0qOVGQx^awvB4 z`*Rv!0?Rd&E`6Nuv*HfL`SN7pdaEfUeuP-b1>1#e{8;vI&XCo)jGgHTT2YT@g4u8| z@1vwN{iAMow!Z&BASq6yKwR($MUUZUe-*(?jm zVJdK2bhKd=p@Gu6zv(8VyCdbWXR;+blC~LBa!_Ufk?BD;sa2;uRl+LvFs69IRl+R7We%!I~5V{QhnGUQMb^nN&#$31&CiK7b(RA_~8}vtEDP ztO=Vy-7?{Q1CM&t+?S}*ujtRPYRSVxOmnSb(OZs5(0)K@ZG}3eft;7+ir`8p6h6q9 z?dp7yjE8CMyko+vb0z&@(L3+G4Uyo1gx~8aef{!N^ppcc{rTzD;X|=Ag^C^tbEsHy zdNGzWp)|6H*>e#swuAGv0MwXCvNVIxF82hA1iy~p!d8(`9#Xa`b>+{a@g6m3NP>Zu zqM||vA^||wZ_=c@DnV&LboV&=y2c|+s*iip=iwg9%-CV8Fbm#aN?I&ak8R4b;WPCk z!M$#RoNEm45Ui9x$&u$Y=Rn;0j>}WOD-LS(`BdRHDQ%zj71xC3&A{i54|(0OJ^WDN zt9K{)p@F@6AaPf_YJ|&Ag1?XGWl6X(4;46>M#7eXegQaYEU~6NDS#m}VGPPN>WL46 zY8cIMH^WT+dW-xJe7BddE2tj?^~y-rB9gO#R00Vw1xWTkjEh?aKX(gEZ6QO|`;n40 zsst;4K7>YjH(2JgUp!-(RdZ*BPpd=@Q39|sy|5*`!<(%7&fOZW7(6jlQ&t-zBpl&P zP^4lCbZbOOsp;Zgq$cyv@Xs1|HgWz4lZ;Fk$~-&<9WSHm4`qsgWHiY7)TzIv8z7}4~%xASvPC}75E zREBHX_qnqwj#;9NHO6L6d%CKsuw$&|1NGL4`6N{6Z zX&(@{F9eA}MKX9yv=a1Tet0L8#F&QDmE$3$3ke;A-%hr6hI9J6TSLIS2xDpD!N%Eg zEYw0Enl6jXOi|Qr-568P&eYcn?{0vkb1L-B(DY@~hifjHyyVE0sgg>}H)=!CT{7g{ zKupCf2lGTI#iX;B@0e5RDh}YsXr8>8hj+Hwi1XwuHLlDlEot=M*T1Q0N4G2!2u&kl zS3~bwjl)yCPsoF=UnLamqFld4d%uvT!#m526~YZoiX2p5wp=AMLR$STTh)T7HFHuB zce2@?;jMNr{75zV62Ko(7d37?b9mDP8;Ej3GU^_Jjd&%;RZy@4q3khX9ZOaOyW$0I zq;S7*WLTd=99h_lcSn88!RpjqInz{9Q_Ih&XbU=sPD^#1oI`Naws^o}=@ZR}WPrAi zTiWR`M|T#fTk#@us#RxM!-g|SSfc*n3Kyl=Vv=mto_{pZ*!U}xwYJ(bJztqW2>6?I zX*kgpXUI1!@@LFH%BtNS^q86)rIOo>i~8jxvK?wy8__%~z9 z3%T3yzjPr>rhJIqev1j|BU`m3t5S_WYrrg|y_MQ&a`r30Us$KEIQe7RK1_z#wh&w| zIW(b@MG1%yyhIHxU<5GX=YugDN{oC! z4!6QWvfy+^J&9tm2y-Rrj} z;ww*8Hqe$=Mh`;MwXu!8#|f14R2b{G3x(}XDy)j=;nT;?q5PNf(AL?uRVly{puA{- z!(od{vK)Ty`?>w-pf)%K+=_a-;(RznnWwnB_u*F`gH$o0i)fE>Xh*-43xser&vR!h z?2R8OvVZBB$(4}9(s5ebsITILC!`L~XNVj%(T=(4-eeI3IPGr!`XzPL-yqK`8j2v~ zN&Lvyq4CSKKa8#`&ZEGl5AzCGvm?Oel^=b_sFBzBRm*fZf?pesSoV3BZcFCYxBIu| zUSOw^B^2RLP1dFW0r|77F7j`WFJ;JEUKwN7DWA>wL&rZ7nOdXh!&27-PF%#vinQI8 z;ks1jRr#PH2H3nQs2ws(C95sie7rS%{w9r==$>(~+ljIrZY84SJL z8sG5nqrWk@H80aB>0?=Un4+teF5iPakZ7Pm=Do5_I$aXu)OI7?e*4R?BJYS@={rkI zxo-{n9pQ&Izn2!~D&Yk1ua5h%P>X=`W;zaYd?nFsWFec9*0^duxIP}AFWu4-OpXe) zO43`>fiWoe@0_M>nOc3jfyc$J9kyRJrv*I^YSF!op>nb`OMhd6Pkj1_9IIN3s@EQF z7_tlXU{}B%DbX5_Lq)~pc&gK%_KuOFh?+P|PU9dI(4_j4Nr>+bavSRKf9rwF^T^9` zt~4nBJ??BX1s8z^IZv zG;@qJ%TT$=RKI9f2(XRi$njZBvao%s%~uWK`euoYMH~Q`rr-C1CK+c40U&FQpiOCz zThyN?CtC89eLQdG@xT7c6<<(fVPA7RW#ygR=`Dd~@3p(RfC9{HGKttIBrnS`#iMUJ zI?2-qW1cNFDyNr@ksh z($oGm%fmJSYig!szSpj9LDzKbyTm;}J+$1EI1T&qKGZ&ph2eP9|3%{Dsfykdwg>RO zJhBiPG@L`W%?AAZ!$G%IR|Nr@kiG7D?H5}}_f2%@^?Y~q&C zlyq(xD&gfd=AO`4%w`c=En+g$Vo9p%8ite2IkGSKiS_MujUq3H!^Ry(nm8Ln21P^hO;KNTjT4!5tobOn zreQG1>DYmJ3Fu#2of38#rVLTEJO#dveQ;RoEVavPt>~t}ti!5ddAuLe)Ok8gAI)|= zFu&Fl5vzV|qa0IO3s$?Pz{Y;u?yD539D;cpuVYIIvmS3Wej;GTJh+JrMYL6J!28BN zF`n{#&?+qZpc}7>gL$1jE+}?kB(%jBb_c#rRDB(2^46e?t!X;&XIYcyZJ=P@U=D-+ zsoU1)F6`+dZriViM-P3_ndyuz4y^}$rx}(pM8)Rnku&k~F_xK~gFNS~j)JP5+9ViA zwQmY^%3=mLcR&Um_xrILQqXHm`aVybOny(HP%De6~^P7vsvadi2{u?Rx%XVJB>L+tB26N~VLPeRe?@ z!UXE>N;S|EdV#lWlnR~>3T5OtB0j^kUT!|rX&li&pv%(BYZdFWU8W{ zyFbrZ>+tPaUlI-@O;BCbLDRzSFboAV?XC@dD@RczvC{|3VCe#g1ATLb;Li9m$M$5HB!rwdr*aY^*M# zg_C1r))OgKoh2ywI(){UdDWnASgh$Mx~@>XyAVeB)>hxs z02(hsi=Eqv8nO;uB!Gv|3t>6K1HFU%h?nlD3hT^Gd0-rmQ)Y=O+-D4i7b#-~ThRft4sDP;3sK%SE&7SSboOxyCfR^aw?&_(9v(goWhW6@5mO zV}}I8>e*L5t%X(nEp`y3Atq#AA$xIw$6b0C@a_~G>-RwY=Ob#SuE#rvmj?|d;N_^s z%hh~jb(ie|Tzr0=(2~q7$IuB%MPWevajCD39V10N3}W^3fkw68^FSo9x>KyK>$iqE zblcivU+fpE1fq3rI?ot}=GN1?3=gZKi*r{Q9_fh}gris_+H! z$Ij3Yz^S>8eY7Bx@U89xCcFSz66wf0!m8jHpG4B) zMYL!y&DiR<7n1j|DJS*=z52n+F>SSzfS6eN8I*6<^^NkI#UE_o6;ZM{@M^Xgk+9#? ztNtFwKbmB1SDnvyh2ns&DXSHrMFhnq4kbVnTrZjNrWA|Hs{T`%%;eRUciL zrytThRrL;wnP`Pj8&W^c@%8h;pZ8}4cHf*iJ(PA5soOx?ym!rcw;zCml#|WVr`(O{m*wWd}u5P2zYpi*Da%4H-n6%W)Jk{pePdD_Fw;P#m;O!KQ*BbbK&dC943SIjwPIek^J7&hY@ zf@-QaItEWED$0c}hC#@GnudbKUnw@pk4M7<8#9xO{h3cWC_ZpPN*oTMRJcK{pAtl% zI(8_|TRmtJs|8eXG7yY|71fMQ{3ZXujC)uUr6ZHx^0jRXOU2XG3`b28y(w$lQ|r8YOSn}pcq9+QoF%v7C=Aa79WTfy7X_}b6rj>hiSR)Xd)gAGq=Yw~zo37#`ULUY=ccZvcQ-}i_#rg~x4wT@dEe==qU z4P#MB6*gDMWv63JC|V4fu-$rm4(Ns@rG^#e6~$S5LtZK+udPBRRTN1&OnW*Um32en z&69qLJMIH?=zCwEYHP5r`3AT*nyCB_KG28=np^>9Ny;?itbRnF+EqOKk*Hd@bo$9iHupI_lR? z6P$@@fl@ZB*aiyqpu3Z}A@Vvu34fs3Q9lef1KKx;=v}8fXk8ZiHtxEWP@NxG`m3iuTx84P-qCFp?%0`11^1XIiPQAwCVVKH( zVU-iLh5P1WL9O-&-df7o)RS%TY*IcW@B^J~vCc(u0pEO+Ly%^8n07>R9+?@^23=~{ zlsAOu1hWn$MeTs_#$ku>b-!~5tCDBUI^V-09L8*6a_5WzGx4)1xHvrc`94Hs$& zTAWx#*n0*}cNV(1rxC8J>%!sr90jHav27_v$#t7>lcMd>Z4xfKy6Ve~1007lkYQ`q zVRqY~zV+q}h3ZF5iDEZ03iH9A{y2{4vGT0B;$qCzj~$sx+qm|5ynZE;?8?98=SnE? z1vjjZT5B%IX@gpKlATE9y8IYCN4IJFeA>v$r(n;y!U=Bqdbm;q@I5v(JAL;x{g66i z<%osfgtmD+gr~OpX%3>VVDns#km%dbP9I-`EmH+BwrR8-_L31 z;)qnsU6&4vY#2>1r%KFKIw;xvi0+%qyACrbAo=vPe_wRmFrC4Rb`anz$$dJMzcnpj z)IPtM;TD{3;1DNv8M)vNn(B{DR&FPBXIP%jZdk01Zud*!MRPnjWIzecRd!X^y-w=GMD>5x<^M7$2q@(So%aC9|H!+4r^yIhO6dc<{TJic1)tztU@HMEyczhmcYocoBo4lXj`Y=7aht$PXE0J!2jc%A)BHnM z5Kt@y2~tvl!~z-g0gy>vCG{b`Ov{FZfPezizxIgwXA}g;$blmJz(-bIIqH8!1}!Ms<88`GX)FB1{MzQ9}@7jAV6L1l?od~(+|M-!;rU^ zYNi+g0-}oQf55E%p)LqGR|jeL18D!as=f=Zd;knG*@FZDLHrNNABNK)t$x5eQ0FVZ zSAVg4;A?4t1?>0_7|%b%1p%{WAhuorDe0?#G_cVQ&R_wJzykiQte!0-2u%|5EhwfJ zfc)o_G4s2|d63^X01g1!0krxJfDfwq20;0vCsS%Qjxg9}tYB6||IGA9tS84;Qu;q$ zFu$W57Xf$S#wGZ-cfFh;K~8ayc=Z1co1QcykPFxmHE{p-?u8e~aS%ZF$95l$oBcw- zQ^$k#1@r#zCf-Pi zybfkCM;EXK|F(_YXV6(cI1par?~2$+u?;*o6IjB(=bj0FrNRZt4gAN&>KJ}OiC`E1 zB>Q)s4Mc(b1^^U)7&7l>C;EV090^V~{Qs)*8Z%KTuT(go>OioVs{{WLQ^*F%^BY*D zb#QF|oxMWoAO*0yKqRkjdX;tC5lO-uY=N&}dH-h3ll@9cL;4yyhge6riC}Foz@Gfu zPRBWrAmt875|H;W0GafaqmPyFFdbOfHLzRB{}T3V$sbxG(6?a##vjZMbhe%g(E2a{ z2a2W=5)?NGN%+5f1jXUkO2A4qgXbmriw|bQA6f#C{>XnK89j+FjAp=*d3Mr$F|j0Omij!VV0pUjW-d8SH_-3oXkENNET_^2h%F zYDNEl@#5YD#SMW2;5F|4-L3l{vVwr{9njnmfbE5ccqY%G7HwyAE*3 zS%Dq-x2*_&gE~h6)PKDA+8iYjY*9|I^$GuB1ilsopaB4&u2H~S5YgCwg7~##3Kuvl zn7}FV3i9>OCccvjVNVJ3L3+i(RPVs)^S3eWNM5P1 zL0l664C2=udPVN71CzeiuD@m52U$%3NdD;d2gf&l0<7=|sAK{_@kgsy7+(wUU3p+z z{cYba(BTAt?2p4)!~0Fq|`FD0)W{#fVVxNiSzLwR|DyQVPk~ny0Rd3R)PE}KD~gXkSh^}z*&St?99)sZK{!@TnHzs$2S-Oz?I}zTdf#l`@#D6mDb(>2d*ca6Q zkJVuEL6LI+@;@&B-)%4d=G6uopZib3|LX=48&&o<=57&&(t+="_"),t+e}return e},viewToString:function(t){for(var e,o=t;o;)e=e?o.id+"."+e:o.id,o=o.parent;return e},copy:function(t,o,a){return e.copy(t,o,a),i.copy||(i.copy=!0,console.warn("Hilo.copy has been Deprecated! Use Hilo.util.copy instead.")),t},browser:t,event:function(){var t="ontouchstart"in o;return{POINTER_START:t?"touchstart":"mousedown",POINTER_MOVE:t?"touchmove":"mousemove",POINTER_END:t?"touchend":"mouseup"}}(),align:{TOP_LEFT:"TL",TOP:"T",TOP_RIGHT:"TR",LEFT:"L",CENTER:"C",RIGHT:"R",BOTTOM_LEFT:"BL",BOTTOM:"B",BOTTOM_RIGHT:"BR"},getElementRect:function(t){var e;try{e=t.getBoundingClientRect()}catch(a){e={top:t.offsetTop,left:t.offsetLeft,right:t.offsetLeft+t.offsetWidth,bottom:t.offsetTop+t.offsetHeight}}var r=(o.pageXOffset||n.scrollLeft)-(n.clientLeft||0)||0,i=(o.pageYOffset||n.scrollTop)-(n.clientTop||0)||0,s=o.getComputedStyle?getComputedStyle(t):t.currentStyle,c=parseInt,h=c(s.paddingLeft)+c(s.borderLeftWidth)||0,d=c(s.paddingTop)+c(s.borderTopWidth)||0,f=c(s.paddingRight)+c(s.borderRightWidth)||0,l=c(s.paddingBottom)+c(s.borderBottomWidth)||0,g=e.top||0,p=e.left||0,u=e.right||0,m=e.bottom||0;return{left:p+r+h,top:g+i+d,width:u-f-p-h,height:m-l-g-d}},createElement:function(t,e){var o,n,r,i=a.createElement(t);for(o in e)if(n=e[o],"style"===o)for(r in n)i.style[r]=n[r];else i[o]=n;return i},getElement:function(t){return a.getElementById(t)},setElementStyleByView:function(t){var e=t.drawable,o=e.domElement.style,a=t._stateCache||(t._stateCache={}),n=s.browser.jsVendor,r="px",i=!1;if(this.cacheStateIfChanged(t,["visible"],a)&&(o.display=t.visible?"":"none"),this.cacheStateIfChanged(t,["alpha"],a)&&(o.opacity=t.alpha),t.visible&&!(t.alpha<=0)){this.cacheStateIfChanged(t,["width"],a)&&(o.width=t.width+r),this.cacheStateIfChanged(t,["height"],a)&&(o.height=t.height+r),this.cacheStateIfChanged(t,["depth"],a)&&(o.zIndex=t.depth+1),(i=this.cacheStateIfChanged(t,["pivotX","pivotY"],a))&&(o[n+"TransformOrigin"]=t.pivotX+r+" "+t.pivotY+r),(this.cacheStateIfChanged(t,["x","y","rotation","scaleX","scaleY"],a)||i)&&(o[n+"Transform"]=this.getTransformCSS(t)),this.cacheStateIfChanged(t,["background"],a)&&(o.backgroundColor=t.background),o.pointerEvents||(o.pointerEvents="none");var c=e.image;if(c){var h=c.src;h!==a.image&&(a.image=h,o.backgroundImage="url("+h+")");var d=e.rect;if(d){var f=d[0],l=d[1];f!==a.sx&&(a.sx=f,o.backgroundPositionX=-f+r),l!==a.sy&&(a.sy=l,o.backgroundPositionY=-l+r)}}var g=t.mask;if(g){var p=g.drawable.domElement.style.backgroundImage;p!==a.maskImage&&(a.maskImage=p,o[n+"MaskImage"]=p,o[n+"MaskRepeat"]="no-repeat");var u=g.x,m=g.y;u===a.maskX&&m===a.maskY||(a.maskX=u,a.maskY=m,o[n+"MaskPosition"]=u+r+" "+m+r)}}},cacheStateIfChanged:function(t,e,o){var a,n,r,i,s=!1;for(a=0,n=e.length;a=48&&o<=57&&(t+="_"),t+e}return e},viewToString:function(t){for(var e,o=t;o;)e=e?o.id+"."+e:o.id,o=o.parent;return e},copy:function(t,o,a){return e.copy(t,o,a),i.copy||(i.copy=!0,console.warn("Hilo.copy has been Deprecated! Use Hilo.util.copy instead.")),t},browser:t,event:function(){var t="ontouchstart"in o;return{POINTER_START:t?"touchstart":"mousedown",POINTER_MOVE:t?"touchmove":"mousemove",POINTER_END:t?"touchend":"mouseup"}}(),align:{TOP_LEFT:"TL",TOP:"T",TOP_RIGHT:"TR",LEFT:"L",CENTER:"C",RIGHT:"R",BOTTOM_LEFT:"BL",BOTTOM:"B",BOTTOM_RIGHT:"BR"},getElementRect:function(t){var e;try{e=t.getBoundingClientRect()}catch(a){e={top:t.offsetTop,left:t.offsetLeft,right:t.offsetLeft+t.offsetWidth,bottom:t.offsetTop+t.offsetHeight}}var r=(o.pageXOffset||n.scrollLeft)-(n.clientLeft||0)||0,i=(o.pageYOffset||n.scrollTop)-(n.clientTop||0)||0,s=o.getComputedStyle?getComputedStyle(t):t.currentStyle,c=parseInt,h=c(s.paddingLeft)+c(s.borderLeftWidth)||0,d=c(s.paddingTop)+c(s.borderTopWidth)||0,f=c(s.paddingRight)+c(s.borderRightWidth)||0,l=c(s.paddingBottom)+c(s.borderBottomWidth)||0,g=e.top||0,p=e.left||0,u=e.right||0,m=e.bottom||0;return{left:p+r+h,top:g+i+d,width:u-f-p-h,height:m-l-g-d}},createElement:function(t,e){var o,n,r,i=a.createElement(t);for(o in e)if(n=e[o],"style"===o)for(r in n)i.style[r]=n[r];else i[o]=n;return i},getElement:function(t){return a.getElementById(t)},setElementStyleByView:function(t){var e=t.drawable,o=e.domElement.style,a=t._stateCache||(t._stateCache={}),n=s.browser.jsVendor,r="px",i=!1;if(this.cacheStateIfChanged(t,["visible"],a)&&(o.display=t.visible?"":"none"),this.cacheStateIfChanged(t,["alpha"],a)&&(o.opacity=t.alpha),t.visible&&!(t.alpha<=0)){this.cacheStateIfChanged(t,["width"],a)&&(o.width=t.width+r),this.cacheStateIfChanged(t,["height"],a)&&(o.height=t.height+r),this.cacheStateIfChanged(t,["depth"],a)&&(o.zIndex=t.depth+1),(i=this.cacheStateIfChanged(t,["pivotX","pivotY"],a))&&(o[n+"TransformOrigin"]=t.pivotX+r+" "+t.pivotY+r),(this.cacheStateIfChanged(t,["x","y","rotation","scaleX","scaleY"],a)||i)&&(o[n+"Transform"]=this.getTransformCSS(t)),this.cacheStateIfChanged(t,["background"],a)&&(o.backgroundColor=t.background),o.pointerEvents||(o.pointerEvents="none");var c=e.image;if(c){var h=c.src;h!==a.image&&(a.image=h,o.backgroundImage="url("+h+")");var d=e.rect;if(d){var f=d[0],l=d[1];f!==a.sx&&(a.sx=f,o.backgroundPositionX=-f+r),l!==a.sy&&(a.sy=l,o.backgroundPositionY=-l+r)}}var g=t.mask;if(g){var p=g.drawable.domElement.style.backgroundImage;p!==a.maskImage&&(a.maskImage=p,o[n+"MaskImage"]=p,o[n+"MaskRepeat"]="no-repeat");var u=g.x,m=g.y;u===a.maskX&&m===a.maskY||(a.maskX=u,a.maskY=m,o[n+"MaskPosition"]=u+r+" "+m+r)}}},cacheStateIfChanged:function(t,e,o){var a,n,r,i,s=!1;for(a=0,n=e.length;a> 1; - y = 0; - break; - case 'TR': - x = pw - w; - y = 0; - break; - case 'L': - x = 0; - y = ph - h >> 1; - break; - case 'C': - x = pw - w >> 1; - y = ph - h >> 1; - break; - case 'R': - x = pw - w; - y = ph - h >> 1; - break; - case 'BL': - x = 0; - y = ph - h; - break; - case 'B': - x = pw - w >> 1; - y = ph - h; - break; - case 'BR': - x = pw - w; - y = ph - h; - break; - } - } - } + var pos = target.getAlignPosition(); + x = pos.x; + y = pos.y; } if(x != 0 || y != 0) ctx.translate(x, y); diff --git a/build/amd/hilo/renderer/CanvasRenderer.min.js b/build/amd/hilo/renderer/CanvasRenderer.min.js index cd1cef4f..2bf165cc 100644 --- a/build/amd/hilo/renderer/CanvasRenderer.min.js +++ b/build/amd/hilo/renderer/CanvasRenderer.min.js @@ -1,6 +1,6 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ -define("hilo/renderer/CanvasRenderer",["hilo/core/Class","hilo/core/Hilo","hilo/renderer/Renderer"],function(e,t,a){var i=e.create({Extends:a,constructor:function(e){i.superclass.constructor.call(this,e),this.context=this.canvas.getContext("2d")},renderType:"canvas",context:null,startDraw:function(e){return!!(e.visible&&e.alpha>0)&&(e===this.stage&&this.context.clearRect(0,0,e.width,e.height),e.blendMode!==this.blendMode&&(this.context.globalCompositeOperation=this.blendMode=e.blendMode),this.context.save(),!0)},draw:function(e){var t=this.context,a=e.width,i=e.height,r=e.background;r&&(t.fillStyle=r,t.fillRect(0,0,a,i));var n=e.drawable,s=n&&n.image;if(s){var c=n.rect,h=c[2],l=c[3],o=c[4],d=c[5];if(!h||!l)return;a||i||(a=e.width=h,i=e.height=l),(o||d)&&t.translate(o-.5*h,d-.5*l),t.drawImage(s,c[0],c[1],h,l,0,0,a,i)}},endDraw:function(e){this.context.restore()},transform:function(e){var a=e.drawable;if(a&&a.domElement)return void t.setElementStyleByView(e);var i=this.context,r=e.scaleX,n=e.scaleY;if(e===this.stage){var s=this.canvas.style,c=e._scaleX,h=e._scaleY,l=!1;(!c&&1!=r||c&&c!=r)&&(e._scaleX=r,s.width=r*e.width+"px",l=!0),(!h&&1!=n||h&&h!=n)&&(e._scaleY=n,s.height=n*e.height+"px",l=!0),l&&e.updateViewport()}else{var o=e.x,d=e.y,v=e.pivotX,f=e.pivotY,g=e.rotation%360,p=e.mask;p&&(p._render(this),i.clip());var u=e.align;if(u)if("function"==typeof u)e.align();else{var w=e.parent;if(w){var b=e.width,x=e.height,m=w.width,k=w.height;switch(u){case"TL":o=0,d=0;break;case"T":o=m-b>>1,d=0;break;case"TR":o=m-b,d=0;break;case"L":o=0,d=k-x>>1;break;case"C":o=m-b>>1,d=k-x>>1;break;case"R":o=m-b,d=k-x>>1;break;case"BL":o=0,d=k-x;break;case"B":o=m-b>>1,d=k-x;break;case"BR":o=m-b,d=k-x}}}0==o&&0==d||i.translate(o,d),0!=g&&i.rotate(g*Math.PI/180),1==r&&1==n||i.scale(r,n),0==v&&0==f||i.translate(-v,-f)}e.alpha>0&&(i.globalAlpha*=e.alpha)},remove:function(e){var t=e.drawable,a=t&&t.domElement;if(a){var i=a.parentNode;i&&i.removeChild(a)}},clear:function(e,t,a,i){this.context.clearRect(e,t,a,i)},resize:function(e,t){var a=this.canvas,i=this.stage,r=a.style;a.width=e,a.height=t,r.width=i.width*i.scaleX+"px",r.height=i.height*i.scaleY+"px"}});return i}); \ No newline at end of file +define("hilo/renderer/CanvasRenderer",["hilo/core/Class","hilo/core/Hilo","hilo/renderer/Renderer"],function(e,t,a){var i=e.create({Extends:a,constructor:function(e){i.superclass.constructor.call(this,e),this.context=this.canvas.getContext("2d")},renderType:"canvas",context:null,startDraw:function(e){return!!(e.visible&&e.alpha>0)&&(e===this.stage&&this.context.clearRect(0,0,e.width,e.height),e.blendMode!==this.blendMode&&(this.context.globalCompositeOperation=this.blendMode=e.blendMode),this.context.save(),!0)},draw:function(e){var t=this.context,a=e.width,i=e.height,r=e.background;r&&(t.fillStyle=r,t.fillRect(0,0,a,i));var n=e.drawable,s=n&&n.image;if(s){var l=n.rect,o=l[2],h=l[3],c=l[4],d=l[5];if(!o||!h)return;a||i||(a=e.width=o,i=e.height=h),(c||d)&&t.translate(c-.5*o,d-.5*h),t.drawImage(s,l[0],l[1],o,h,0,0,a,i)}},endDraw:function(e){this.context.restore()},transform:function(e){var a=e.drawable;if(a&&a.domElement)return void t.setElementStyleByView(e);var i=this.context,r=e.scaleX,n=e.scaleY;if(e===this.stage){var s=this.canvas.style,l=e._scaleX,o=e._scaleY,h=!1;(!l&&1!=r||l&&l!=r)&&(e._scaleX=r,s.width=r*e.width+"px",h=!0),(!o&&1!=n||o&&o!=n)&&(e._scaleY=n,s.height=n*e.height+"px",h=!0),h&&e.updateViewport()}else{var c=e.x,d=e.y,v=e.pivotX,g=e.pivotY,f=e.rotation%360,u=e.mask;u&&(u._render(this),i.clip());var p=e.align;if(p){var w=e.getAlignPosition();c=w.x,d=w.y}0==c&&0==d||i.translate(c,d),0!=f&&i.rotate(f*Math.PI/180),1==r&&1==n||i.scale(r,n),0==v&&0==g||i.translate(-v,-g)}e.alpha>0&&(i.globalAlpha*=e.alpha)},remove:function(e){var t=e.drawable,a=t&&t.domElement;if(a){var i=a.parentNode;i&&i.removeChild(a)}},clear:function(e,t,a,i){this.context.clearRect(e,t,a,i)},resize:function(e,t){var a=this.canvas,i=this.stage,r=a.style;a.width=e,a.height=t,r.width=i.width*i.scaleX+"px",r.height=i.height*i.scaleY+"px"}});return i}); \ No newline at end of file diff --git a/build/amd/hilo/renderer/DOMRenderer.js b/build/amd/hilo/renderer/DOMRenderer.js index 5d8b9eba..25a71d31 100644 --- a/build/amd/hilo/renderer/DOMRenderer.js +++ b/build/amd/hilo/renderer/DOMRenderer.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/renderer/DOMRenderer.min.js b/build/amd/hilo/renderer/DOMRenderer.min.js index bae7921d..b1c07400 100644 --- a/build/amd/hilo/renderer/DOMRenderer.min.js +++ b/build/amd/hilo/renderer/DOMRenderer.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/renderer/Renderer.js b/build/amd/hilo/renderer/Renderer.js index bde332d1..8a07ac40 100644 --- a/build/amd/hilo/renderer/Renderer.js +++ b/build/amd/hilo/renderer/Renderer.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/renderer/Renderer.min.js b/build/amd/hilo/renderer/Renderer.min.js index 68dc0c4a..1e363979 100644 --- a/build/amd/hilo/renderer/Renderer.min.js +++ b/build/amd/hilo/renderer/Renderer.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/renderer/WebGLRenderer.js b/build/amd/hilo/renderer/WebGLRenderer.js index 8ec2bb5e..9e7fa489 100644 --- a/build/amd/hilo/renderer/WebGLRenderer.js +++ b/build/amd/hilo/renderer/WebGLRenderer.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -431,12 +431,13 @@ var WebGLRenderer = Class.create(/** @lends WebGLRenderer.prototype */{ sin = Math.sin(r); } + var pos = view.getAlignPosition(); mtx.a = cos*scaleX; mtx.b = sin*scaleX; mtx.c = -sin*scaleY; mtx.d = cos*scaleY; - mtx.tx = view.x - mtx.a * pivotX - mtx.c * pivotY; - mtx.ty = view.y - mtx.b * pivotX - mtx.d * pivotY; + mtx.tx = pos.x - mtx.a * pivotX - mtx.c * pivotY; + mtx.ty = pos.y - mtx.b * pivotX - mtx.d * pivotY; mtx.concat(ancestor.__webglWorldMatrix); }, diff --git a/build/amd/hilo/renderer/WebGLRenderer.min.js b/build/amd/hilo/renderer/WebGLRenderer.min.js index f2d7bdfa..09353a9c 100644 --- a/build/amd/hilo/renderer/WebGLRenderer.min.js +++ b/build/amd/hilo/renderer/WebGLRenderer.min.js @@ -1,6 +1,6 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ -define("hilo/renderer/WebGLRenderer",["hilo/core/Class","hilo/core/Hilo","hilo/renderer/Renderer","hilo/geom/Matrix"],function(t,e,r,i){var a=Math.PI/180,n=t.create({Extends:r,Statics:{MAX_BATCH_NUM:2e3,ATTRIBUTE_NUM:5,isSupport:function(){if(void 0==this._isSupported){var t=document.createElement("canvas");t.getContext&&(t.getContext("webgl")||t.getContext("experimental-webgl"))?this._isSupported=!0:this._isSupported=!1}return this._isSupported}},renderType:"webgl",gl:null,_isContextLost:!1,_cacheTexture:{},constructor:function(t){n.superclass.constructor.call(this,t);var e=this;this.gl=this.canvas.getContext("webgl")||this.canvas.getContext("experimental-webgl"),this.maxBatchNum=n.MAX_BATCH_NUM,this.positionStride=4*n.ATTRIBUTE_NUM;var r=this.maxBatchNum*n.ATTRIBUTE_NUM*4,i=6*this.maxBatchNum;this.arrayBuffer=new ArrayBuffer(4*r),this.float32Array=new Float32Array(this.arrayBuffer),this.uint32Array=new Uint32Array(this.arrayBuffer),this.indexs=new Uint16Array(i);for(var a=0,s=0;a0)&&(t===this.stage&&this.clear(),!0)},draw:function(t){var e=t.width,r=t.height,i=(t.background,t.drawable),a=i&&i.image;if(a){var n=i.rect,s=n[2],o=n[3];e||r||(e=t.width=s,r=t.height=o),this.batchIndex>=this.maxBatchNum&&this._renderBatches();var h=this._createVertexs(a,n[0],n[1],s,o,0,0,e,r),_=this.batchIndex*this.positionStride,c=this.float32Array,d=this.uint32Array,l=(t.tint>>16)+(65280&t.tint)+((255&t.tint)<<16)+(255*t.__webglRenderAlpha<<24);c[_+0]=h[0],c[_+1]=h[1],c[_+2]=h[2],c[_+3]=h[3],d[_+4]=l,c[_+5]=h[4],c[_+6]=h[5],c[_+7]=h[6],c[_+8]=h[7],d[_+9]=l,c[_+10]=h[8],c[_+11]=h[9],c[_+12]=h[10],c[_+13]=h[11],d[_+14]=l,c[_+15]=h[12],c[_+16]=h[13],c[_+17]=h[14],c[_+18]=h[15],d[_+19]=l;for(var u=t.__webglWorldMatrix,f=0;f<4;f++){var g=c[_+5*f],T=c[_+5*f+1];c[_+5*f]=u.a*g+u.c*T+u.tx,c[_+5*f+1]=u.b*g+u.d*T+u.ty}t.__textureImage=a,this.sprites[this.batchIndex++]=t}},endDraw:function(t){t===this.stage&&this._renderBatches()},transform:function(t){var r=t.drawable;if(r&&r.domElement)return void e.setElementStyleByView(t);var a=t.scaleX,n=t.scaleY;if(t===this.stage){var s=this.canvas.style,o=t._scaleX,h=t._scaleY,_=!1;(!o&&1!=a||o&&o!=a)&&(t._scaleX=a,s.width=a*t.width+"px",_=!0),(!h&&1!=n||h&&h!=n)&&(t._scaleY=n,s.height=n*t.height+"px",_=!0),_&&t.updateViewport(),t.__webglWorldMatrix=t.__webglWorldMatrix||new i(1,0,0,1,0,0)}else t.parent&&(t.__webglWorldMatrix=t.__webglWorldMatrix||new i(1,0,0,1,0,0),this._setConcatenatedMatrix(t,t.parent));t.alpha>0&&(t.parent&&t.parent.__webglRenderAlpha?t.__webglRenderAlpha=t.alpha*t.parent.__webglRenderAlpha:t.__webglRenderAlpha=t.alpha)},remove:function(t){var e=t.drawable,r=e&&e.domElement;if(r){var i=r.parentNode;i&&i.removeChild(r)}},clear:function(t,e,r,i){this.gl.clear(this.gl.COLOR_BUFFER_BIT)},resize:function(t,e){if(this.width!==t||this.height!==e){var r=this.canvas,i=this.stage,a=r.style;this.width=r.width=t,this.height=r.height=e,a.width=i.width*i.scaleX+"px",a.height=i.height*i.scaleY+"px",this.gl.viewport(0,0,t,e),this.canvasHalfWidth=.5*t,this.canvasHalfHeight=.5*e,this._uploadProjectionTransform(!0)}},_renderBatches:function(){var t=this.gl;t.bufferSubData(t.ARRAY_BUFFER,0,this.uint32Array.subarray(0,this.batchIndex*this.positionStride));for(var e=0,r=0,i=null,a=0;a0&&(r.bindTexture(r.TEXTURE_2D,this._getTexture(this.sprites[t])),r.drawElements(r.TRIANGLES,6*i,r.UNSIGNED_SHORT,6*t*2))},_uploadProjectionTransform:function(t){this._projectionTransformElements&&!t||(this._projectionTransformElements=new Float32Array([1/this.canvasHalfWidth,0,0,0,-1/this.canvasHalfHeight,0,-1,1,1])),this.gl.uniformMatrix3fv(this.u_projectionTransform,!1,this._projectionTransformElements)},_initShaders:function(){var t=" attribute vec2 a_position;\n attribute vec2 a_TexCoord;\n attribute vec4 a_tint;\n uniform mat3 u_projectionTransform;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_Position = vec4((u_projectionTransform * vec3(a_position, 1.0)).xy, 1.0, 1.0);\n v_TexCoord = a_TexCoord;\n v_tint = vec4(a_tint.rgb * a_tint.a, a_tint.a);\n }\n ",e="\n precision mediump float;\n uniform sampler2D u_Sampler;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_FragColor = texture2D(u_Sampler, v_TexCoord) * v_tint;\n }\n ";this.defaultShader=new s(this,{v:t,f:e},{attributes:["a_position","a_TexCoord","a_tint"],uniforms:["u_projectionTransform","u_Sampler"]})},_createVertexs:function(t,e,r,i,a,n,s,o,h){var _=this.__tempVertexs||[],c=t.width,d=t.height;i/=c,a/=d,e/=c,r/=d,o=o,h=h,n=n,s=s,i+e>1&&(i=1-e),a+r>1&&(a=1-r);var l=0;return _[l++]=n,_[l++]=s,_[l++]=e,_[l++]=r,_[l++]=n+o,_[l++]=s,_[l++]=e+i,_[l++]=r,_[l++]=n,_[l++]=s+h,_[l++]=e,_[l++]=r+a,_[l++]=n+o,_[l++]=s+h,_[l++]=e+i,_[l++]=r+a,_},_setConcatenatedMatrix:function(t,e){var r=t.__webglWorldMatrix,i=1,n=0,s=t.rotation%360,o=t.pivotX,h=t.pivotY,_=t.scaleX,c=t.scaleY;if(s){var d=s*a;i=Math.cos(d),n=Math.sin(d)}r.a=i*_,r.b=n*_,r.c=-n*c,r.d=i*c,r.tx=t.x-r.a*o-r.c*h,r.ty=t.y-r.b*o-r.d*h,r.concat(e.__webglWorldMatrix)},_getTexture:function(t){var e=t.__textureImage,r=this._cacheTexture[e.src];return r||(r=this.activeShader.uploadTexture(e)),r}}),s=function(t,e,r){this.renderer=t,this.gl=t.gl,this.program=this._createProgram(this.gl,e.v,e.f),r=r||{},this.attributes=r.attributes||[],this.uniforms=r.uniforms||[]};return s.prototype={active:function(){var t=this,e=t.renderer,r=t.gl,i=t.program;i&&r&&(e.activeShader=t,r.useProgram(i),t.attributes.forEach(function(t){e[t]=r.getAttribLocation(i,t),r.enableVertexAttribArray(e[t])}),t.uniforms.forEach(function(t){e[t]=r.getUniformLocation(i,t)}),t.width===e.width&&t.height===e.height||(t.width=e.width,t.height=e.height,e._uploadProjectionTransform()))},uploadTexture:function(t){var e=this.gl,r=this.renderer,i=e.createTexture(),a=r.u_Sampler;return e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,i),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,1),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.uniform1i(a,0),e.bindTexture(e.TEXTURE_2D,null),this.renderer._cacheTexture[t.src]=i,i},_createProgram:function(t,e,r){var i=this._createShader(t,t.VERTEX_SHADER,e),a=this._createShader(t,t.FRAGMENT_SHADER,r);if(!i||!a)return null;var n=t.createProgram();if(n){t.attachShader(n,i),t.attachShader(n,a),t.linkProgram(n),t.deleteShader(a),t.deleteShader(i);var s=t.getProgramParameter(n,t.LINK_STATUS);if(!s){var o=t.getProgramInfoLog(n);return console.log("Failed to link program: "+o),t.deleteProgram(n),null}}return n},_createShader:function(t,e,r){var i=t.createShader(e);if(i){t.shaderSource(i,r),t.compileShader(i);var a=t.getShaderParameter(i,t.COMPILE_STATUS);if(!a){var n=t.getShaderInfoLog(i);return console.log("Failed to compile shader: "+n),t.deleteShader(i),null}}return i}},n}); \ No newline at end of file +define("hilo/renderer/WebGLRenderer",["hilo/core/Class","hilo/core/Hilo","hilo/renderer/Renderer","hilo/geom/Matrix"],function(t,e,r,i){var a=Math.PI/180,n=t.create({Extends:r,Statics:{MAX_BATCH_NUM:2e3,ATTRIBUTE_NUM:5,isSupport:function(){if(void 0==this._isSupported){var t=document.createElement("canvas");t.getContext&&(t.getContext("webgl")||t.getContext("experimental-webgl"))?this._isSupported=!0:this._isSupported=!1}return this._isSupported}},renderType:"webgl",gl:null,_isContextLost:!1,_cacheTexture:{},constructor:function(t){n.superclass.constructor.call(this,t);var e=this;this.gl=this.canvas.getContext("webgl")||this.canvas.getContext("experimental-webgl"),this.maxBatchNum=n.MAX_BATCH_NUM,this.positionStride=4*n.ATTRIBUTE_NUM;var r=this.maxBatchNum*n.ATTRIBUTE_NUM*4,i=6*this.maxBatchNum;this.arrayBuffer=new ArrayBuffer(4*r),this.float32Array=new Float32Array(this.arrayBuffer),this.uint32Array=new Uint32Array(this.arrayBuffer),this.indexs=new Uint16Array(i);for(var a=0,s=0;a0)&&(t===this.stage&&this.clear(),!0)},draw:function(t){var e=t.width,r=t.height,i=(t.background,t.drawable),a=i&&i.image;if(a){var n=i.rect,s=n[2],o=n[3];e||r||(e=t.width=s,r=t.height=o),this.batchIndex>=this.maxBatchNum&&this._renderBatches();var h=this._createVertexs(a,n[0],n[1],s,o,0,0,e,r),_=this.batchIndex*this.positionStride,c=this.float32Array,l=this.uint32Array,d=(t.tint>>16)+(65280&t.tint)+((255&t.tint)<<16)+(255*t.__webglRenderAlpha<<24);c[_+0]=h[0],c[_+1]=h[1],c[_+2]=h[2],c[_+3]=h[3],l[_+4]=d,c[_+5]=h[4],c[_+6]=h[5],c[_+7]=h[6],c[_+8]=h[7],l[_+9]=d,c[_+10]=h[8],c[_+11]=h[9],c[_+12]=h[10],c[_+13]=h[11],l[_+14]=d,c[_+15]=h[12],c[_+16]=h[13],c[_+17]=h[14],c[_+18]=h[15],l[_+19]=d;for(var u=t.__webglWorldMatrix,f=0;f<4;f++){var g=c[_+5*f],T=c[_+5*f+1];c[_+5*f]=u.a*g+u.c*T+u.tx,c[_+5*f+1]=u.b*g+u.d*T+u.ty}t.__textureImage=a,this.sprites[this.batchIndex++]=t}},endDraw:function(t){t===this.stage&&this._renderBatches()},transform:function(t){var r=t.drawable;if(r&&r.domElement)return void e.setElementStyleByView(t);var a=t.scaleX,n=t.scaleY;if(t===this.stage){var s=this.canvas.style,o=t._scaleX,h=t._scaleY,_=!1;(!o&&1!=a||o&&o!=a)&&(t._scaleX=a,s.width=a*t.width+"px",_=!0),(!h&&1!=n||h&&h!=n)&&(t._scaleY=n,s.height=n*t.height+"px",_=!0),_&&t.updateViewport(),t.__webglWorldMatrix=t.__webglWorldMatrix||new i(1,0,0,1,0,0)}else t.parent&&(t.__webglWorldMatrix=t.__webglWorldMatrix||new i(1,0,0,1,0,0),this._setConcatenatedMatrix(t,t.parent));t.alpha>0&&(t.parent&&t.parent.__webglRenderAlpha?t.__webglRenderAlpha=t.alpha*t.parent.__webglRenderAlpha:t.__webglRenderAlpha=t.alpha)},remove:function(t){var e=t.drawable,r=e&&e.domElement;if(r){var i=r.parentNode;i&&i.removeChild(r)}},clear:function(t,e,r,i){this.gl.clear(this.gl.COLOR_BUFFER_BIT)},resize:function(t,e){if(this.width!==t||this.height!==e){var r=this.canvas,i=this.stage,a=r.style;this.width=r.width=t,this.height=r.height=e,a.width=i.width*i.scaleX+"px",a.height=i.height*i.scaleY+"px",this.gl.viewport(0,0,t,e),this.canvasHalfWidth=.5*t,this.canvasHalfHeight=.5*e,this._uploadProjectionTransform(!0)}},_renderBatches:function(){var t=this.gl;t.bufferSubData(t.ARRAY_BUFFER,0,this.uint32Array.subarray(0,this.batchIndex*this.positionStride));for(var e=0,r=0,i=null,a=0;a0&&(r.bindTexture(r.TEXTURE_2D,this._getTexture(this.sprites[t])),r.drawElements(r.TRIANGLES,6*i,r.UNSIGNED_SHORT,6*t*2))},_uploadProjectionTransform:function(t){this._projectionTransformElements&&!t||(this._projectionTransformElements=new Float32Array([1/this.canvasHalfWidth,0,0,0,-1/this.canvasHalfHeight,0,-1,1,1])),this.gl.uniformMatrix3fv(this.u_projectionTransform,!1,this._projectionTransformElements)},_initShaders:function(){var t=" attribute vec2 a_position;\n attribute vec2 a_TexCoord;\n attribute vec4 a_tint;\n uniform mat3 u_projectionTransform;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_Position = vec4((u_projectionTransform * vec3(a_position, 1.0)).xy, 1.0, 1.0);\n v_TexCoord = a_TexCoord;\n v_tint = vec4(a_tint.rgb * a_tint.a, a_tint.a);\n }\n ",e="\n precision mediump float;\n uniform sampler2D u_Sampler;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_FragColor = texture2D(u_Sampler, v_TexCoord) * v_tint;\n }\n ";this.defaultShader=new s(this,{v:t,f:e},{attributes:["a_position","a_TexCoord","a_tint"],uniforms:["u_projectionTransform","u_Sampler"]})},_createVertexs:function(t,e,r,i,a,n,s,o,h){var _=this.__tempVertexs||[],c=t.width,l=t.height;i/=c,a/=l,e/=c,r/=l,o=o,h=h,n=n,s=s,i+e>1&&(i=1-e),a+r>1&&(a=1-r);var d=0;return _[d++]=n,_[d++]=s,_[d++]=e,_[d++]=r,_[d++]=n+o,_[d++]=s,_[d++]=e+i,_[d++]=r,_[d++]=n,_[d++]=s+h,_[d++]=e,_[d++]=r+a,_[d++]=n+o,_[d++]=s+h,_[d++]=e+i,_[d++]=r+a,_},_setConcatenatedMatrix:function(t,e){var r=t.__webglWorldMatrix,i=1,n=0,s=t.rotation%360,o=t.pivotX,h=t.pivotY,_=t.scaleX,c=t.scaleY;if(s){var l=s*a;i=Math.cos(l),n=Math.sin(l)}var d=t.getAlignPosition();r.a=i*_,r.b=n*_,r.c=-n*c,r.d=i*c,r.tx=d.x-r.a*o-r.c*h,r.ty=d.y-r.b*o-r.d*h,r.concat(e.__webglWorldMatrix)},_getTexture:function(t){var e=t.__textureImage,r=this._cacheTexture[e.src];return r||(r=this.activeShader.uploadTexture(e)),r}}),s=function(t,e,r){this.renderer=t,this.gl=t.gl,this.program=this._createProgram(this.gl,e.v,e.f),r=r||{},this.attributes=r.attributes||[],this.uniforms=r.uniforms||[]};return s.prototype={active:function(){var t=this,e=t.renderer,r=t.gl,i=t.program;i&&r&&(e.activeShader=t,r.useProgram(i),t.attributes.forEach(function(t){e[t]=r.getAttribLocation(i,t),r.enableVertexAttribArray(e[t])}),t.uniforms.forEach(function(t){e[t]=r.getUniformLocation(i,t)}),t.width===e.width&&t.height===e.height||(t.width=e.width,t.height=e.height,e._uploadProjectionTransform()))},uploadTexture:function(t){var e=this.gl,r=this.renderer,i=e.createTexture(),a=r.u_Sampler;return e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,i),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,1),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.uniform1i(a,0),e.bindTexture(e.TEXTURE_2D,null),this.renderer._cacheTexture[t.src]=i,i},_createProgram:function(t,e,r){var i=this._createShader(t,t.VERTEX_SHADER,e),a=this._createShader(t,t.FRAGMENT_SHADER,r);if(!i||!a)return null;var n=t.createProgram();if(n){t.attachShader(n,i),t.attachShader(n,a),t.linkProgram(n),t.deleteShader(a),t.deleteShader(i);var s=t.getProgramParameter(n,t.LINK_STATUS);if(!s){var o=t.getProgramInfoLog(n);return console.log("Failed to link program: "+o),t.deleteProgram(n),null}}return n},_createShader:function(t,e,r){var i=t.createShader(e);if(i){t.shaderSource(i,r),t.compileShader(i);var a=t.getShaderParameter(i,t.COMPILE_STATUS);if(!a){var n=t.getShaderInfoLog(i);return console.log("Failed to compile shader: "+n),t.deleteShader(i),null}}return i}},n}); \ No newline at end of file diff --git a/build/amd/hilo/tween/Ease.js b/build/amd/hilo/tween/Ease.js index 570f9703..8ddeeea5 100644 --- a/build/amd/hilo/tween/Ease.js +++ b/build/amd/hilo/tween/Ease.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/tween/Ease.min.js b/build/amd/hilo/tween/Ease.min.js index 0a379764..ac446ccd 100644 --- a/build/amd/hilo/tween/Ease.min.js +++ b/build/amd/hilo/tween/Ease.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/tween/Tween.js b/build/amd/hilo/tween/Tween.js index 5d7ea156..d94ca363 100644 --- a/build/amd/hilo/tween/Tween.js +++ b/build/amd/hilo/tween/Tween.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/tween/Tween.min.js b/build/amd/hilo/tween/Tween.min.js index 37dad84f..7135cf15 100644 --- a/build/amd/hilo/tween/Tween.min.js +++ b/build/amd/hilo/tween/Tween.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/util/TextureAtlas.js b/build/amd/hilo/util/TextureAtlas.js index 7e5e9af6..6c83d7d4 100644 --- a/build/amd/hilo/util/TextureAtlas.js +++ b/build/amd/hilo/util/TextureAtlas.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -73,7 +73,7 @@ return Class.create(/** @lends TextureAtlas.prototype */{ * @param {String} frames Frames message, eg:"0-5" means frame 0 to frame 5. * @param {Number} w The width of each frame. * @param {Number} h The height of each frame. - * @param {Bollean} loop Is play in loop. + * @param {Boolean} loop Is play in loop. * @param {Number} duration The time between each frame. default value is 1 (Frame), but if timeBased is true, default value will be duration(milli-second). * @example * //demo1 make one animation diff --git a/build/amd/hilo/util/TextureAtlas.min.js b/build/amd/hilo/util/TextureAtlas.min.js index 0de08b7f..696c72a2 100644 --- a/build/amd/hilo/util/TextureAtlas.min.js +++ b/build/amd/hilo/util/TextureAtlas.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/util/Ticker.js b/build/amd/hilo/util/Ticker.js index 5a562c6f..7017ff49 100644 --- a/build/amd/hilo/util/Ticker.js +++ b/build/amd/hilo/util/Ticker.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/util/Ticker.min.js b/build/amd/hilo/util/Ticker.min.js index 21aa9375..88b5f8f8 100644 --- a/build/amd/hilo/util/Ticker.min.js +++ b/build/amd/hilo/util/Ticker.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/util/browser.js b/build/amd/hilo/util/browser.js index 7bd53b33..647976cd 100644 --- a/build/amd/hilo/util/browser.js +++ b/build/amd/hilo/util/browser.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/util/browser.min.js b/build/amd/hilo/util/browser.min.js index 7fe51b42..7450c76f 100644 --- a/build/amd/hilo/util/browser.min.js +++ b/build/amd/hilo/util/browser.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/util/drag.js b/build/amd/hilo/util/drag.js index bfbc979d..d439096a 100644 --- a/build/amd/hilo/util/drag.js +++ b/build/amd/hilo/util/drag.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/util/drag.min.js b/build/amd/hilo/util/drag.min.js index 75a1557e..92538fbe 100644 --- a/build/amd/hilo/util/drag.min.js +++ b/build/amd/hilo/util/drag.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/util/polyfill.js b/build/amd/hilo/util/polyfill.js index 91315115..a44a58d0 100644 --- a/build/amd/hilo/util/polyfill.js +++ b/build/amd/hilo/util/polyfill.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/util/polyfill.min.js b/build/amd/hilo/util/polyfill.min.js index 784ecf09..6b2648c0 100644 --- a/build/amd/hilo/util/polyfill.min.js +++ b/build/amd/hilo/util/polyfill.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/util/util.js b/build/amd/hilo/util/util.js index 2e90e7d6..3a3f2980 100644 --- a/build/amd/hilo/util/util.js +++ b/build/amd/hilo/util/util.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/util/util.min.js b/build/amd/hilo/util/util.min.js index b7f8a732..8b91228d 100644 --- a/build/amd/hilo/util/util.min.js +++ b/build/amd/hilo/util/util.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/view/Bitmap.js b/build/amd/hilo/view/Bitmap.js index b4ab16f5..34399182 100644 --- a/build/amd/hilo/view/Bitmap.js +++ b/build/amd/hilo/view/Bitmap.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/view/Bitmap.min.js b/build/amd/hilo/view/Bitmap.min.js index 950cc36e..2a2f041f 100644 --- a/build/amd/hilo/view/Bitmap.min.js +++ b/build/amd/hilo/view/Bitmap.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/view/BitmapText.js b/build/amd/hilo/view/BitmapText.js index 409354bc..ec8fb6c2 100644 --- a/build/amd/hilo/view/BitmapText.js +++ b/build/amd/hilo/view/BitmapText.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/view/BitmapText.min.js b/build/amd/hilo/view/BitmapText.min.js index 1d3748d1..ee601074 100644 --- a/build/amd/hilo/view/BitmapText.min.js +++ b/build/amd/hilo/view/BitmapText.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/view/Button.js b/build/amd/hilo/view/Button.js index 7315bdc7..8c2d3981 100644 --- a/build/amd/hilo/view/Button.js +++ b/build/amd/hilo/view/Button.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/view/Button.min.js b/build/amd/hilo/view/Button.min.js index 4e4caf32..3625daf9 100644 --- a/build/amd/hilo/view/Button.min.js +++ b/build/amd/hilo/view/Button.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/view/CacheMixin.js b/build/amd/hilo/view/CacheMixin.js index f0f342a7..3bd817e2 100644 --- a/build/amd/hilo/view/CacheMixin.js +++ b/build/amd/hilo/view/CacheMixin.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/view/CacheMixin.min.js b/build/amd/hilo/view/CacheMixin.min.js index 1a4d6ef2..86f3f9ca 100644 --- a/build/amd/hilo/view/CacheMixin.min.js +++ b/build/amd/hilo/view/CacheMixin.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/view/Container.js b/build/amd/hilo/view/Container.js index 2a9eddd2..db4d0131 100644 --- a/build/amd/hilo/view/Container.js +++ b/build/amd/hilo/view/Container.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/view/Container.min.js b/build/amd/hilo/view/Container.min.js index b4c05744..f4359621 100644 --- a/build/amd/hilo/view/Container.min.js +++ b/build/amd/hilo/view/Container.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/view/DOMElement.js b/build/amd/hilo/view/DOMElement.js index 2c253c92..176aef58 100644 --- a/build/amd/hilo/view/DOMElement.js +++ b/build/amd/hilo/view/DOMElement.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/view/DOMElement.min.js b/build/amd/hilo/view/DOMElement.min.js index d5d57e87..c9a92099 100644 --- a/build/amd/hilo/view/DOMElement.min.js +++ b/build/amd/hilo/view/DOMElement.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/view/Drawable.js b/build/amd/hilo/view/Drawable.js index 7c8c5c9f..d8563aac 100644 --- a/build/amd/hilo/view/Drawable.js +++ b/build/amd/hilo/view/Drawable.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/view/Drawable.min.js b/build/amd/hilo/view/Drawable.min.js index 8ea0f410..4e1e240d 100644 --- a/build/amd/hilo/view/Drawable.min.js +++ b/build/amd/hilo/view/Drawable.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/view/Graphics.js b/build/amd/hilo/view/Graphics.js index 1d54c542..7a7ea5f1 100644 --- a/build/amd/hilo/view/Graphics.js +++ b/build/amd/hilo/view/Graphics.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/view/Graphics.min.js b/build/amd/hilo/view/Graphics.min.js index 4dbff163..eaaaecf8 100644 --- a/build/amd/hilo/view/Graphics.min.js +++ b/build/amd/hilo/view/Graphics.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/view/Sprite.js b/build/amd/hilo/view/Sprite.js index 7e2d5eb8..61c4dfde 100644 --- a/build/amd/hilo/view/Sprite.js +++ b/build/amd/hilo/view/Sprite.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/view/Sprite.min.js b/build/amd/hilo/view/Sprite.min.js index 45c628f1..4a9ea6f6 100644 --- a/build/amd/hilo/view/Sprite.min.js +++ b/build/amd/hilo/view/Sprite.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/view/Stage.js b/build/amd/hilo/view/Stage.js index 478fd64f..057de2bd 100644 --- a/build/amd/hilo/view/Stage.js +++ b/build/amd/hilo/view/Stage.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/view/Stage.min.js b/build/amd/hilo/view/Stage.min.js index a06139f0..3fbd38cf 100644 --- a/build/amd/hilo/view/Stage.min.js +++ b/build/amd/hilo/view/Stage.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/view/Text.js b/build/amd/hilo/view/Text.js index 7583c466..6b53f07d 100644 --- a/build/amd/hilo/view/Text.js +++ b/build/amd/hilo/view/Text.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/view/Text.min.js b/build/amd/hilo/view/Text.min.js index 76c18829..5418a9b3 100644 --- a/build/amd/hilo/view/Text.min.js +++ b/build/amd/hilo/view/Text.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/amd/hilo/view/View.js b/build/amd/hilo/view/View.js index e7a7ebd3..ada5a091 100644 --- a/build/amd/hilo/view/View.js +++ b/build/amd/hilo/view/View.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -196,11 +196,72 @@ return Class.create(/** @lends View.prototype */{ if(pivotX != 0) mtx.tx -= pivotX; if(pivotY != 0) mtx.ty -= pivotY; - mtx.concat(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, o.x, o.y); + + var pos = o.getAlignPosition(); + mtx.concat(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, pos.x, pos.y); } return mtx; }, + getAlignPosition: function(){ + var parent = this.parent; + var align = this.align; + var x = this.x; + var y = this.y; + + if(parent && this.align){ + if(typeof align === 'function'){ + return this.align(); + } + + var w = this.width, h = this.height, + pw = parent.width, ph = parent.height; + switch(align){ + case 'TL': + x = 0; + y = 0; + break; + case 'T': + x = pw - w >> 1; + y = 0; + break; + case 'TR': + x = pw - w; + y = 0; + break; + case 'L': + x = 0; + y = ph - h >> 1; + break; + case 'C': + x = pw - w >> 1; + y = ph - h >> 1; + break; + case 'R': + x = pw - w; + y = ph - h >> 1; + break; + case 'BL': + x = 0; + y = ph - h; + break; + case 'B': + x = pw - w >> 1; + y = ph - h; + break; + case 'BR': + x = pw - w; + y = ph - h; + break; + } + } + + return { + x:x, + y:y + }; + }, + /** * @language=en * Determining whether a point is in the circumscribed rectangle of current view. diff --git a/build/amd/hilo/view/View.min.js b/build/amd/hilo/view/View.min.js index d1edb7b5..5a4ef89c 100644 --- a/build/amd/hilo/view/View.min.js +++ b/build/amd/hilo/view/View.min.js @@ -1,6 +1,6 @@ /** - * Hilo 1.1.4 for amd + * Hilo 1.1.5 for amd * Copyright 2016 alibaba.com * Licensed under the MIT License */ -define("hilo/view/View",["hilo/core/Hilo","hilo/core/Class","hilo/event/EventMixin","hilo/geom/Matrix","hilo/util/util"],function(t,e,i,n,r){var o=function(){function o(t,e,i){for(var n,r,o,a,h=0,s=!1,u=0,y=i.length;ux.x?(n=x.x,r=l.x):(n=l.x,r=x.x),t>=n&&t<=r))s=!0;else if(l.y>x.y?(o=x.y,a=l.y):(o=l.y,a=x.y),!(ea)){var d=(e-l.y)*(x.x-l.x)/(x.y-l.y)+l.x;if(d>t?h++:d==t&&(s=!0),l.x>t&&l.y==e){var c=i[(y+u-1)%y];(c.ye||c.y>e&&x.yh?h=y:yu?u=y:y=0)return!1;l>i.overlap&&(i.overlap=l,i.normal.x=c.x,i.normal.y=c.y)}return i}return e.create({Mixes:i,constructor:function(e){e=e||{},this.id=this.id||e.id||t.getUid("View"),r.copy(this,e,!0)},tint:16777215,id:null,x:0,y:0,width:0,height:0,alpha:1,rotation:0,visible:!0,pivotX:0,pivotY:0,scaleX:1,scaleY:1,pointerEnabled:!0,background:null,mask:null,align:null,drawable:null,boundsArea:null,parent:null,depth:-1,blendMode:"source-over",getStage:function(){for(var t,e=this;t=e.parent;)e=t;return e.canvas?e:null},getScaledWidth:function(){return this.width*this.scaleX},getScaledHeight:function(){return this.height*this.scaleY},addTo:function(t,e){return"number"==typeof e?t.addChildAt(this,e):t.addChild(this),this},removeFromParent:function(){var t=this.parent;return t&&t.removeChild(this),this},getBounds:function(){for(var t,e,i,n,r,o,a,h=this.width,s=this.height,u=this.getConcatenatedMatrix(),y=this.boundsArea||[{x:0,y:0},{x:h,y:0},{x:h,y:s},{x:0,y:s}],l=[],x=0,d=y.length;xe?n=e:ri?o=i:a=n.x&&t<=n.x+n.width&&e>=n.y&&e<=n.y+n.height;return r&&i&&(r=o(t,e,n)),r},hitTestObject:function(t,e){var i=this.getBounds(),n=t.getBounds(),r=i.x<=n.x+n.width&&n.x<=i.x+i.width&&i.y<=n.y+n.height&&n.y<=i.y+i.height;return r&&e&&(r=a(i,n)),!!r},_render:function(t,e){this.onUpdate&&this.onUpdate(e)===!1||!t.startDraw(this)||(t.transform(this),this.render(t,e),t.endDraw(this))},_fireMouseEvent:function(t){if(t.eventCurrentTarget=this,this.fire(t),"mousemove"==t.type){if(!this.__mouseOver){this.__mouseOver=!0;var e=r.copy({},t);e.type="mouseover",this.fire(e)}}else"mouseout"==t.type&&(this.__mouseOver=!1);var i=this.parent;t._stopped||t._stopPropagationed||!i||("mouseout"==t.type||"touchout"==t.type?i.hitTestPoint(t.stageX,t.stageY,!0)||i._fireMouseEvent(t):i._fireMouseEvent(t))},onUpdate:null,render:function(t,e){t.draw(this)},toString:function(){return t.viewToString(this)}})}();return o}); \ No newline at end of file +define("hilo/view/View",["hilo/core/Hilo","hilo/core/Class","hilo/event/EventMixin","hilo/geom/Matrix","hilo/util/util"],function(t,e,i,n,r){var o=function(){function o(t,e,i){for(var n,r,o,a,s=0,h=!1,u=0,y=i.length;uc.x?(n=c.x,r=l.x):(n=l.x,r=c.x),t>=n&&t<=r))h=!0;else if(l.y>c.y?(o=c.y,a=l.y):(o=l.y,a=c.y),!(ea)){var x=(e-l.y)*(c.x-l.x)/(c.y-l.y)+l.x;if(x>t?s++:x==t&&(h=!0),l.x>t&&l.y==e){var d=i[(y+u-1)%y];(d.ye||d.y>e&&c.ys?s=y:yu?u=y:y=0)return!1;l>i.overlap&&(i.overlap=l,i.normal.x=d.x,i.normal.y=d.y)}return i}return e.create({Mixes:i,constructor:function(e){e=e||{},this.id=this.id||e.id||t.getUid("View"),r.copy(this,e,!0)},tint:16777215,id:null,x:0,y:0,width:0,height:0,alpha:1,rotation:0,visible:!0,pivotX:0,pivotY:0,scaleX:1,scaleY:1,pointerEnabled:!0,background:null,mask:null,align:null,drawable:null,boundsArea:null,parent:null,depth:-1,blendMode:"source-over",getStage:function(){for(var t,e=this;t=e.parent;)e=t;return e.canvas?e:null},getScaledWidth:function(){return this.width*this.scaleX},getScaledHeight:function(){return this.height*this.scaleY},addTo:function(t,e){return"number"==typeof e?t.addChildAt(this,e):t.addChild(this),this},removeFromParent:function(){var t=this.parent;return t&&t.removeChild(this),this},getBounds:function(){for(var t,e,i,n,r,o,a,s=this.width,h=this.height,u=this.getConcatenatedMatrix(),y=this.boundsArea||[{x:0,y:0},{x:s,y:0},{x:s,y:h},{x:0,y:h}],l=[],c=0,x=y.length;ce?n=e:ri?o=i:a>1,n=0;break;case"TR":i=a-r,n=0;break;case"L":i=0,n=s-o>>1;break;case"C":i=a-r>>1,n=s-o>>1;break;case"R":i=a-r,n=s-o>>1;break;case"BL":i=0,n=s-o;break;case"B":i=a-r>>1,n=s-o;break;case"BR":i=a-r,n=s-o}}return{x:i,y:n}},hitTestPoint:function(t,e,i){var n=this.getBounds(),r=t>=n.x&&t<=n.x+n.width&&e>=n.y&&e<=n.y+n.height;return r&&i&&(r=o(t,e,n)),r},hitTestObject:function(t,e){var i=this.getBounds(),n=t.getBounds(),r=i.x<=n.x+n.width&&n.x<=i.x+i.width&&i.y<=n.y+n.height&&n.y<=i.y+i.height;return r&&e&&(r=a(i,n)),!!r},_render:function(t,e){this.onUpdate&&this.onUpdate(e)===!1||!t.startDraw(this)||(t.transform(this),this.render(t,e),t.endDraw(this))},_fireMouseEvent:function(t){if(t.eventCurrentTarget=this,this.fire(t),"mousemove"==t.type){if(!this.__mouseOver){this.__mouseOver=!0;var e=r.copy({},t);e.type="mouseover",this.fire(e)}}else"mouseout"==t.type&&(this.__mouseOver=!1);var i=this.parent;t._stopped||t._stopPropagationed||!i||("mouseout"==t.type||"touchout"==t.type?i.hitTestPoint(t.stageX,t.stageY,!0)||i._fireMouseEvent(t):i._fireMouseEvent(t))},onUpdate:null,render:function(t,e){t.draw(this)},toString:function(){return t.viewToString(this)}})}();return o}); \ No newline at end of file diff --git a/build/cmd/hilo-cmd.js b/build/cmd/hilo-cmd.js index aec2d685..2c47e6cf 100644 --- a/build/cmd/hilo-cmd.js +++ b/build/cmd/hilo-cmd.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -168,7 +168,7 @@ return browser; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -205,7 +205,7 @@ return util; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -234,7 +234,7 @@ var Hilo = { * Hilo version * @type String */ - version:'1.1.4', + version:'1.1.5', /** * @language=en * Gets a globally unique id. Such as Stage1, Bitmap2 etc. @@ -524,7 +524,7 @@ return Hilo; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -707,7 +707,7 @@ return Class; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -889,7 +889,7 @@ return Matrix; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -1044,7 +1044,7 @@ return EventMixin; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -1128,7 +1128,7 @@ return Drawable; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -1225,7 +1225,7 @@ return Renderer; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -1367,53 +1367,9 @@ var CanvasRenderer = Class.create(/** @lends CanvasRenderer.prototype */{ //alignment var align = target.align; if(align){ - if(typeof align === 'function'){ - target.align(); - }else{ - var parent = target.parent; - if(parent){ - var w = target.width, h = target.height, - pw = parent.width, ph = parent.height; - switch(align){ - case 'TL': - x = 0; - y = 0; - break; - case 'T': - x = pw - w >> 1; - y = 0; - break; - case 'TR': - x = pw - w; - y = 0; - break; - case 'L': - x = 0; - y = ph - h >> 1; - break; - case 'C': - x = pw - w >> 1; - y = ph - h >> 1; - break; - case 'R': - x = pw - w; - y = ph - h >> 1; - break; - case 'BL': - x = 0; - y = ph - h; - break; - case 'B': - x = pw - w >> 1; - y = ph - h; - break; - case 'BR': - x = pw - w; - y = ph - h; - break; - } - } - } + var pos = target.getAlignPosition(); + x = pos.x; + y = pos.y; } if(x != 0 || y != 0) ctx.translate(x, y); @@ -1471,7 +1427,7 @@ return CanvasRenderer; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -1658,7 +1614,7 @@ return DOMRenderer; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -2095,12 +2051,13 @@ var WebGLRenderer = Class.create(/** @lends WebGLRenderer.prototype */{ sin = Math.sin(r); } + var pos = view.getAlignPosition(); mtx.a = cos*scaleX; mtx.b = sin*scaleX; mtx.c = -sin*scaleY; mtx.d = cos*scaleY; - mtx.tx = view.x - mtx.a * pivotX - mtx.c * pivotY; - mtx.ty = view.y - mtx.b * pivotX - mtx.d * pivotY; + mtx.tx = pos.x - mtx.a * pivotX - mtx.c * pivotY; + mtx.ty = pos.y - mtx.b * pivotX - mtx.d * pivotY; mtx.concat(ancestor.__webglWorldMatrix); }, @@ -2232,7 +2189,7 @@ return WebGLRenderer; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -2435,11 +2392,72 @@ return Class.create(/** @lends View.prototype */{ if(pivotX != 0) mtx.tx -= pivotX; if(pivotY != 0) mtx.ty -= pivotY; - mtx.concat(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, o.x, o.y); + + var pos = o.getAlignPosition(); + mtx.concat(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, pos.x, pos.y); } return mtx; }, + getAlignPosition: function(){ + var parent = this.parent; + var align = this.align; + var x = this.x; + var y = this.y; + + if(parent && this.align){ + if(typeof align === 'function'){ + return this.align(); + } + + var w = this.width, h = this.height, + pw = parent.width, ph = parent.height; + switch(align){ + case 'TL': + x = 0; + y = 0; + break; + case 'T': + x = pw - w >> 1; + y = 0; + break; + case 'TR': + x = pw - w; + y = 0; + break; + case 'L': + x = 0; + y = ph - h >> 1; + break; + case 'C': + x = pw - w >> 1; + y = ph - h >> 1; + break; + case 'R': + x = pw - w; + y = ph - h >> 1; + break; + case 'BL': + x = 0; + y = ph - h; + break; + case 'B': + x = pw - w >> 1; + y = ph - h; + break; + case 'BR': + x = pw - w; + y = ph - h; + break; + } + } + + return { + x:x, + y:y + }; + }, + /** * @language=en * Determining whether a point is in the circumscribed rectangle of current view. @@ -2665,7 +2683,7 @@ return View; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -2734,7 +2752,7 @@ return CacheMixin; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -3112,7 +3130,7 @@ return Container; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -3388,7 +3406,7 @@ return Stage; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -3471,7 +3489,7 @@ return Bitmap; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -3747,7 +3765,7 @@ return Sprite; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -3853,7 +3871,7 @@ return DOMElement; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -4411,7 +4429,7 @@ return Graphics; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -4669,7 +4687,7 @@ return Text; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -4858,7 +4876,7 @@ return BitmapText; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -5043,7 +5061,7 @@ return Button; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -5119,7 +5137,7 @@ return Class.create(/** @lends TextureAtlas.prototype */{ * @param {String} frames Frames message, eg:"0-5" means frame 0 to frame 5. * @param {Number} w The width of each frame. * @param {Number} h The height of each frame. - * @param {Bollean} loop Is play in loop. + * @param {Boolean} loop Is play in loop. * @param {Number} duration The time between each frame. default value is 1 (Frame), but if timeBased is true, default value will be duration(milli-second). * @example * //demo1 make one animation @@ -5282,7 +5300,7 @@ return TextureAtlas; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -5510,7 +5528,7 @@ return Ticker; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -5558,7 +5576,7 @@ if (!fnProto.bind) { }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -5678,7 +5696,7 @@ return drag; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -6122,7 +6140,7 @@ return Tween; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -6394,7 +6412,7 @@ return Ease; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -6444,7 +6462,7 @@ return ImageLoader; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -6513,7 +6531,7 @@ return ScriptLoader; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -6767,7 +6785,7 @@ return LoadQueue; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -6974,7 +6992,7 @@ return HTMLAudio; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -7295,7 +7313,7 @@ return WebAudio; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -7402,7 +7420,7 @@ return WebSound; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -7498,7 +7516,7 @@ return Camera; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -7688,7 +7706,7 @@ return Camera3d; }); /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo-cmd.min.js b/build/cmd/hilo-cmd.min.js index 2a330926..f78aee63 100644 --- a/build/cmd/hilo-cmd.min.js +++ b/build/cmd/hilo-cmd.min.js @@ -1,8 +1,8 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ -define(function(t,e,i){var r=function(){var t=navigator.userAgent,e=document,i=window,r=e.documentElement,n={iphone:/iphone/i.test(t),ipad:/ipad/i.test(t),ipod:/ipod/i.test(t),ios:/iphone|ipad|ipod/i.test(t),android:/android/i.test(t),webkit:/webkit/i.test(t),chrome:/chrome/i.test(t),safari:/safari/i.test(t),firefox:/firefox/i.test(t),ie:/msie/i.test(t),opera:/opera/i.test(t),supportTouch:"ontouchstart"in i,supportCanvas:null!=e.createElement("canvas").getContext,supportStorage:!1,supportOrientation:"orientation"in i||"orientation"in i.screen,supportDeviceMotion:"ondevicemotion"in i};try{var a="hilo";localStorage.setItem(a,a),localStorage.removeItem(a),n.supportStorage=!0}catch(o){}var s=n.jsVendor=n.webkit?"webkit":n.firefox?"webkit":n.opera?"o":n.ie?"ms":"",h=n.cssVendor="-"+s+"-",l=e.createElement("div"),c=l.style,u=void 0!=c[s+"Transform"],d=void 0!=c[s+"Perspective"];return d&&(l.id="test3d",c=e.createElement("style"),c.textContent="@media ("+h+"transform-3d){#test3d{height:3px}}",e.head.appendChild(c),r.appendChild(l),d=3==l.offsetHeight,e.head.removeChild(c),r.removeChild(l)),n.supportTransform=u,n.supportTransform3D=d,n}();return r}),define(function(t,e,i){var r={copy:function(t,e,i){for(var r in e)i&&!t.hasOwnProperty(r)&&void 0===t[r]||(t[r]=e[r]);return t}};return r}),define(function(t,e,i){var r=t("hilo/util/browser"),n=t("hilo/util/util"),a=window,o=document,s=o.documentElement,h=0,l={},c={version:"1.1.4",getUid:function(t){var e=++h;if(t){var i=t.charCodeAt(t.length-1);return i>=48&&i<=57&&(t+="_"),t+e}return e},viewToString:function(t){for(var e,i=t;i;)e=e?i.id+"."+e:i.id,i=i.parent;return e},copy:function(t,e,i){return n.copy(t,e,i),l.copy||(l.copy=!0,console.warn("Hilo.copy has been Deprecated! Use Hilo.util.copy instead.")),t},browser:r,event:function(){var t="ontouchstart"in a;return{POINTER_START:t?"touchstart":"mousedown",POINTER_MOVE:t?"touchmove":"mousemove",POINTER_END:t?"touchend":"mouseup"}}(),align:{TOP_LEFT:"TL",TOP:"T",TOP_RIGHT:"TR",LEFT:"L",CENTER:"C",RIGHT:"R",BOTTOM_LEFT:"BL",BOTTOM:"B",BOTTOM_RIGHT:"BR"},getElementRect:function(t){var e;try{e=t.getBoundingClientRect()}catch(i){e={top:t.offsetTop,left:t.offsetLeft,right:t.offsetLeft+t.offsetWidth,bottom:t.offsetTop+t.offsetHeight}}var r=(a.pageXOffset||s.scrollLeft)-(s.clientLeft||0)||0,n=(a.pageYOffset||s.scrollTop)-(s.clientTop||0)||0,o=a.getComputedStyle?getComputedStyle(t):t.currentStyle,h=parseInt,l=h(o.paddingLeft)+h(o.borderLeftWidth)||0,c=h(o.paddingTop)+h(o.borderTopWidth)||0,u=h(o.paddingRight)+h(o.borderRightWidth)||0,d=h(o.paddingBottom)+h(o.borderBottomWidth)||0,f=e.top||0,p=e.left||0,v=e.right||0,m=e.bottom||0;return{left:p+r+l,top:f+n+c,width:v-u-p-l,height:m-d-f-c}},createElement:function(t,e){var i,r,n,a=o.createElement(t);for(i in e)if(r=e[i],"style"===i)for(n in r)a.style[n]=r[n];else a[i]=r;return a},getElement:function(t){return o.getElementById(t)},setElementStyleByView:function(t){var e=t.drawable,i=e.domElement.style,r=t._stateCache||(t._stateCache={}),n=c.browser.jsVendor,a="px",o=!1;if(this.cacheStateIfChanged(t,["visible"],r)&&(i.display=t.visible?"":"none"),this.cacheStateIfChanged(t,["alpha"],r)&&(i.opacity=t.alpha),t.visible&&!(t.alpha<=0)){this.cacheStateIfChanged(t,["width"],r)&&(i.width=t.width+a),this.cacheStateIfChanged(t,["height"],r)&&(i.height=t.height+a),this.cacheStateIfChanged(t,["depth"],r)&&(i.zIndex=t.depth+1),(o=this.cacheStateIfChanged(t,["pivotX","pivotY"],r))&&(i[n+"TransformOrigin"]=t.pivotX+a+" "+t.pivotY+a),(this.cacheStateIfChanged(t,["x","y","rotation","scaleX","scaleY"],r)||o)&&(i[n+"Transform"]=this.getTransformCSS(t)),this.cacheStateIfChanged(t,["background"],r)&&(i.backgroundColor=t.background),i.pointerEvents||(i.pointerEvents="none");var s=e.image;if(s){var h=s.src;h!==r.image&&(r.image=h,i.backgroundImage="url("+h+")");var l=e.rect;if(l){var u=l[0],d=l[1];u!==r.sx&&(r.sx=u,i.backgroundPositionX=-u+a),d!==r.sy&&(r.sy=d,i.backgroundPositionY=-d+a)}}var f=t.mask;if(f){var p=f.drawable.domElement.style.backgroundImage;p!==r.maskImage&&(r.maskImage=p,i[n+"MaskImage"]=p,i[n+"MaskRepeat"]="no-repeat");var v=f.x,m=f.y;v===r.maskX&&m===r.maskY||(r.maskX=v,r.maskY=m,i[n+"MaskPosition"]=v+a+" "+m+a)}}},cacheStateIfChanged:function(t,e,i){var r,n,a,o,s=!1;for(r=0,n=e.length;r=6?(e=s[0],i=s[1],r=s[2],n=s[3],a=s[4],o=s[5]):(e=t.a,i=t.b,r=t.c,n=t.d,a=t.tx,o=t.ty),this.a=h*e+l*r,this.b=h*i+l*n,this.c=c*e+u*r,this.d=c*i+u*n,this.tx=d*e+f*r+a,this.ty=d*i+f*n+o,this},rotate:function(t){var e=Math.sin(t),i=Math.cos(t),r=this.a,n=this.b,a=this.c,o=this.d,s=this.tx,h=this.ty;return this.a=r*i-n*e,this.b=r*e+n*i,this.c=a*i-o*e,this.d=a*e+o*i,this.tx=s*i-h*e,this.ty=s*e+h*i,this},scale:function(t,e){return this.a*=t,this.d*=e,this.c*=t,this.b*=e,this.tx*=t,this.ty*=e,this},translate:function(t,e){return this.tx+=t,this.ty+=e,this},identity:function(){return this.a=this.d=1,this.b=this.c=this.tx=this.ty=0,this},invert:function(){var t=this.a,e=this.b,i=this.c,r=this.d,n=this.tx,a=t*r-e*i;return this.a=r/a,this.b=-e/a,this.c=-i/a,this.d=t/a,this.tx=(i*this.ty-r*n)/a,this.ty=-(t*this.ty-e*n)/a,this},transformPoint:function(t,e,i){var r=t.x*this.a+t.y*this.c+this.tx,n=t.x*this.b+t.y*this.d+this.ty;return e&&(r=r+.5>>0,n=n+.5>>0),i?{x:r,y:n}:(t.x=r,t.y=n,t)}});return n}),define(function(t,e,i){var r=t("hilo/core/Class"),n={_listeners:null,on:function(t,e,i){for(var r=this._listeners=this._listeners||{},n=r[t]=r[t]||[],a=0,o=n.length;a-1&&o.splice(c,1)}}return 0==o.length&&delete n[r],!0}return!1}},a=r.create({constructor:function(t,e,i){this.type=t,this.target=e,this.detail=i,this.timeStamp=+new Date},type:null,target:null,detail:null,timeStamp:0,stopImmediatePropagation:function(){this._stopped=!0}}),o=window.Event;if(o){var s=o.prototype,h=s.stopImmediatePropagation;s.stopImmediatePropagation=function(){h&&h.call(this),this._stopped=!0}}return n}),define(function(t,e,i){var r=t("hilo/core/Class"),n=t("hilo/util/util"),a=r.create({constructor:function(t){this.init(t)},image:null,rect:null,init:function(t){var e=this,i=e.image;a.isDrawable(t)?e.image=t:n.copy(e,t,!0);var r=e.image;if("string"==typeof r){if(!i||r!==i.getAttribute("src")){e.image=null;var o=new Image;return t.crossOrigin&&(o.crossOrigin=t.crossOrigin),o.onload=function(){o.onload=null,e.init(o)},void(o.src=r)}r=e.image=i}r&&!e.rect&&(e.rect=[0,0,r.width,r.height])},Statics:{isDrawable:function(t){if(!t||!t.tagName)return!1;var e=t.tagName.toLowerCase();return"img"===e||"canvas"===e||"video"===e}}});return a}),define(function(t,e,i){var r=t("hilo/core/Class"),n=t("hilo/util/util"),a=r.create({constructor:function(t){t=t||{},n.copy(this,t,!0)},renderType:null,canvas:null,stage:null,blendMode:"source-over",startDraw:function(t){},draw:function(t){},endDraw:function(t){},transform:function(){},hide:function(){},remove:function(t){},clear:function(t,e,i,r){},resize:function(t,e){}});return a}),define(function(t,e,i){var r=t("hilo/core/Class"),n=t("hilo/core/Hilo"),a=t("hilo/renderer/Renderer"),o=r.create({Extends:a,constructor:function(t){o.superclass.constructor.call(this,t),this.context=this.canvas.getContext("2d")},renderType:"canvas",context:null,startDraw:function(t){return!!(t.visible&&t.alpha>0)&&(t===this.stage&&this.context.clearRect(0,0,t.width,t.height),t.blendMode!==this.blendMode&&(this.context.globalCompositeOperation=this.blendMode=t.blendMode),this.context.save(),!0)},draw:function(t){var e=this.context,i=t.width,r=t.height,n=t.background;n&&(e.fillStyle=n,e.fillRect(0,0,i,r));var a=t.drawable,o=a&&a.image;if(o){var s=a.rect,h=s[2],l=s[3],c=s[4],u=s[5];if(!h||!l)return;i||r||(i=t.width=h,r=t.height=l),(c||u)&&e.translate(c-.5*h,u-.5*l),e.drawImage(o,s[0],s[1],h,l,0,0,i,r)}},endDraw:function(t){this.context.restore()},transform:function(t){var e=t.drawable;if(e&&e.domElement)return void n.setElementStyleByView(t);var i=this.context,r=t.scaleX,a=t.scaleY;if(t===this.stage){var o=this.canvas.style,s=t._scaleX,h=t._scaleY,l=!1;(!s&&1!=r||s&&s!=r)&&(t._scaleX=r,o.width=r*t.width+"px",l=!0),(!h&&1!=a||h&&h!=a)&&(t._scaleY=a,o.height=a*t.height+"px",l=!0),l&&t.updateViewport()}else{var c=t.x,u=t.y,d=t.pivotX,f=t.pivotY,p=t.rotation%360,v=t.mask;v&&(v._render(this),i.clip());var m=t.align;if(m)if("function"==typeof m)t.align();else{var _=t.parent;if(_){var g=t.width,x=t.height,y=_.width,w=_.height;switch(m){case"TL":c=0,u=0;break;case"T":c=y-g>>1,u=0;break;case"TR":c=y-g,u=0;break;case"L":c=0,u=w-x>>1;break;case"C":c=y-g>>1,u=w-x>>1;break;case"R":c=y-g,u=w-x>>1;break;case"BL":c=0,u=w-x;break;case"B":c=y-g>>1,u=w-x;break;case"BR":c=y-g,u=w-x}}}0==c&&0==u||i.translate(c,u),0!=p&&i.rotate(p*Math.PI/180),1==r&&1==a||i.scale(r,a),0==d&&0==f||i.translate(-d,-f)}t.alpha>0&&(i.globalAlpha*=t.alpha)},remove:function(t){var e=t.drawable,i=e&&e.domElement;if(i){var r=i.parentNode;r&&r.removeChild(i)}},clear:function(t,e,i,r){this.context.clearRect(t,e,i,r)},resize:function(t,e){var i=this.canvas,r=this.stage,n=i.style;i.width=t,i.height=e,n.width=r.width*r.scaleX+"px",n.height=r.height*r.scaleY+"px"}});return o}),define(function(t,e,i){var r=t("hilo/core/Class"),n=t("hilo/core/Hilo"),a=t("hilo/renderer/Renderer"),o=t("hilo/view/Drawable"),s=function(){function t(t,e){var i=t.tagName||"div",r=e.image,a=t.width||r&&r.width,o=t.height||r&&r.height,s=n.createElement(i),h=s.style;if(t.id&&(s.id=t.id),h.position="absolute",h.left=(t.left||0)+"px",h.top=(t.top||0)+"px",h.width=a+"px",h.height=o+"px","canvas"==i){if(s.width=a,s.height=o,r){var l=s.getContext("2d"),c=e.rect||[0,0,a,o];l.drawImage(r,c[0],c[1],c[2],c[3],t.x||0,t.y||0,t.width||c[2],t.height||c[3])}}else if(h.opacity=void 0!=t.alpha?t.alpha:1,(t===this.stage||t.clipChildren)&&(h.overflow="hidden"),r&&r.src){h.backgroundImage="url("+r.src+")";var u=t.rectX||0,d=t.rectY||0;h.backgroundPosition=-u+"px "+-d+"px"}return s}return r.create({Extends:a,constructor:function(t){s.superclass.constructor.call(this,t)},renderType:"dom",startDraw:function(e){var i=e.drawable=e.drawable||new o;return i.domElement=i.domElement||t(e,i),!0},draw:function(t){var e=t.parent,i=t.drawable.domElement,r=i.parentNode;if(e){var n=e.drawable.domElement;if(n!=r&&n.appendChild(i),!t.width&&!t.height){var a=t.drawable.rect;a&&(a[2]||a[3])&&(t.width=a[2],t.height=a[3])}}else t!==this.stage||r||(i.style.overflow="hidden",this.canvas.appendChild(i))},transform:function(t){if(n.setElementStyleByView(t),t===this.stage){var e=this.canvas.style,i=t._scaleX,r=t._scaleY,a=t.scaleX,o=t.scaleY;(!i&&1!=a||i&&i!=a)&&(t._scaleX=a,e.width=a*t.width+"px"),(!r&&1!=o||r&&r!=o)&&(t._scaleY=o,e.height=o*t.height+"px")}},remove:function(t){var e=t.drawable,i=e&&e.domElement;if(i){var r=i.parentNode;r&&r.removeChild(i)}},hide:function(t){var e=t.drawable&&t.drawable.domElement;e&&(e.style.display="none")},resize:function(t,e){var i=this.canvas.style;i.width=t+"px",i.height=e+"px","absolute"!=i.position&&(i.position="relative")}})}();return s}),define(function(t,e,i){var r=t("hilo/core/Class"),n=t("hilo/core/Hilo"),a=t("hilo/renderer/Renderer"),o=t("hilo/geom/Matrix"),s=Math.PI/180,h=r.create({Extends:a,Statics:{MAX_BATCH_NUM:2e3,ATTRIBUTE_NUM:5,isSupport:function(){if(void 0==this._isSupported){var t=document.createElement("canvas");t.getContext&&(t.getContext("webgl")||t.getContext("experimental-webgl"))?this._isSupported=!0:this._isSupported=!1}return this._isSupported}},renderType:"webgl",gl:null,_isContextLost:!1,_cacheTexture:{},constructor:function(t){h.superclass.constructor.call(this,t);var e=this;this.gl=this.canvas.getContext("webgl")||this.canvas.getContext("experimental-webgl"),this.maxBatchNum=h.MAX_BATCH_NUM,this.positionStride=4*h.ATTRIBUTE_NUM;var i=this.maxBatchNum*h.ATTRIBUTE_NUM*4,r=6*this.maxBatchNum;this.arrayBuffer=new ArrayBuffer(4*i),this.float32Array=new Float32Array(this.arrayBuffer),this.uint32Array=new Uint32Array(this.arrayBuffer),this.indexs=new Uint16Array(r);for(var n=0,a=0;n0)&&(t===this.stage&&this.clear(),!0)},draw:function(t){var e=t.width,i=t.height,r=(t.background,t.drawable),n=r&&r.image;if(n){var a=r.rect,o=a[2],s=a[3];e||i||(e=t.width=o,i=t.height=s),this.batchIndex>=this.maxBatchNum&&this._renderBatches();var h=this._createVertexs(n,a[0],a[1],o,s,0,0,e,i),l=this.batchIndex*this.positionStride,c=this.float32Array,u=this.uint32Array,d=(t.tint>>16)+(65280&t.tint)+((255&t.tint)<<16)+(255*t.__webglRenderAlpha<<24);c[l+0]=h[0],c[l+1]=h[1],c[l+2]=h[2],c[l+3]=h[3],u[l+4]=d,c[l+5]=h[4],c[l+6]=h[5],c[l+7]=h[6],c[l+8]=h[7],u[l+9]=d,c[l+10]=h[8],c[l+11]=h[9],c[l+12]=h[10],c[l+13]=h[11],u[l+14]=d,c[l+15]=h[12],c[l+16]=h[13],c[l+17]=h[14],c[l+18]=h[15],u[l+19]=d;for(var f=t.__webglWorldMatrix,p=0;p<4;p++){var v=c[l+5*p],m=c[l+5*p+1];c[l+5*p]=f.a*v+f.c*m+f.tx,c[l+5*p+1]=f.b*v+f.d*m+f.ty}t.__textureImage=n,this.sprites[this.batchIndex++]=t}},endDraw:function(t){t===this.stage&&this._renderBatches()},transform:function(t){var e=t.drawable;if(e&&e.domElement)return void n.setElementStyleByView(t);var i=t.scaleX,r=t.scaleY;if(t===this.stage){var a=this.canvas.style,s=t._scaleX,h=t._scaleY,l=!1;(!s&&1!=i||s&&s!=i)&&(t._scaleX=i,a.width=i*t.width+"px",l=!0),(!h&&1!=r||h&&h!=r)&&(t._scaleY=r,a.height=r*t.height+"px",l=!0),l&&t.updateViewport(),t.__webglWorldMatrix=t.__webglWorldMatrix||new o(1,0,0,1,0,0)}else t.parent&&(t.__webglWorldMatrix=t.__webglWorldMatrix||new o(1,0,0,1,0,0),this._setConcatenatedMatrix(t,t.parent));t.alpha>0&&(t.parent&&t.parent.__webglRenderAlpha?t.__webglRenderAlpha=t.alpha*t.parent.__webglRenderAlpha:t.__webglRenderAlpha=t.alpha)},remove:function(t){var e=t.drawable,i=e&&e.domElement;if(i){var r=i.parentNode;r&&r.removeChild(i)}},clear:function(t,e,i,r){this.gl.clear(this.gl.COLOR_BUFFER_BIT)},resize:function(t,e){if(this.width!==t||this.height!==e){var i=this.canvas,r=this.stage,n=i.style;this.width=i.width=t,this.height=i.height=e,n.width=r.width*r.scaleX+"px",n.height=r.height*r.scaleY+"px",this.gl.viewport(0,0,t,e),this.canvasHalfWidth=.5*t,this.canvasHalfHeight=.5*e,this._uploadProjectionTransform(!0)}},_renderBatches:function(){var t=this.gl;t.bufferSubData(t.ARRAY_BUFFER,0,this.uint32Array.subarray(0,this.batchIndex*this.positionStride));for(var e=0,i=0,r=null,n=0;n0&&(i.bindTexture(i.TEXTURE_2D,this._getTexture(this.sprites[t])),i.drawElements(i.TRIANGLES,6*r,i.UNSIGNED_SHORT,6*t*2))},_uploadProjectionTransform:function(t){this._projectionTransformElements&&!t||(this._projectionTransformElements=new Float32Array([1/this.canvasHalfWidth,0,0,0,-1/this.canvasHalfHeight,0,-1,1,1])),this.gl.uniformMatrix3fv(this.u_projectionTransform,!1,this._projectionTransformElements)},_initShaders:function(){var t=" attribute vec2 a_position;\n attribute vec2 a_TexCoord;\n attribute vec4 a_tint;\n uniform mat3 u_projectionTransform;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_Position = vec4((u_projectionTransform * vec3(a_position, 1.0)).xy, 1.0, 1.0);\n v_TexCoord = a_TexCoord;\n v_tint = vec4(a_tint.rgb * a_tint.a, a_tint.a);\n }\n ",e="\n precision mediump float;\n uniform sampler2D u_Sampler;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_FragColor = texture2D(u_Sampler, v_TexCoord) * v_tint;\n }\n ";this.defaultShader=new l(this,{v:t,f:e},{attributes:["a_position","a_TexCoord","a_tint"],uniforms:["u_projectionTransform","u_Sampler"]})},_createVertexs:function(t,e,i,r,n,a,o,s,h){var l=this.__tempVertexs||[],c=t.width,u=t.height;r/=c,n/=u,e/=c,i/=u,s=s,h=h,a=a,o=o,r+e>1&&(r=1-e),n+i>1&&(n=1-i);var d=0;return l[d++]=a,l[d++]=o,l[d++]=e,l[d++]=i,l[d++]=a+s,l[d++]=o,l[d++]=e+r,l[d++]=i,l[d++]=a,l[d++]=o+h,l[d++]=e,l[d++]=i+n,l[d++]=a+s,l[d++]=o+h,l[d++]=e+r,l[d++]=i+n,l},_setConcatenatedMatrix:function(t,e){var i=t.__webglWorldMatrix,r=1,n=0,a=t.rotation%360,o=t.pivotX,h=t.pivotY,l=t.scaleX,c=t.scaleY;if(a){var u=a*s;r=Math.cos(u),n=Math.sin(u)}i.a=r*l,i.b=n*l,i.c=-n*c,i.d=r*c,i.tx=t.x-i.a*o-i.c*h,i.ty=t.y-i.b*o-i.d*h,i.concat(e.__webglWorldMatrix)},_getTexture:function(t){var e=t.__textureImage,i=this._cacheTexture[e.src];return i||(i=this.activeShader.uploadTexture(e)),i}}),l=function(t,e,i){this.renderer=t,this.gl=t.gl,this.program=this._createProgram(this.gl,e.v,e.f),i=i||{},this.attributes=i.attributes||[],this.uniforms=i.uniforms||[]};return l.prototype={active:function(){var t=this,e=t.renderer,i=t.gl,r=t.program;r&&i&&(e.activeShader=t,i.useProgram(r),t.attributes.forEach(function(t){e[t]=i.getAttribLocation(r,t),i.enableVertexAttribArray(e[t])}),t.uniforms.forEach(function(t){e[t]=i.getUniformLocation(r,t)}),t.width===e.width&&t.height===e.height||(t.width=e.width,t.height=e.height,e._uploadProjectionTransform()))},uploadTexture:function(t){var e=this.gl,i=this.renderer,r=e.createTexture(),n=i.u_Sampler;return e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,r),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,1),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.uniform1i(n,0),e.bindTexture(e.TEXTURE_2D,null),this.renderer._cacheTexture[t.src]=r,r},_createProgram:function(t,e,i){var r=this._createShader(t,t.VERTEX_SHADER,e),n=this._createShader(t,t.FRAGMENT_SHADER,i);if(!r||!n)return null;var a=t.createProgram();if(a){t.attachShader(a,r),t.attachShader(a,n),t.linkProgram(a),t.deleteShader(n),t.deleteShader(r);var o=t.getProgramParameter(a,t.LINK_STATUS);if(!o){var s=t.getProgramInfoLog(a);return console.log("Failed to link program: "+s),t.deleteProgram(a),null}}return a},_createShader:function(t,e,i){var r=t.createShader(e);if(r){t.shaderSource(r,i),t.compileShader(r);var n=t.getShaderParameter(r,t.COMPILE_STATUS);if(!n){var a=t.getShaderInfoLog(r);return console.log("Failed to compile shader: "+a),t.deleteShader(r),null}}return r}},h}),define(function(t,e,i){var r=t("hilo/core/Hilo"),n=t("hilo/core/Class"),a=t("hilo/event/EventMixin"),o=t("hilo/geom/Matrix"),s=t("hilo/util/util"),h=function(){function t(t,e,i){for(var r,n,a,o,s=0,h=!1,l=0,c=i.length;ld.x?(r=d.x,n=u.x):(r=u.x,n=d.x),t>=r&&t<=n))h=!0;else if(u.y>d.y?(a=d.y,o=u.y):(a=u.y,o=d.y),!(eo)){var f=(e-u.y)*(d.x-u.x)/(d.y-u.y)+u.x;if(f>t?s++:f==t&&(h=!0),u.x>t&&u.y==e){var p=i[(c+l-1)%c];(p.ye||p.y>e&&d.ys?s=c:cl?l=c:c=0)return!1;u>i.overlap&&(i.overlap=u,i.normal.x=p.x,i.normal.y=p.y)}return i}return n.create({Mixes:a,constructor:function(t){t=t||{},this.id=this.id||t.id||r.getUid("View"),s.copy(this,t,!0)},tint:16777215,id:null,x:0,y:0,width:0,height:0,alpha:1,rotation:0,visible:!0,pivotX:0,pivotY:0,scaleX:1,scaleY:1,pointerEnabled:!0,background:null,mask:null,align:null,drawable:null,boundsArea:null,parent:null,depth:-1,blendMode:"source-over",getStage:function(){for(var t,e=this;t=e.parent;)e=t;return e.canvas?e:null},getScaledWidth:function(){return this.width*this.scaleX},getScaledHeight:function(){return this.height*this.scaleY},addTo:function(t,e){return"number"==typeof e?t.addChildAt(this,e):t.addChild(this),this},removeFromParent:function(){var t=this.parent;return t&&t.removeChild(this),this},getBounds:function(){for(var t,e,i,r,n,a,o,s=this.width,h=this.height,l=this.getConcatenatedMatrix(),c=this.boundsArea||[{x:0,y:0},{x:s,y:0},{x:s,y:h},{x:0,y:h}],u=[],d=0,f=c.length;de?r=e:ni?a=i:o=n.x&&e<=n.x+n.width&&i>=n.y&&i<=n.y+n.height;return a&&r&&(a=t(e,i,n)),a},hitTestObject:function(t,i){var r=this.getBounds(),n=t.getBounds(),a=r.x<=n.x+n.width&&n.x<=r.x+r.width&&r.y<=n.y+n.height&&n.y<=r.y+r.height;return a&&i&&(a=e(r,n)),!!a},_render:function(t,e){this.onUpdate&&this.onUpdate(e)===!1||!t.startDraw(this)||(t.transform(this),this.render(t,e),t.endDraw(this))},_fireMouseEvent:function(t){if(t.eventCurrentTarget=this,this.fire(t),"mousemove"==t.type){if(!this.__mouseOver){this.__mouseOver=!0;var e=s.copy({},t);e.type="mouseover",this.fire(e)}}else"mouseout"==t.type&&(this.__mouseOver=!1);var i=this.parent;t._stopped||t._stopPropagationed||!i||("mouseout"==t.type||"touchout"==t.type?i.hitTestPoint(t.stageX,t.stageY,!0)||i._fireMouseEvent(t):i._fireMouseEvent(t))},onUpdate:null,render:function(t,e){t.draw(this)},toString:function(){return r.viewToString(this)}})}();return h}),define(function(t,e,i){var r,n,a=t("hilo/view/Drawable"),o=t("hilo/util/browser"),s={_cacheDirty:!0,cache:function(t){(t||this._cacheDirty||!this.drawable)&&this.updateCache()},updateCache:function(){o.supportCanvas&&(r||(r=document.createElement("canvas"),n=r.getContext("2d")),r.width=this.width,r.height=this.height,this._draw(n),this.drawable=this.drawable||new a,this.drawable.init({image:r.toDataURL()}),this._cacheDirty=!1)},setCacheDirty:function(t){this._cacheDirty=t}};return s}),define(function(t,e,i){var r=t("hilo/core/Hilo"),n=t("hilo/core/Class"),a=t("hilo/view/View"),o=n.create({Extends:a,constructor:function(t){t=t||{},this.id=this.id||t.id||r.getUid("Container"),o.superclass.constructor.call(this,t),this.children?this._updateChildren():this.children=[]},children:null,pointerChildren:!0,clipChildren:!1,getNumChildren:function(){return this.children.length},addChildAt:function(t,e){var i=this.children,r=i.length,n=t.parent;e=e<0?0:e>r?r:e;var a=this.getChildIndex(t);if(a==e)return this;if(a>=0?(i.splice(a,1),e=e==r?r-1:e):n&&n.removeChild(t),i.splice(e,0,t),a<0)this._updateChildren(e);else{var o=a=e.length)return null;var i=e[t];if(i){if(!i.__renderer)for(var r=i;r=r.parent;){if(r.renderer){i.__renderer=r.renderer;break}if(r.__renderer){i.__renderer=r.__renderer;break}}i.__renderer&&i.__renderer.remove(i),i.parent=null,i.depth=-1}return e.splice(t,1),this._updateChildren(t),i},removeChild:function(t){return this.removeChildAt(this.getChildIndex(t))},removeChildById:function(t){for(var e,i=this.children,r=0,n=i.length;r=e.length?null:e[t]},getChildById:function(t){for(var e,i=this.children,r=0,n=i.length;r=0&&r!=e){var n=i.length;e=e<0?0:e>=n?n-1:e,i.splice(r,1),i.splice(e,0,t),this._updateChildren()}return this},swapChildren:function(t,e){var i=this.children,r=this.getChildIndex(t),n=this.getChildIndex(e);t.depth=n,i[n]=t,e.depth=r,i[r]=e},swapChildrenAt:function(t,e){var i=this.children,r=this.getChildAt(t),n=this.getChildAt(e);r.depth=e,i[e]=r,n.depth=t,i[t]=n},sortChildren:function(t){var e=t,i=this.children;if("string"==typeof e){var r=e;e=function(t,e){return e[r]-t[r]}}i.sort(e),this._updateChildren()},_updateChildren:function(t,e){var i,r=this.children;t=t||0,e=e||r.length;for(var n=t;n=0;l--)if(a=h[l],!(!a||!a.visible||a.alpha<=0||n&&!a.pointerEnabled))if(a.children&&a.children.length&&(!n||a.pointerChildren)&&(o=a.getViewAtPoint(t,e,i,r,n)),o){if(!r)return o;o.length&&(s=s.concat(o))}else if(a.hitTestPoint(t,e,i)){if(!r)return a;s.push(a)}return r&&s.length?s:null},render:function(t,e){o.superclass.render.call(this,t,e);var i,r,n,a=this.children.slice(0);for(i=0,r=a.length;ir?r:e,i[e]=t,t.name&&(this._frameNames[t.name]=t),(0!=e||this.width)&&this.height||(this.width=t.rect[2],this.height=t.rect[3]),this},getFrame:function(t){if("number"==typeof t){var e=this._frames;return t<0||t>=e.length?null:e[t]}return this._frameNames[t]},getFrameIndex:function(t){var e=this._frames,i=e.length,r=-1;if("number"==typeof t)r=t;else{var n="string"==typeof t?this._frameNames[t]:t;if(n)for(var a=0;a=i?i-1:r,this.paused=e,this._firstRender=!0,this},_render:function(t,e){var i,r=this.currentFrame;if(this._firstRender?(i=r,this._firstRender=!1):i=this._nextFrame(e),i!=r){this.currentFrame=i;var n=this._frames[i].callback;n&&n.call(this)}this.onEnterFrame&&this.onEnterFrame(i),this.drawable.init(this._frames[i]),s.superclass._render.call(this,t,e)},_nextFrame:function(t){var e=this._frames,i=e.length,r=this.currentFrame,n=e[r],a=n.duration||this.interval,o=this._frameElapsed,s=0!=r||this.drawable?o+(this.timeBased?t:1):0;return o=this._frameElapsed=s=i-1)&&this.stop(),this.paused||0!=o||(null!=n.next?r=this.getFrameIndex(n.next):r>=i-1?r=0:this.drawable&&r++),r},setFrameCallback:function(t,e){return t=this.getFrame(t),t&&(t.callback=e),this},onEnterFrame:null});return s}),define(function(t,e,i){var r=t("hilo/core/Hilo"),n=t("hilo/core/Class"),a=t("hilo/view/View"),o=t("hilo/view/Drawable"),s=n.create({Extends:a,constructor:function(t){t=t||{},this.id=this.id||t.id||r.getUid("DOMElement"),s.superclass.constructor.call(this,t),this.drawable=new o;var e=this.drawable.domElement=t.element||r.createElement("div");e.id=this.id,this.pointerEnabled&&(e.style.pointerEvents="visible")},_render:function(t,e){this.onUpdate&&this.onUpdate(e)===!1||(t.transform(this),this.visible&&this.alpha>0&&this.render(t,e))},render:function(t,e){if("dom"!==t.renderType){var i,r=t.canvas,n=this.drawable.domElement,a=this.depth,o=r.nextSibling;if(n.parentNode)return;for(;o&&3!=o.nodeType&&(i=parseInt(o.style.zIndex)||0,!(i<=0||i>a));)o=o.nextSibling;r.parentNode.insertBefore(this.drawable.domElement,o)}else t.draw(this)}});return s}),define(function(t,e,i){var r=t("hilo/core/Hilo"),n=t("hilo/core/Class"),a=t("hilo/view/View"),o=t("hilo/view/CacheMixin"),s=function(){var t=document.createElement("canvas"),e=t.getContext&&t.getContext("2d");return n.create({Extends:a,Mixes:o,constructor:function(t){t=t||{},this.id=this.id||t.id||r.getUid("Graphics"),s.superclass.constructor.call(this,t),this._actions=[]},lineWidth:1,lineAlpha:1,lineCap:null,lineJoin:null,miterLimit:10,hasStroke:!1,strokeStyle:"0",hasFill:!1,fillStyle:"0",fillAlpha:0,lineStyle:function(t,e,i,r,n,a){var o=this,s=o._addAction;return s.call(o,["lineWidth",o.lineWidth=t||1]),s.call(o,["strokeStyle",o.strokeStyle=e||"0"]),s.call(o,["lineAlpha",o.lineAlpha=i||1]),void 0!=r&&s.call(o,["lineCap",o.lineCap=r]),void 0!=n&&s.call(o,["lineJoin",o.lineJoin=n]),void 0!=a&&s.call(o,["miterLimit",o.miterLimit=a]),o.hasStroke=!0,o},beginFill:function(t,e){var i=this,r=i._addAction;return r.call(i,["fillStyle",i.fillStyle=t]),r.call(i,["fillAlpha",i.fillAlpha=e||1]),i.hasFill=!0,i},endFill:function(){var t=this,e=t._addAction;return t.hasStroke&&e.call(t,["stroke"]),t.hasFill&&e.call(t,["fill"]),t.setCacheDirty(!0),t},beginLinearGradientFill:function(t,i,r,n,a,o){for(var s=this,h=e.createLinearGradient(t,i,r,n),l=0,c=a.length;l1?a.slice(1):null;"function"==typeof t[o]?t[o].apply(t,s):t[o]=a[1]}},render:function(t,e){var i=this;"canvas"===t.renderType?i._draw(t.context):(i.cache(),t.draw(i))},clear:function(){var t=this;return t._actions.length=0,t.lineWidth=1,t.lineAlpha=1,t.lineCap=null,t.lineJoin=null,t.miterLimit=10,t.hasStroke=!1,t.strokeStyle="0",t.hasFill=!1,t.fillStyle="0",t.fillAlpha=1,t.setCacheDirty(!0),t},_addAction:function(t){var e=this;return e._actions.push(t),e}})}();return s}),define(function(t,e,i){var r=t("hilo/core/Class"),n=t("hilo/core/Hilo"),a=t("hilo/view/View"),o=t("hilo/view/CacheMixin"),s=r.create({Extends:a,Mixes:o,constructor:function(t){t=t||{},this.id=this.id||t.id||n.getUid("Text"),s.superclass.constructor.call(this,t),t.font||(this.font="12px arial"),this._fontHeight=s.measureFontHeight(this.font)},text:null,color:"#000",textAlign:null,textVAlign:null,outline:!1,lineSpacing:0,maxWidth:200,font:null,textWidth:0,textHeight:0,setFont:function(t){var e=this;return e.font!==t&&(e.font=t,e._fontHeight=s.measureFontHeight(t)),e},render:function(t,e){var i=this;if("canvas"===t.renderType)this.drawable?t.draw(i):i._draw(t.context);else if("dom"===t.renderType){var r=i.drawable,n=r.domElement,a=n.style;a.font=i.font,a.textAlign=i.textAlign,a.color=i.color,a.width=i.width+"px",a.height=i.height+"px",a.lineHeight=i._fontHeight+i.lineSpacing+"px",n.innerHTML=i.text,t.draw(this)}else i.cache(),t.draw(i)},_draw:function(t){var e=this,i=e.text.toString();if(i){t.font=e.font,t.textAlign=e.textAlign,t.textBaseline="top";var r,n,a,o,s,h=i.split(/\r\n|\r|\n|/),l=0,c=0,u=e._fontHeight+e.lineSpacing,d=[];for(r=0,o=h.length;re.maxWidth?(d.push({text:m,y:c}),l<_&&(l=_),c+=u,m=v):(_=f,m+=v),p==s-1&&(d.push({text:m,y:c}),m!==v&&l>1;break;case"bottom":g=e.height-e.textHeight}var x=e.background;for(x&&(t.fillStyle=x,t.fillRect(0,0,e.width,e.height)),e.outline?t.strokeStyle=e.color:t.fillStyle=e.color,r=0;r>1;break;case"right":case"end":n=a}r.outline?t.strokeText(e,n,i):t.fillText(e,n,i)},Statics:{measureFontHeight:function(t){var e,i=document.documentElement,r=n.createElement("div",{style:{font:t,position:"absolute"},innerHTML:"M"});return i.appendChild(r),e=r.offsetHeight,i.removeChild(r),e}}});return s}),define(function(t,e,i){var r=t("hilo/core/Class"),n=t("hilo/core/Hilo"),a=t("hilo/view/Container"),o=t("hilo/view/Bitmap"),s=r.create({Extends:a,constructor:function(t){t=t||{},this.id=this.id||t.id||n.getUid("BitmapText"),s.superclass.constructor.call(this,t);var e=t.text+"";e&&(this.text="",this.setText(e)),this.pointerChildren=!1},glyphs:null,letterSpacing:0,text:"",textAlign:"left",setText:function(t){var e=this,i=t.toString(),r=i.length;if(e.text!=i){e.text=i;var n,a,o,s,h=0,l=0,c=0;for(n=0;n0?e.letterSpacing:0),e.children[n]?(s=e.children[n],s.setImage(o.image,o.rect)):(s=e._createBitmap(o),e.addChild(s)),s.x=c,h=c+o.rect[2],l=Math.max(l,o.rect[3]));for(n=e.children.length-1;n>=r;n--)e._releaseBitmap(e.children[n]),e.children[n].removeFromParent();return e.width=h,e.height=l,this.setTextAlign(),e}},_createBitmap:function(t){var e;return s._pool.length?(e=s._pool.pop(),e.setImage(t.image,t.rect)):e=new o({image:t.image,rect:t.rect}),e},_releaseBitmap:function(t){s._pool.push(t)},setTextAlign:function(t){switch(this.textAlign=t||this.textAlign,this.textAlign){case"center":this.pivotX=.5*this.width;break;case"right":this.pivotX=this.width;break;case"left":default:this.pivotX=0}return this},hasGlyphs:function(t){var e=this.glyphs;if(!e)return!1;t=t.toString();var i,r=t.length;for(i=0;i=this._targetFPS?(this._measuredFPS=1e3/(this._tickTime/this._tickCount)+.5>>0,this._tickCount=0,this._tickTime=0):this._tickTime+=t-this._lastTime,this._lastTime=t;for(var r=i.slice(0),n=0,a=r.length;n=0&&e.splice(i,1)},nextTick:function(t){var e=this,i={tick:function(r){e.removeTick(i),t()}};return e.addTick(i),i},timeout:function(t,e){var i=this,r=(new Date).getTime()+e,n={tick:function(){var e=(new Date).getTime(),a=e-r;a>=0&&(i.removeTick(n),t())}};return i.addTick(n),n},interval:function(t,e){var i=this,r=(new Date).getTime()+e,n={tick:function(){var i=(new Date).getTime(),n=i-r;n>=0&&(n=r)return-1;for(e<0&&(e=r+e),i=e;i=1?1:s;var l=r.ease?r.ease(s):s;r.reverse&&(r._reverseFlag<0&&(s=1-s,l=1-l),s<1e-7&&(r.repeat>0&&r._repeatCount++>=r.repeat||0==r.repeat&&!r.loop?h=!0:(r._startTime=t(),r._pausedTime=0,r._reverseFlag*=-1))),0==r.time&&(o=r.onStart)&&o.call(r,r),r.time=a,r._render(l),(o=r.onUpdate)&&o.call(r,s,r),s>=1&&(r.reverse?(r._startTime=t(),r._pausedTime=0,r._reverseFlag*=-1):r.loop||r.repeat>0&&r._repeatCount++0&&u<=e?(c._render(s),c.time=a,n.add(c)):h&&(u<0||u>e)&&c.start()}return h?((o=r.onComplete)&&o.call(r,r),!0):void 0}}},Statics:{_tweens:[],tick:function(){var e,i,r=n._tweens,a=r.length;for(i=0;i-1&&r.splice(e,1);else for(e=0;e=i)return void t.fire("complete");if(t._currentIndexe.z})},tick:function(){this.sortZ()}});return o}();return a}),define(function(t,e,i){var r=t("hilo/core/Hilo"),n=t("hilo/core/Class"),a=t("hilo/view/View"),o=t("hilo/view/Container"),s=t("hilo/view/Drawable"),h=t("hilo/util/util"),l=function(){function t(t,e){return e?t+2*(Math.random()-.5)*e:t}for(var e=["x","y","vx","vy","ax","ay","rotation","rotationV","scale","scaleV","alpha","alphaV","life"],i=[],l=0,c=e.length;l=this._emitTime&&(this._currentRunTime=0,this._emitTime=t(this.emitTime,this.emitTimeVar),this._emit()),this._totalRunTime>=this.totalTime&&this.stop())},_emit:function(){for(var e=t(this.emitNum,this.emitNumVar)>>0,i=0;i=0;e--)this.children[e].destroy()}}),v=n.create({Extends:a,constructor:function(t){this.id=this.id||t.id||r.getUid("Particle"),v.superclass.constructor.call(this,t),this.init(t)},onUpdate:function(t){if(t*=.001,this._died)return!1;var e=this.ax+this.system.gx,i=this.ay+this.system.gy;return this.vx+=e*t,this.vy+=i*t,this.x+=this.vx*t,this.y+=this.vy*t,this.rotation+=this.rotationV,this._time>.1&&(this.alpha+=this.alphaV),this.scale+=this.scaleV,this.scaleX=this.scaleY=this.scale,this._time+=t,this._time>=this.life||this.alpha<=0?(this.destroy(),!1):void 0},setImage:function(t,e){this.drawable=this.drawable||new s,e=e||[0,0,t.width,t.height],this.width=e[2],this.height=e[3],this.drawable.rect=e,this.drawable.image=t},destroy:function(){this._died=!0,this.alpha=0,this.removeFromParent(),f.push(this)},init:function(e){this.system=e.system,this._died=!1,this._time=0,this.alpha=1;for(var r=0,n=i.length;r>0]),this.setImage(e.image,s),void 0!==e.pivotX&&(this.pivotX=e.pivotX*s[2]),void 0!==e.pivotY&&(this.pivotY=e.pivotY*s[3])}},Statics:{create:function(t){if(f.length>0){var e=f.pop();return e.init(t),e}return new v(t)}}});return p}();return l}); \ No newline at end of file +define(function(t,e,i){var r=function(){var t=navigator.userAgent,e=document,i=window,r=e.documentElement,n={iphone:/iphone/i.test(t),ipad:/ipad/i.test(t),ipod:/ipod/i.test(t),ios:/iphone|ipad|ipod/i.test(t),android:/android/i.test(t),webkit:/webkit/i.test(t),chrome:/chrome/i.test(t),safari:/safari/i.test(t),firefox:/firefox/i.test(t),ie:/msie/i.test(t),opera:/opera/i.test(t),supportTouch:"ontouchstart"in i,supportCanvas:null!=e.createElement("canvas").getContext,supportStorage:!1,supportOrientation:"orientation"in i||"orientation"in i.screen,supportDeviceMotion:"ondevicemotion"in i};try{var a="hilo";localStorage.setItem(a,a),localStorage.removeItem(a),n.supportStorage=!0}catch(o){}var s=n.jsVendor=n.webkit?"webkit":n.firefox?"webkit":n.opera?"o":n.ie?"ms":"",h=n.cssVendor="-"+s+"-",l=e.createElement("div"),c=l.style,u=void 0!=c[s+"Transform"],d=void 0!=c[s+"Perspective"];return d&&(l.id="test3d",c=e.createElement("style"),c.textContent="@media ("+h+"transform-3d){#test3d{height:3px}}",e.head.appendChild(c),r.appendChild(l),d=3==l.offsetHeight,e.head.removeChild(c),r.removeChild(l)),n.supportTransform=u,n.supportTransform3D=d,n}();return r}),define(function(t,e,i){var r={copy:function(t,e,i){for(var r in e)i&&!t.hasOwnProperty(r)&&void 0===t[r]||(t[r]=e[r]);return t}};return r}),define(function(t,e,i){var r=t("hilo/util/browser"),n=t("hilo/util/util"),a=window,o=document,s=o.documentElement,h=0,l={},c={version:"1.1.5",getUid:function(t){var e=++h;if(t){var i=t.charCodeAt(t.length-1);return i>=48&&i<=57&&(t+="_"),t+e}return e},viewToString:function(t){for(var e,i=t;i;)e=e?i.id+"."+e:i.id,i=i.parent;return e},copy:function(t,e,i){return n.copy(t,e,i),l.copy||(l.copy=!0,console.warn("Hilo.copy has been Deprecated! Use Hilo.util.copy instead.")),t},browser:r,event:function(){var t="ontouchstart"in a;return{POINTER_START:t?"touchstart":"mousedown",POINTER_MOVE:t?"touchmove":"mousemove",POINTER_END:t?"touchend":"mouseup"}}(),align:{TOP_LEFT:"TL",TOP:"T",TOP_RIGHT:"TR",LEFT:"L",CENTER:"C",RIGHT:"R",BOTTOM_LEFT:"BL",BOTTOM:"B",BOTTOM_RIGHT:"BR"},getElementRect:function(t){var e;try{e=t.getBoundingClientRect()}catch(i){e={top:t.offsetTop,left:t.offsetLeft,right:t.offsetLeft+t.offsetWidth,bottom:t.offsetTop+t.offsetHeight}}var r=(a.pageXOffset||s.scrollLeft)-(s.clientLeft||0)||0,n=(a.pageYOffset||s.scrollTop)-(s.clientTop||0)||0,o=a.getComputedStyle?getComputedStyle(t):t.currentStyle,h=parseInt,l=h(o.paddingLeft)+h(o.borderLeftWidth)||0,c=h(o.paddingTop)+h(o.borderTopWidth)||0,u=h(o.paddingRight)+h(o.borderRightWidth)||0,d=h(o.paddingBottom)+h(o.borderBottomWidth)||0,f=e.top||0,p=e.left||0,v=e.right||0,m=e.bottom||0;return{left:p+r+l,top:f+n+c,width:v-u-p-l,height:m-d-f-c}},createElement:function(t,e){var i,r,n,a=o.createElement(t);for(i in e)if(r=e[i],"style"===i)for(n in r)a.style[n]=r[n];else a[i]=r;return a},getElement:function(t){return o.getElementById(t)},setElementStyleByView:function(t){var e=t.drawable,i=e.domElement.style,r=t._stateCache||(t._stateCache={}),n=c.browser.jsVendor,a="px",o=!1;if(this.cacheStateIfChanged(t,["visible"],r)&&(i.display=t.visible?"":"none"),this.cacheStateIfChanged(t,["alpha"],r)&&(i.opacity=t.alpha),t.visible&&!(t.alpha<=0)){this.cacheStateIfChanged(t,["width"],r)&&(i.width=t.width+a),this.cacheStateIfChanged(t,["height"],r)&&(i.height=t.height+a),this.cacheStateIfChanged(t,["depth"],r)&&(i.zIndex=t.depth+1),(o=this.cacheStateIfChanged(t,["pivotX","pivotY"],r))&&(i[n+"TransformOrigin"]=t.pivotX+a+" "+t.pivotY+a),(this.cacheStateIfChanged(t,["x","y","rotation","scaleX","scaleY"],r)||o)&&(i[n+"Transform"]=this.getTransformCSS(t)),this.cacheStateIfChanged(t,["background"],r)&&(i.backgroundColor=t.background),i.pointerEvents||(i.pointerEvents="none");var s=e.image;if(s){var h=s.src;h!==r.image&&(r.image=h,i.backgroundImage="url("+h+")");var l=e.rect;if(l){var u=l[0],d=l[1];u!==r.sx&&(r.sx=u,i.backgroundPositionX=-u+a),d!==r.sy&&(r.sy=d,i.backgroundPositionY=-d+a)}}var f=t.mask;if(f){var p=f.drawable.domElement.style.backgroundImage;p!==r.maskImage&&(r.maskImage=p,i[n+"MaskImage"]=p,i[n+"MaskRepeat"]="no-repeat");var v=f.x,m=f.y;v===r.maskX&&m===r.maskY||(r.maskX=v,r.maskY=m,i[n+"MaskPosition"]=v+a+" "+m+a)}}},cacheStateIfChanged:function(t,e,i){var r,n,a,o,s=!1;for(r=0,n=e.length;r=6?(e=s[0],i=s[1],r=s[2],n=s[3],a=s[4],o=s[5]):(e=t.a,i=t.b,r=t.c,n=t.d,a=t.tx,o=t.ty),this.a=h*e+l*r,this.b=h*i+l*n,this.c=c*e+u*r,this.d=c*i+u*n,this.tx=d*e+f*r+a,this.ty=d*i+f*n+o,this},rotate:function(t){var e=Math.sin(t),i=Math.cos(t),r=this.a,n=this.b,a=this.c,o=this.d,s=this.tx,h=this.ty;return this.a=r*i-n*e,this.b=r*e+n*i,this.c=a*i-o*e,this.d=a*e+o*i,this.tx=s*i-h*e,this.ty=s*e+h*i,this},scale:function(t,e){return this.a*=t,this.d*=e,this.c*=t,this.b*=e,this.tx*=t,this.ty*=e,this},translate:function(t,e){return this.tx+=t,this.ty+=e,this},identity:function(){return this.a=this.d=1,this.b=this.c=this.tx=this.ty=0,this},invert:function(){var t=this.a,e=this.b,i=this.c,r=this.d,n=this.tx,a=t*r-e*i;return this.a=r/a,this.b=-e/a,this.c=-i/a,this.d=t/a,this.tx=(i*this.ty-r*n)/a,this.ty=-(t*this.ty-e*n)/a,this},transformPoint:function(t,e,i){var r=t.x*this.a+t.y*this.c+this.tx,n=t.x*this.b+t.y*this.d+this.ty;return e&&(r=r+.5>>0,n=n+.5>>0),i?{x:r,y:n}:(t.x=r,t.y=n,t)}});return n}),define(function(t,e,i){var r=t("hilo/core/Class"),n={_listeners:null,on:function(t,e,i){for(var r=this._listeners=this._listeners||{},n=r[t]=r[t]||[],a=0,o=n.length;a-1&&o.splice(c,1)}}return 0==o.length&&delete n[r],!0}return!1}},a=r.create({constructor:function(t,e,i){this.type=t,this.target=e,this.detail=i,this.timeStamp=+new Date},type:null,target:null,detail:null,timeStamp:0,stopImmediatePropagation:function(){this._stopped=!0}}),o=window.Event;if(o){var s=o.prototype,h=s.stopImmediatePropagation;s.stopImmediatePropagation=function(){h&&h.call(this),this._stopped=!0}}return n}),define(function(t,e,i){var r=t("hilo/core/Class"),n=t("hilo/util/util"),a=r.create({constructor:function(t){this.init(t)},image:null,rect:null,init:function(t){var e=this,i=e.image;a.isDrawable(t)?e.image=t:n.copy(e,t,!0);var r=e.image;if("string"==typeof r){if(!i||r!==i.getAttribute("src")){e.image=null;var o=new Image;return t.crossOrigin&&(o.crossOrigin=t.crossOrigin),o.onload=function(){o.onload=null,e.init(o)},void(o.src=r)}r=e.image=i}r&&!e.rect&&(e.rect=[0,0,r.width,r.height])},Statics:{isDrawable:function(t){if(!t||!t.tagName)return!1;var e=t.tagName.toLowerCase();return"img"===e||"canvas"===e||"video"===e}}});return a}),define(function(t,e,i){var r=t("hilo/core/Class"),n=t("hilo/util/util"),a=r.create({constructor:function(t){t=t||{},n.copy(this,t,!0)},renderType:null,canvas:null,stage:null,blendMode:"source-over",startDraw:function(t){},draw:function(t){},endDraw:function(t){},transform:function(){},hide:function(){},remove:function(t){},clear:function(t,e,i,r){},resize:function(t,e){}});return a}),define(function(t,e,i){var r=t("hilo/core/Class"),n=t("hilo/core/Hilo"),a=t("hilo/renderer/Renderer"),o=r.create({Extends:a,constructor:function(t){o.superclass.constructor.call(this,t),this.context=this.canvas.getContext("2d")},renderType:"canvas",context:null,startDraw:function(t){return!!(t.visible&&t.alpha>0)&&(t===this.stage&&this.context.clearRect(0,0,t.width,t.height),t.blendMode!==this.blendMode&&(this.context.globalCompositeOperation=this.blendMode=t.blendMode),this.context.save(),!0)},draw:function(t){var e=this.context,i=t.width,r=t.height,n=t.background;n&&(e.fillStyle=n,e.fillRect(0,0,i,r));var a=t.drawable,o=a&&a.image;if(o){var s=a.rect,h=s[2],l=s[3],c=s[4],u=s[5];if(!h||!l)return;i||r||(i=t.width=h,r=t.height=l),(c||u)&&e.translate(c-.5*h,u-.5*l),e.drawImage(o,s[0],s[1],h,l,0,0,i,r)}},endDraw:function(t){this.context.restore()},transform:function(t){var e=t.drawable;if(e&&e.domElement)return void n.setElementStyleByView(t);var i=this.context,r=t.scaleX,a=t.scaleY;if(t===this.stage){var o=this.canvas.style,s=t._scaleX,h=t._scaleY,l=!1;(!s&&1!=r||s&&s!=r)&&(t._scaleX=r,o.width=r*t.width+"px",l=!0),(!h&&1!=a||h&&h!=a)&&(t._scaleY=a,o.height=a*t.height+"px",l=!0),l&&t.updateViewport()}else{var c=t.x,u=t.y,d=t.pivotX,f=t.pivotY,p=t.rotation%360,v=t.mask;v&&(v._render(this),i.clip());var m=t.align;if(m){var g=t.getAlignPosition();c=g.x,u=g.y}0==c&&0==u||i.translate(c,u),0!=p&&i.rotate(p*Math.PI/180),1==r&&1==a||i.scale(r,a),0==d&&0==f||i.translate(-d,-f)}t.alpha>0&&(i.globalAlpha*=t.alpha)},remove:function(t){var e=t.drawable,i=e&&e.domElement;if(i){var r=i.parentNode;r&&r.removeChild(i)}},clear:function(t,e,i,r){this.context.clearRect(t,e,i,r)},resize:function(t,e){var i=this.canvas,r=this.stage,n=i.style;i.width=t,i.height=e,n.width=r.width*r.scaleX+"px",n.height=r.height*r.scaleY+"px"}});return o}),define(function(t,e,i){var r=t("hilo/core/Class"),n=t("hilo/core/Hilo"),a=t("hilo/renderer/Renderer"),o=t("hilo/view/Drawable"),s=function(){function t(t,e){var i=t.tagName||"div",r=e.image,a=t.width||r&&r.width,o=t.height||r&&r.height,s=n.createElement(i),h=s.style;if(t.id&&(s.id=t.id),h.position="absolute",h.left=(t.left||0)+"px",h.top=(t.top||0)+"px",h.width=a+"px",h.height=o+"px","canvas"==i){if(s.width=a,s.height=o,r){var l=s.getContext("2d"),c=e.rect||[0,0,a,o];l.drawImage(r,c[0],c[1],c[2],c[3],t.x||0,t.y||0,t.width||c[2],t.height||c[3])}}else if(h.opacity=void 0!=t.alpha?t.alpha:1,(t===this.stage||t.clipChildren)&&(h.overflow="hidden"),r&&r.src){h.backgroundImage="url("+r.src+")";var u=t.rectX||0,d=t.rectY||0;h.backgroundPosition=-u+"px "+-d+"px"}return s}return r.create({Extends:a,constructor:function(t){s.superclass.constructor.call(this,t)},renderType:"dom",startDraw:function(e){var i=e.drawable=e.drawable||new o;return i.domElement=i.domElement||t(e,i),!0},draw:function(t){var e=t.parent,i=t.drawable.domElement,r=i.parentNode;if(e){var n=e.drawable.domElement;if(n!=r&&n.appendChild(i),!t.width&&!t.height){var a=t.drawable.rect;a&&(a[2]||a[3])&&(t.width=a[2],t.height=a[3])}}else t!==this.stage||r||(i.style.overflow="hidden",this.canvas.appendChild(i))},transform:function(t){if(n.setElementStyleByView(t),t===this.stage){var e=this.canvas.style,i=t._scaleX,r=t._scaleY,a=t.scaleX,o=t.scaleY;(!i&&1!=a||i&&i!=a)&&(t._scaleX=a,e.width=a*t.width+"px"),(!r&&1!=o||r&&r!=o)&&(t._scaleY=o,e.height=o*t.height+"px")}},remove:function(t){var e=t.drawable,i=e&&e.domElement;if(i){var r=i.parentNode;r&&r.removeChild(i)}},hide:function(t){var e=t.drawable&&t.drawable.domElement;e&&(e.style.display="none")},resize:function(t,e){var i=this.canvas.style;i.width=t+"px",i.height=e+"px","absolute"!=i.position&&(i.position="relative")}})}();return s}),define(function(t,e,i){var r=t("hilo/core/Class"),n=t("hilo/core/Hilo"),a=t("hilo/renderer/Renderer"),o=t("hilo/geom/Matrix"),s=Math.PI/180,h=r.create({Extends:a,Statics:{MAX_BATCH_NUM:2e3,ATTRIBUTE_NUM:5,isSupport:function(){if(void 0==this._isSupported){var t=document.createElement("canvas");t.getContext&&(t.getContext("webgl")||t.getContext("experimental-webgl"))?this._isSupported=!0:this._isSupported=!1}return this._isSupported}},renderType:"webgl",gl:null,_isContextLost:!1,_cacheTexture:{},constructor:function(t){h.superclass.constructor.call(this,t);var e=this;this.gl=this.canvas.getContext("webgl")||this.canvas.getContext("experimental-webgl"),this.maxBatchNum=h.MAX_BATCH_NUM,this.positionStride=4*h.ATTRIBUTE_NUM;var i=this.maxBatchNum*h.ATTRIBUTE_NUM*4,r=6*this.maxBatchNum;this.arrayBuffer=new ArrayBuffer(4*i),this.float32Array=new Float32Array(this.arrayBuffer),this.uint32Array=new Uint32Array(this.arrayBuffer),this.indexs=new Uint16Array(r);for(var n=0,a=0;n0)&&(t===this.stage&&this.clear(),!0)},draw:function(t){var e=t.width,i=t.height,r=(t.background,t.drawable),n=r&&r.image;if(n){var a=r.rect,o=a[2],s=a[3];e||i||(e=t.width=o,i=t.height=s),this.batchIndex>=this.maxBatchNum&&this._renderBatches();var h=this._createVertexs(n,a[0],a[1],o,s,0,0,e,i),l=this.batchIndex*this.positionStride,c=this.float32Array,u=this.uint32Array,d=(t.tint>>16)+(65280&t.tint)+((255&t.tint)<<16)+(255*t.__webglRenderAlpha<<24);c[l+0]=h[0],c[l+1]=h[1],c[l+2]=h[2],c[l+3]=h[3],u[l+4]=d,c[l+5]=h[4],c[l+6]=h[5],c[l+7]=h[6],c[l+8]=h[7],u[l+9]=d,c[l+10]=h[8],c[l+11]=h[9],c[l+12]=h[10],c[l+13]=h[11],u[l+14]=d,c[l+15]=h[12],c[l+16]=h[13],c[l+17]=h[14],c[l+18]=h[15],u[l+19]=d;for(var f=t.__webglWorldMatrix,p=0;p<4;p++){var v=c[l+5*p],m=c[l+5*p+1];c[l+5*p]=f.a*v+f.c*m+f.tx,c[l+5*p+1]=f.b*v+f.d*m+f.ty}t.__textureImage=n,this.sprites[this.batchIndex++]=t}},endDraw:function(t){t===this.stage&&this._renderBatches()},transform:function(t){var e=t.drawable;if(e&&e.domElement)return void n.setElementStyleByView(t);var i=t.scaleX,r=t.scaleY;if(t===this.stage){var a=this.canvas.style,s=t._scaleX,h=t._scaleY,l=!1;(!s&&1!=i||s&&s!=i)&&(t._scaleX=i,a.width=i*t.width+"px",l=!0),(!h&&1!=r||h&&h!=r)&&(t._scaleY=r,a.height=r*t.height+"px",l=!0),l&&t.updateViewport(),t.__webglWorldMatrix=t.__webglWorldMatrix||new o(1,0,0,1,0,0)}else t.parent&&(t.__webglWorldMatrix=t.__webglWorldMatrix||new o(1,0,0,1,0,0),this._setConcatenatedMatrix(t,t.parent));t.alpha>0&&(t.parent&&t.parent.__webglRenderAlpha?t.__webglRenderAlpha=t.alpha*t.parent.__webglRenderAlpha:t.__webglRenderAlpha=t.alpha)},remove:function(t){var e=t.drawable,i=e&&e.domElement;if(i){var r=i.parentNode;r&&r.removeChild(i)}},clear:function(t,e,i,r){this.gl.clear(this.gl.COLOR_BUFFER_BIT)},resize:function(t,e){if(this.width!==t||this.height!==e){var i=this.canvas,r=this.stage,n=i.style;this.width=i.width=t,this.height=i.height=e,n.width=r.width*r.scaleX+"px",n.height=r.height*r.scaleY+"px",this.gl.viewport(0,0,t,e),this.canvasHalfWidth=.5*t,this.canvasHalfHeight=.5*e,this._uploadProjectionTransform(!0)}},_renderBatches:function(){var t=this.gl;t.bufferSubData(t.ARRAY_BUFFER,0,this.uint32Array.subarray(0,this.batchIndex*this.positionStride));for(var e=0,i=0,r=null,n=0;n0&&(i.bindTexture(i.TEXTURE_2D,this._getTexture(this.sprites[t])),i.drawElements(i.TRIANGLES,6*r,i.UNSIGNED_SHORT,6*t*2))},_uploadProjectionTransform:function(t){this._projectionTransformElements&&!t||(this._projectionTransformElements=new Float32Array([1/this.canvasHalfWidth,0,0,0,-1/this.canvasHalfHeight,0,-1,1,1])),this.gl.uniformMatrix3fv(this.u_projectionTransform,!1,this._projectionTransformElements)},_initShaders:function(){var t=" attribute vec2 a_position;\n attribute vec2 a_TexCoord;\n attribute vec4 a_tint;\n uniform mat3 u_projectionTransform;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_Position = vec4((u_projectionTransform * vec3(a_position, 1.0)).xy, 1.0, 1.0);\n v_TexCoord = a_TexCoord;\n v_tint = vec4(a_tint.rgb * a_tint.a, a_tint.a);\n }\n ",e="\n precision mediump float;\n uniform sampler2D u_Sampler;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_FragColor = texture2D(u_Sampler, v_TexCoord) * v_tint;\n }\n ";this.defaultShader=new l(this,{v:t,f:e},{attributes:["a_position","a_TexCoord","a_tint"],uniforms:["u_projectionTransform","u_Sampler"]})},_createVertexs:function(t,e,i,r,n,a,o,s,h){var l=this.__tempVertexs||[],c=t.width,u=t.height;r/=c,n/=u,e/=c,i/=u,s=s,h=h,a=a,o=o,r+e>1&&(r=1-e),n+i>1&&(n=1-i);var d=0;return l[d++]=a,l[d++]=o,l[d++]=e,l[d++]=i,l[d++]=a+s,l[d++]=o,l[d++]=e+r,l[d++]=i,l[d++]=a,l[d++]=o+h,l[d++]=e,l[d++]=i+n,l[d++]=a+s,l[d++]=o+h,l[d++]=e+r,l[d++]=i+n,l},_setConcatenatedMatrix:function(t,e){var i=t.__webglWorldMatrix,r=1,n=0,a=t.rotation%360,o=t.pivotX,h=t.pivotY,l=t.scaleX,c=t.scaleY;if(a){var u=a*s;r=Math.cos(u),n=Math.sin(u)}var d=t.getAlignPosition();i.a=r*l,i.b=n*l,i.c=-n*c,i.d=r*c,i.tx=d.x-i.a*o-i.c*h,i.ty=d.y-i.b*o-i.d*h,i.concat(e.__webglWorldMatrix)},_getTexture:function(t){var e=t.__textureImage,i=this._cacheTexture[e.src];return i||(i=this.activeShader.uploadTexture(e)),i}}),l=function(t,e,i){this.renderer=t,this.gl=t.gl,this.program=this._createProgram(this.gl,e.v,e.f),i=i||{},this.attributes=i.attributes||[],this.uniforms=i.uniforms||[]};return l.prototype={active:function(){var t=this,e=t.renderer,i=t.gl,r=t.program;r&&i&&(e.activeShader=t,i.useProgram(r),t.attributes.forEach(function(t){e[t]=i.getAttribLocation(r,t),i.enableVertexAttribArray(e[t])}),t.uniforms.forEach(function(t){e[t]=i.getUniformLocation(r,t)}),t.width===e.width&&t.height===e.height||(t.width=e.width,t.height=e.height,e._uploadProjectionTransform()))},uploadTexture:function(t){var e=this.gl,i=this.renderer,r=e.createTexture(),n=i.u_Sampler;return e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,r),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,1),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.uniform1i(n,0),e.bindTexture(e.TEXTURE_2D,null),this.renderer._cacheTexture[t.src]=r,r},_createProgram:function(t,e,i){var r=this._createShader(t,t.VERTEX_SHADER,e),n=this._createShader(t,t.FRAGMENT_SHADER,i);if(!r||!n)return null;var a=t.createProgram();if(a){t.attachShader(a,r),t.attachShader(a,n),t.linkProgram(a),t.deleteShader(n),t.deleteShader(r);var o=t.getProgramParameter(a,t.LINK_STATUS);if(!o){var s=t.getProgramInfoLog(a);return console.log("Failed to link program: "+s),t.deleteProgram(a),null}}return a},_createShader:function(t,e,i){var r=t.createShader(e);if(r){t.shaderSource(r,i),t.compileShader(r);var n=t.getShaderParameter(r,t.COMPILE_STATUS);if(!n){var a=t.getShaderInfoLog(r);return console.log("Failed to compile shader: "+a),t.deleteShader(r),null}}return r}},h}),define(function(t,e,i){var r=t("hilo/core/Hilo"),n=t("hilo/core/Class"),a=t("hilo/event/EventMixin"),o=t("hilo/geom/Matrix"),s=t("hilo/util/util"),h=function(){function t(t,e,i){for(var r,n,a,o,s=0,h=!1,l=0,c=i.length;ld.x?(r=d.x,n=u.x):(r=u.x,n=d.x),t>=r&&t<=n))h=!0;else if(u.y>d.y?(a=d.y,o=u.y):(a=u.y,o=d.y),!(eo)){var f=(e-u.y)*(d.x-u.x)/(d.y-u.y)+u.x;if(f>t?s++:f==t&&(h=!0),u.x>t&&u.y==e){var p=i[(c+l-1)%c];(p.ye||p.y>e&&d.ys?s=c:cl?l=c:c=0)return!1;u>i.overlap&&(i.overlap=u,i.normal.x=p.x,i.normal.y=p.y)}return i}return n.create({Mixes:a,constructor:function(t){t=t||{},this.id=this.id||t.id||r.getUid("View"),s.copy(this,t,!0)},tint:16777215,id:null,x:0,y:0,width:0,height:0,alpha:1,rotation:0,visible:!0,pivotX:0,pivotY:0,scaleX:1,scaleY:1,pointerEnabled:!0,background:null,mask:null,align:null,drawable:null,boundsArea:null,parent:null,depth:-1,blendMode:"source-over",getStage:function(){for(var t,e=this;t=e.parent;)e=t;return e.canvas?e:null},getScaledWidth:function(){return this.width*this.scaleX},getScaledHeight:function(){return this.height*this.scaleY},addTo:function(t,e){return"number"==typeof e?t.addChildAt(this,e):t.addChild(this),this},removeFromParent:function(){var t=this.parent;return t&&t.removeChild(this),this},getBounds:function(){for(var t,e,i,r,n,a,o,s=this.width,h=this.height,l=this.getConcatenatedMatrix(),c=this.boundsArea||[{x:0,y:0},{x:s,y:0},{x:s,y:h},{x:0,y:h}],u=[],d=0,f=c.length;de?r=e:ni?a=i:o>1,r=0;break;case"TR":i=o-n,r=0;break;case"L":i=0,r=s-a>>1;break;case"C":i=o-n>>1,r=s-a>>1;break;case"R":i=o-n,r=s-a>>1;break;case"BL":i=0,r=s-a;break;case"B":i=o-n>>1,r=s-a;break;case"BR":i=o-n,r=s-a}}return{x:i,y:r}},hitTestPoint:function(e,i,r){var n=this.getBounds(),a=e>=n.x&&e<=n.x+n.width&&i>=n.y&&i<=n.y+n.height;return a&&r&&(a=t(e,i,n)),a},hitTestObject:function(t,i){var r=this.getBounds(),n=t.getBounds(),a=r.x<=n.x+n.width&&n.x<=r.x+r.width&&r.y<=n.y+n.height&&n.y<=r.y+r.height;return a&&i&&(a=e(r,n)),!!a},_render:function(t,e){this.onUpdate&&this.onUpdate(e)===!1||!t.startDraw(this)||(t.transform(this),this.render(t,e),t.endDraw(this))},_fireMouseEvent:function(t){if(t.eventCurrentTarget=this,this.fire(t),"mousemove"==t.type){if(!this.__mouseOver){this.__mouseOver=!0;var e=s.copy({},t);e.type="mouseover",this.fire(e)}}else"mouseout"==t.type&&(this.__mouseOver=!1);var i=this.parent;t._stopped||t._stopPropagationed||!i||("mouseout"==t.type||"touchout"==t.type?i.hitTestPoint(t.stageX,t.stageY,!0)||i._fireMouseEvent(t):i._fireMouseEvent(t))},onUpdate:null,render:function(t,e){t.draw(this)},toString:function(){return r.viewToString(this)}})}();return h}),define(function(t,e,i){var r,n,a=t("hilo/view/Drawable"),o=t("hilo/util/browser"),s={_cacheDirty:!0,cache:function(t){(t||this._cacheDirty||!this.drawable)&&this.updateCache()},updateCache:function(){o.supportCanvas&&(r||(r=document.createElement("canvas"),n=r.getContext("2d")),r.width=this.width,r.height=this.height,this._draw(n),this.drawable=this.drawable||new a,this.drawable.init({image:r.toDataURL()}),this._cacheDirty=!1)},setCacheDirty:function(t){this._cacheDirty=t}};return s}),define(function(t,e,i){var r=t("hilo/core/Hilo"),n=t("hilo/core/Class"),a=t("hilo/view/View"),o=n.create({Extends:a,constructor:function(t){t=t||{},this.id=this.id||t.id||r.getUid("Container"),o.superclass.constructor.call(this,t),this.children?this._updateChildren():this.children=[]},children:null,pointerChildren:!0,clipChildren:!1,getNumChildren:function(){return this.children.length},addChildAt:function(t,e){var i=this.children,r=i.length,n=t.parent;e=e<0?0:e>r?r:e;var a=this.getChildIndex(t);if(a==e)return this;if(a>=0?(i.splice(a,1),e=e==r?r-1:e):n&&n.removeChild(t),i.splice(e,0,t),a<0)this._updateChildren(e);else{var o=a=e.length)return null;var i=e[t];if(i){if(!i.__renderer)for(var r=i;r=r.parent;){if(r.renderer){i.__renderer=r.renderer;break}if(r.__renderer){i.__renderer=r.__renderer;break}}i.__renderer&&i.__renderer.remove(i),i.parent=null,i.depth=-1}return e.splice(t,1),this._updateChildren(t),i},removeChild:function(t){return this.removeChildAt(this.getChildIndex(t))},removeChildById:function(t){for(var e,i=this.children,r=0,n=i.length;r=e.length?null:e[t]},getChildById:function(t){for(var e,i=this.children,r=0,n=i.length;r=0&&r!=e){var n=i.length;e=e<0?0:e>=n?n-1:e,i.splice(r,1),i.splice(e,0,t),this._updateChildren()}return this},swapChildren:function(t,e){var i=this.children,r=this.getChildIndex(t),n=this.getChildIndex(e);t.depth=n,i[n]=t,e.depth=r,i[r]=e},swapChildrenAt:function(t,e){var i=this.children,r=this.getChildAt(t),n=this.getChildAt(e);r.depth=e,i[e]=r,n.depth=t,i[t]=n},sortChildren:function(t){var e=t,i=this.children;if("string"==typeof e){var r=e;e=function(t,e){return e[r]-t[r]}}i.sort(e),this._updateChildren()},_updateChildren:function(t,e){var i,r=this.children;t=t||0,e=e||r.length;for(var n=t;n=0;l--)if(a=h[l],!(!a||!a.visible||a.alpha<=0||n&&!a.pointerEnabled))if(a.children&&a.children.length&&(!n||a.pointerChildren)&&(o=a.getViewAtPoint(t,e,i,r,n)),o){if(!r)return o;o.length&&(s=s.concat(o))}else if(a.hitTestPoint(t,e,i)){if(!r)return a;s.push(a)}return r&&s.length?s:null},render:function(t,e){o.superclass.render.call(this,t,e);var i,r,n,a=this.children.slice(0);for(i=0,r=a.length;ir?r:e,i[e]=t,t.name&&(this._frameNames[t.name]=t),(0!=e||this.width)&&this.height||(this.width=t.rect[2],this.height=t.rect[3]),this},getFrame:function(t){if("number"==typeof t){var e=this._frames;return t<0||t>=e.length?null:e[t]}return this._frameNames[t]},getFrameIndex:function(t){var e=this._frames,i=e.length,r=-1;if("number"==typeof t)r=t;else{var n="string"==typeof t?this._frameNames[t]:t;if(n)for(var a=0;a=i?i-1:r,this.paused=e,this._firstRender=!0,this},_render:function(t,e){var i,r=this.currentFrame;if(this._firstRender?(i=r,this._firstRender=!1):i=this._nextFrame(e),i!=r){this.currentFrame=i;var n=this._frames[i].callback;n&&n.call(this)}this.onEnterFrame&&this.onEnterFrame(i),this.drawable.init(this._frames[i]),s.superclass._render.call(this,t,e)},_nextFrame:function(t){var e=this._frames,i=e.length,r=this.currentFrame,n=e[r],a=n.duration||this.interval,o=this._frameElapsed,s=0!=r||this.drawable?o+(this.timeBased?t:1):0;return o=this._frameElapsed=s=i-1)&&this.stop(),this.paused||0!=o||(null!=n.next?r=this.getFrameIndex(n.next):r>=i-1?r=0:this.drawable&&r++),r},setFrameCallback:function(t,e){return t=this.getFrame(t),t&&(t.callback=e),this},onEnterFrame:null});return s}),define(function(t,e,i){var r=t("hilo/core/Hilo"),n=t("hilo/core/Class"),a=t("hilo/view/View"),o=t("hilo/view/Drawable"),s=n.create({Extends:a,constructor:function(t){t=t||{},this.id=this.id||t.id||r.getUid("DOMElement"),s.superclass.constructor.call(this,t),this.drawable=new o;var e=this.drawable.domElement=t.element||r.createElement("div");e.id=this.id,this.pointerEnabled&&(e.style.pointerEvents="visible")},_render:function(t,e){this.onUpdate&&this.onUpdate(e)===!1||(t.transform(this),this.visible&&this.alpha>0&&this.render(t,e))},render:function(t,e){if("dom"!==t.renderType){var i,r=t.canvas,n=this.drawable.domElement,a=this.depth,o=r.nextSibling;if(n.parentNode)return;for(;o&&3!=o.nodeType&&(i=parseInt(o.style.zIndex)||0,!(i<=0||i>a));)o=o.nextSibling;r.parentNode.insertBefore(this.drawable.domElement,o)}else t.draw(this)}});return s}),define(function(t,e,i){var r=t("hilo/core/Hilo"),n=t("hilo/core/Class"),a=t("hilo/view/View"),o=t("hilo/view/CacheMixin"),s=function(){var t=document.createElement("canvas"),e=t.getContext&&t.getContext("2d");return n.create({Extends:a,Mixes:o,constructor:function(t){t=t||{},this.id=this.id||t.id||r.getUid("Graphics"),s.superclass.constructor.call(this,t),this._actions=[]},lineWidth:1,lineAlpha:1,lineCap:null,lineJoin:null,miterLimit:10,hasStroke:!1,strokeStyle:"0",hasFill:!1,fillStyle:"0",fillAlpha:0,lineStyle:function(t,e,i,r,n,a){var o=this,s=o._addAction;return s.call(o,["lineWidth",o.lineWidth=t||1]),s.call(o,["strokeStyle",o.strokeStyle=e||"0"]),s.call(o,["lineAlpha",o.lineAlpha=i||1]),void 0!=r&&s.call(o,["lineCap",o.lineCap=r]),void 0!=n&&s.call(o,["lineJoin",o.lineJoin=n]),void 0!=a&&s.call(o,["miterLimit",o.miterLimit=a]),o.hasStroke=!0,o},beginFill:function(t,e){var i=this,r=i._addAction;return r.call(i,["fillStyle",i.fillStyle=t]),r.call(i,["fillAlpha",i.fillAlpha=e||1]),i.hasFill=!0,i},endFill:function(){var t=this,e=t._addAction;return t.hasStroke&&e.call(t,["stroke"]),t.hasFill&&e.call(t,["fill"]),t.setCacheDirty(!0),t},beginLinearGradientFill:function(t,i,r,n,a,o){for(var s=this,h=e.createLinearGradient(t,i,r,n),l=0,c=a.length;l1?a.slice(1):null;"function"==typeof t[o]?t[o].apply(t,s):t[o]=a[1]}},render:function(t,e){var i=this;"canvas"===t.renderType?i._draw(t.context):(i.cache(),t.draw(i))},clear:function(){var t=this;return t._actions.length=0,t.lineWidth=1,t.lineAlpha=1,t.lineCap=null,t.lineJoin=null,t.miterLimit=10,t.hasStroke=!1,t.strokeStyle="0",t.hasFill=!1,t.fillStyle="0",t.fillAlpha=1,t.setCacheDirty(!0),t},_addAction:function(t){var e=this;return e._actions.push(t),e}})}();return s}),define(function(t,e,i){var r=t("hilo/core/Class"),n=t("hilo/core/Hilo"),a=t("hilo/view/View"),o=t("hilo/view/CacheMixin"),s=r.create({Extends:a,Mixes:o,constructor:function(t){t=t||{},this.id=this.id||t.id||n.getUid("Text"),s.superclass.constructor.call(this,t),t.font||(this.font="12px arial"),this._fontHeight=s.measureFontHeight(this.font)},text:null,color:"#000",textAlign:null,textVAlign:null,outline:!1,lineSpacing:0,maxWidth:200,font:null,textWidth:0,textHeight:0,setFont:function(t){var e=this;return e.font!==t&&(e.font=t,e._fontHeight=s.measureFontHeight(t)),e},render:function(t,e){var i=this;if("canvas"===t.renderType)this.drawable?t.draw(i):i._draw(t.context);else if("dom"===t.renderType){var r=i.drawable,n=r.domElement,a=n.style;a.font=i.font,a.textAlign=i.textAlign,a.color=i.color,a.width=i.width+"px",a.height=i.height+"px",a.lineHeight=i._fontHeight+i.lineSpacing+"px",n.innerHTML=i.text,t.draw(this)}else i.cache(),t.draw(i)},_draw:function(t){var e=this,i=e.text.toString();if(i){t.font=e.font,t.textAlign=e.textAlign,t.textBaseline="top";var r,n,a,o,s,h=i.split(/\r\n|\r|\n|/),l=0,c=0,u=e._fontHeight+e.lineSpacing,d=[];for(r=0,o=h.length;re.maxWidth?(d.push({text:m,y:c}),l>1;break;case"bottom":_=e.height-e.textHeight}var x=e.background;for(x&&(t.fillStyle=x,t.fillRect(0,0,e.width,e.height)),e.outline?t.strokeStyle=e.color:t.fillStyle=e.color,r=0;r>1;break;case"right":case"end":n=a}r.outline?t.strokeText(e,n,i):t.fillText(e,n,i)},Statics:{measureFontHeight:function(t){var e,i=document.documentElement,r=n.createElement("div",{style:{font:t,position:"absolute"},innerHTML:"M"});return i.appendChild(r),e=r.offsetHeight,i.removeChild(r),e}}});return s}),define(function(t,e,i){var r=t("hilo/core/Class"),n=t("hilo/core/Hilo"),a=t("hilo/view/Container"),o=t("hilo/view/Bitmap"),s=r.create({Extends:a,constructor:function(t){t=t||{},this.id=this.id||t.id||n.getUid("BitmapText"),s.superclass.constructor.call(this,t);var e=t.text+"";e&&(this.text="",this.setText(e)),this.pointerChildren=!1},glyphs:null,letterSpacing:0,text:"",textAlign:"left",setText:function(t){var e=this,i=t.toString(),r=i.length;if(e.text!=i){e.text=i;var n,a,o,s,h=0,l=0,c=0;for(n=0;n0?e.letterSpacing:0),e.children[n]?(s=e.children[n],s.setImage(o.image,o.rect)):(s=e._createBitmap(o),e.addChild(s)),s.x=c,h=c+o.rect[2],l=Math.max(l,o.rect[3]));for(n=e.children.length-1;n>=r;n--)e._releaseBitmap(e.children[n]),e.children[n].removeFromParent();return e.width=h,e.height=l,this.setTextAlign(),e}},_createBitmap:function(t){var e;return s._pool.length?(e=s._pool.pop(),e.setImage(t.image,t.rect)):e=new o({image:t.image,rect:t.rect}),e},_releaseBitmap:function(t){s._pool.push(t)},setTextAlign:function(t){switch(this.textAlign=t||this.textAlign,this.textAlign){case"center":this.pivotX=.5*this.width;break;case"right":this.pivotX=this.width;break;case"left":default:this.pivotX=0}return this},hasGlyphs:function(t){var e=this.glyphs;if(!e)return!1;t=t.toString();var i,r=t.length;for(i=0;i=this._targetFPS?(this._measuredFPS=1e3/(this._tickTime/this._tickCount)+.5>>0,this._tickCount=0,this._tickTime=0):this._tickTime+=t-this._lastTime,this._lastTime=t;for(var r=i.slice(0),n=0,a=r.length;n=0&&e.splice(i,1)},nextTick:function(t){var e=this,i={tick:function(r){e.removeTick(i),t()}};return e.addTick(i),i},timeout:function(t,e){var i=this,r=(new Date).getTime()+e,n={tick:function(){var e=(new Date).getTime(),a=e-r;a>=0&&(i.removeTick(n),t())}};return i.addTick(n),n},interval:function(t,e){var i=this,r=(new Date).getTime()+e,n={tick:function(){var i=(new Date).getTime(),n=i-r;n>=0&&(n=r)return-1;for(e<0&&(e=r+e),i=e;i=1?1:s;var l=r.ease?r.ease(s):s;r.reverse&&(r._reverseFlag<0&&(s=1-s,l=1-l),s<1e-7&&(r.repeat>0&&r._repeatCount++>=r.repeat||0==r.repeat&&!r.loop?h=!0:(r._startTime=t(),r._pausedTime=0,r._reverseFlag*=-1))),0==r.time&&(o=r.onStart)&&o.call(r,r),r.time=a,r._render(l),(o=r.onUpdate)&&o.call(r,s,r),s>=1&&(r.reverse?(r._startTime=t(),r._pausedTime=0,r._reverseFlag*=-1):r.loop||r.repeat>0&&r._repeatCount++0&&u<=e?(c._render(s),c.time=a,n.add(c)):h&&(u<0||u>e)&&c.start()}return h?((o=r.onComplete)&&o.call(r,r),!0):void 0}}},Statics:{_tweens:[],tick:function(){var e,i,r=n._tweens,a=r.length;for(i=0;i-1&&r.splice(e,1);else for(e=0;e=i)return void t.fire("complete");if(t._currentIndexe.z})},tick:function(){this.sortZ()}});return o}();return a}),define(function(t,e,i){var r=t("hilo/core/Hilo"),n=t("hilo/core/Class"),a=t("hilo/view/View"),o=t("hilo/view/Container"),s=t("hilo/view/Drawable"),h=t("hilo/util/util"),l=function(){function t(t,e){return e?t+2*(Math.random()-.5)*e:t}for(var e=["x","y","vx","vy","ax","ay","rotation","rotationV","scale","scaleV","alpha","alphaV","life"],i=[],l=0,c=e.length;l=this._emitTime&&(this._currentRunTime=0,this._emitTime=t(this.emitTime,this.emitTimeVar),this._emit()),this._totalRunTime>=this.totalTime&&this.stop())},_emit:function(){for(var e=t(this.emitNum,this.emitNumVar)>>0,i=0;i=0;e--)this.children[e].destroy()}}),v=n.create({Extends:a,constructor:function(t){this.id=this.id||t.id||r.getUid("Particle"),v.superclass.constructor.call(this,t),this.init(t)},onUpdate:function(t){if(t*=.001,this._died)return!1;var e=this.ax+this.system.gx,i=this.ay+this.system.gy;return this.vx+=e*t,this.vy+=i*t,this.x+=this.vx*t,this.y+=this.vy*t,this.rotation+=this.rotationV,this._time>.1&&(this.alpha+=this.alphaV),this.scale+=this.scaleV,this.scaleX=this.scaleY=this.scale,this._time+=t,this._time>=this.life||this.alpha<=0?(this.destroy(),!1):void 0},setImage:function(t,e){this.drawable=this.drawable||new s,e=e||[0,0,t.width,t.height],this.width=e[2],this.height=e[3],this.drawable.rect=e,this.drawable.image=t},destroy:function(){this._died=!0,this.alpha=0,this.removeFromParent(),f.push(this)},init:function(e){this.system=e.system,this._died=!1,this._time=0,this.alpha=1;for(var r=0,n=i.length;r>0]),this.setImage(e.image,s),void 0!==e.pivotX&&(this.pivotX=e.pivotX*s[2]),void 0!==e.pivotY&&(this.pivotY=e.pivotY*s[3])}},Statics:{create:function(t){if(f.length>0){var e=f.pop();return e.init(t),e}return new v(t)}}});return p}();return l}); \ No newline at end of file diff --git a/build/cmd/hilo-cmd.zip b/build/cmd/hilo-cmd.zip index efc2b1e98fe1df4dda39a29933798bd0cc551246..415fc48ce082734dc6889c2260c6a3ccf4c3e4df 100644 GIT binary patch delta 126836 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 AXaE2J delta 126672 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⪻@EslfAB;6079kN!FBd>s&>nQX@ibndUrVCIw^) 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 diff --git a/build/cmd/hilo/core/Class.js b/build/cmd/hilo/core/Class.js index 2ab4e84f..82548ea2 100644 --- a/build/cmd/hilo/core/Class.js +++ b/build/cmd/hilo/core/Class.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/core/Class.min.js b/build/cmd/hilo/core/Class.min.js index 9e76ba18..1fd9a20a 100644 --- a/build/cmd/hilo/core/Class.min.js +++ b/build/cmd/hilo/core/Class.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/core/Hilo.js b/build/cmd/hilo/core/Hilo.js index a0f591e8..364717ad 100644 --- a/build/cmd/hilo/core/Hilo.js +++ b/build/cmd/hilo/core/Hilo.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -28,7 +28,7 @@ var Hilo = { * Hilo version * @type String */ - version:'1.1.4', + version:'1.1.5', /** * @language=en * Gets a globally unique id. Such as Stage1, Bitmap2 etc. diff --git a/build/cmd/hilo/core/Hilo.min.js b/build/cmd/hilo/core/Hilo.min.js index e94f5767..fe9495e9 100644 --- a/build/cmd/hilo/core/Hilo.min.js +++ b/build/cmd/hilo/core/Hilo.min.js @@ -1,6 +1,6 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ -define(function(t,e,a){var o=t("hilo/util/browser"),n=t("hilo/util/util"),r=window,i=document,s=i.documentElement,c=0,h={},d={version:"1.1.4",getUid:function(t){var e=++c;if(t){var a=t.charCodeAt(t.length-1);return a>=48&&a<=57&&(t+="_"),t+e}return e},viewToString:function(t){for(var e,a=t;a;)e=e?a.id+"."+e:a.id,a=a.parent;return e},copy:function(t,e,a){return n.copy(t,e,a),h.copy||(h.copy=!0,console.warn("Hilo.copy has been Deprecated! Use Hilo.util.copy instead.")),t},browser:o,event:function(){var t="ontouchstart"in r;return{POINTER_START:t?"touchstart":"mousedown",POINTER_MOVE:t?"touchmove":"mousemove",POINTER_END:t?"touchend":"mouseup"}}(),align:{TOP_LEFT:"TL",TOP:"T",TOP_RIGHT:"TR",LEFT:"L",CENTER:"C",RIGHT:"R",BOTTOM_LEFT:"BL",BOTTOM:"B",BOTTOM_RIGHT:"BR"},getElementRect:function(t){var e;try{e=t.getBoundingClientRect()}catch(a){e={top:t.offsetTop,left:t.offsetLeft,right:t.offsetLeft+t.offsetWidth,bottom:t.offsetTop+t.offsetHeight}}var o=(r.pageXOffset||s.scrollLeft)-(s.clientLeft||0)||0,n=(r.pageYOffset||s.scrollTop)-(s.clientTop||0)||0,i=r.getComputedStyle?getComputedStyle(t):t.currentStyle,c=parseInt,h=c(i.paddingLeft)+c(i.borderLeftWidth)||0,d=c(i.paddingTop)+c(i.borderTopWidth)||0,f=c(i.paddingRight)+c(i.borderRightWidth)||0,l=c(i.paddingBottom)+c(i.borderBottomWidth)||0,g=e.top||0,p=e.left||0,u=e.right||0,m=e.bottom||0;return{left:p+o+h,top:g+n+d,width:u-f-p-h,height:m-l-g-d}},createElement:function(t,e){var a,o,n,r=i.createElement(t);for(a in e)if(o=e[a],"style"===a)for(n in o)r.style[n]=o[n];else r[a]=o;return r},getElement:function(t){return i.getElementById(t)},setElementStyleByView:function(t){var e=t.drawable,a=e.domElement.style,o=t._stateCache||(t._stateCache={}),n=d.browser.jsVendor,r="px",i=!1;if(this.cacheStateIfChanged(t,["visible"],o)&&(a.display=t.visible?"":"none"),this.cacheStateIfChanged(t,["alpha"],o)&&(a.opacity=t.alpha),t.visible&&!(t.alpha<=0)){this.cacheStateIfChanged(t,["width"],o)&&(a.width=t.width+r),this.cacheStateIfChanged(t,["height"],o)&&(a.height=t.height+r),this.cacheStateIfChanged(t,["depth"],o)&&(a.zIndex=t.depth+1),(i=this.cacheStateIfChanged(t,["pivotX","pivotY"],o))&&(a[n+"TransformOrigin"]=t.pivotX+r+" "+t.pivotY+r),(this.cacheStateIfChanged(t,["x","y","rotation","scaleX","scaleY"],o)||i)&&(a[n+"Transform"]=this.getTransformCSS(t)),this.cacheStateIfChanged(t,["background"],o)&&(a.backgroundColor=t.background),a.pointerEvents||(a.pointerEvents="none");var s=e.image;if(s){var c=s.src;c!==o.image&&(o.image=c,a.backgroundImage="url("+c+")");var h=e.rect;if(h){var f=h[0],l=h[1];f!==o.sx&&(o.sx=f,a.backgroundPositionX=-f+r),l!==o.sy&&(o.sy=l,a.backgroundPositionY=-l+r)}}var g=t.mask;if(g){var p=g.drawable.domElement.style.backgroundImage;p!==o.maskImage&&(o.maskImage=p,a[n+"MaskImage"]=p,a[n+"MaskRepeat"]="no-repeat");var u=g.x,m=g.y;u===o.maskX&&m===o.maskY||(o.maskX=u,o.maskY=m,a[n+"MaskPosition"]=u+r+" "+m+r)}}},cacheStateIfChanged:function(t,e,a){var o,n,r,i,s=!1;for(o=0,n=e.length;o=48&&a<=57&&(t+="_"),t+e}return e},viewToString:function(t){for(var e,a=t;a;)e=e?a.id+"."+e:a.id,a=a.parent;return e},copy:function(t,e,a){return n.copy(t,e,a),h.copy||(h.copy=!0,console.warn("Hilo.copy has been Deprecated! Use Hilo.util.copy instead.")),t},browser:o,event:function(){var t="ontouchstart"in r;return{POINTER_START:t?"touchstart":"mousedown",POINTER_MOVE:t?"touchmove":"mousemove",POINTER_END:t?"touchend":"mouseup"}}(),align:{TOP_LEFT:"TL",TOP:"T",TOP_RIGHT:"TR",LEFT:"L",CENTER:"C",RIGHT:"R",BOTTOM_LEFT:"BL",BOTTOM:"B",BOTTOM_RIGHT:"BR"},getElementRect:function(t){var e;try{e=t.getBoundingClientRect()}catch(a){e={top:t.offsetTop,left:t.offsetLeft,right:t.offsetLeft+t.offsetWidth,bottom:t.offsetTop+t.offsetHeight}}var o=(r.pageXOffset||s.scrollLeft)-(s.clientLeft||0)||0,n=(r.pageYOffset||s.scrollTop)-(s.clientTop||0)||0,i=r.getComputedStyle?getComputedStyle(t):t.currentStyle,c=parseInt,h=c(i.paddingLeft)+c(i.borderLeftWidth)||0,d=c(i.paddingTop)+c(i.borderTopWidth)||0,f=c(i.paddingRight)+c(i.borderRightWidth)||0,l=c(i.paddingBottom)+c(i.borderBottomWidth)||0,g=e.top||0,p=e.left||0,u=e.right||0,m=e.bottom||0;return{left:p+o+h,top:g+n+d,width:u-f-p-h,height:m-l-g-d}},createElement:function(t,e){var a,o,n,r=i.createElement(t);for(a in e)if(o=e[a],"style"===a)for(n in o)r.style[n]=o[n];else r[a]=o;return r},getElement:function(t){return i.getElementById(t)},setElementStyleByView:function(t){var e=t.drawable,a=e.domElement.style,o=t._stateCache||(t._stateCache={}),n=d.browser.jsVendor,r="px",i=!1;if(this.cacheStateIfChanged(t,["visible"],o)&&(a.display=t.visible?"":"none"),this.cacheStateIfChanged(t,["alpha"],o)&&(a.opacity=t.alpha),t.visible&&!(t.alpha<=0)){this.cacheStateIfChanged(t,["width"],o)&&(a.width=t.width+r),this.cacheStateIfChanged(t,["height"],o)&&(a.height=t.height+r),this.cacheStateIfChanged(t,["depth"],o)&&(a.zIndex=t.depth+1),(i=this.cacheStateIfChanged(t,["pivotX","pivotY"],o))&&(a[n+"TransformOrigin"]=t.pivotX+r+" "+t.pivotY+r),(this.cacheStateIfChanged(t,["x","y","rotation","scaleX","scaleY"],o)||i)&&(a[n+"Transform"]=this.getTransformCSS(t)),this.cacheStateIfChanged(t,["background"],o)&&(a.backgroundColor=t.background),a.pointerEvents||(a.pointerEvents="none");var s=e.image;if(s){var c=s.src;c!==o.image&&(o.image=c,a.backgroundImage="url("+c+")");var h=e.rect;if(h){var f=h[0],l=h[1];f!==o.sx&&(o.sx=f,a.backgroundPositionX=-f+r),l!==o.sy&&(o.sy=l,a.backgroundPositionY=-l+r)}}var g=t.mask;if(g){var p=g.drawable.domElement.style.backgroundImage;p!==o.maskImage&&(o.maskImage=p,a[n+"MaskImage"]=p,a[n+"MaskRepeat"]="no-repeat");var u=g.x,m=g.y;u===o.maskX&&m===o.maskY||(o.maskX=u,o.maskY=m,a[n+"MaskPosition"]=u+r+" "+m+r)}}},cacheStateIfChanged:function(t,e,a){var o,n,r,i,s=!1;for(o=0,n=e.length;o> 1; - y = 0; - break; - case 'TR': - x = pw - w; - y = 0; - break; - case 'L': - x = 0; - y = ph - h >> 1; - break; - case 'C': - x = pw - w >> 1; - y = ph - h >> 1; - break; - case 'R': - x = pw - w; - y = ph - h >> 1; - break; - case 'BL': - x = 0; - y = ph - h; - break; - case 'B': - x = pw - w >> 1; - y = ph - h; - break; - case 'BR': - x = pw - w; - y = ph - h; - break; - } - } - } + var pos = target.getAlignPosition(); + x = pos.x; + y = pos.y; } if(x != 0 || y != 0) ctx.translate(x, y); diff --git a/build/cmd/hilo/renderer/CanvasRenderer.min.js b/build/cmd/hilo/renderer/CanvasRenderer.min.js index 1e383170..d7f5d3ad 100644 --- a/build/cmd/hilo/renderer/CanvasRenderer.min.js +++ b/build/cmd/hilo/renderer/CanvasRenderer.min.js @@ -1,6 +1,6 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ -define(function(e,t,a){var i=e("hilo/core/Class"),r=e("hilo/core/Hilo"),s=e("hilo/renderer/Renderer"),n=i.create({Extends:s,constructor:function(e){n.superclass.constructor.call(this,e),this.context=this.canvas.getContext("2d")},renderType:"canvas",context:null,startDraw:function(e){return!!(e.visible&&e.alpha>0)&&(e===this.stage&&this.context.clearRect(0,0,e.width,e.height),e.blendMode!==this.blendMode&&(this.context.globalCompositeOperation=this.blendMode=e.blendMode),this.context.save(),!0)},draw:function(e){var t=this.context,a=e.width,i=e.height,r=e.background;r&&(t.fillStyle=r,t.fillRect(0,0,a,i));var s=e.drawable,n=s&&s.image;if(n){var c=s.rect,h=c[2],l=c[3],o=c[4],d=c[5];if(!h||!l)return;a||i||(a=e.width=h,i=e.height=l),(o||d)&&t.translate(o-.5*h,d-.5*l),t.drawImage(n,c[0],c[1],h,l,0,0,a,i)}},endDraw:function(e){this.context.restore()},transform:function(e){var t=e.drawable;if(t&&t.domElement)return void r.setElementStyleByView(e);var a=this.context,i=e.scaleX,s=e.scaleY;if(e===this.stage){var n=this.canvas.style,c=e._scaleX,h=e._scaleY,l=!1;(!c&&1!=i||c&&c!=i)&&(e._scaleX=i,n.width=i*e.width+"px",l=!0),(!h&&1!=s||h&&h!=s)&&(e._scaleY=s,n.height=s*e.height+"px",l=!0),l&&e.updateViewport()}else{var o=e.x,d=e.y,v=e.pivotX,f=e.pivotY,g=e.rotation%360,p=e.mask;p&&(p._render(this),a.clip());var u=e.align;if(u)if("function"==typeof u)e.align();else{var w=e.parent;if(w){var b=e.width,x=e.height,m=w.width,k=w.height;switch(u){case"TL":o=0,d=0;break;case"T":o=m-b>>1,d=0;break;case"TR":o=m-b,d=0;break;case"L":o=0,d=k-x>>1;break;case"C":o=m-b>>1,d=k-x>>1;break;case"R":o=m-b,d=k-x>>1;break;case"BL":o=0,d=k-x;break;case"B":o=m-b>>1,d=k-x;break;case"BR":o=m-b,d=k-x}}}0==o&&0==d||a.translate(o,d),0!=g&&a.rotate(g*Math.PI/180),1==i&&1==s||a.scale(i,s),0==v&&0==f||a.translate(-v,-f)}e.alpha>0&&(a.globalAlpha*=e.alpha)},remove:function(e){var t=e.drawable,a=t&&t.domElement;if(a){var i=a.parentNode;i&&i.removeChild(a)}},clear:function(e,t,a,i){this.context.clearRect(e,t,a,i)},resize:function(e,t){var a=this.canvas,i=this.stage,r=a.style;a.width=e,a.height=t,r.width=i.width*i.scaleX+"px",r.height=i.height*i.scaleY+"px"}});return n}); \ No newline at end of file +define(function(t,e,a){var i=t("hilo/core/Class"),r=t("hilo/core/Hilo"),n=t("hilo/renderer/Renderer"),s=i.create({Extends:n,constructor:function(t){s.superclass.constructor.call(this,t),this.context=this.canvas.getContext("2d")},renderType:"canvas",context:null,startDraw:function(t){return!!(t.visible&&t.alpha>0)&&(t===this.stage&&this.context.clearRect(0,0,t.width,t.height),t.blendMode!==this.blendMode&&(this.context.globalCompositeOperation=this.blendMode=t.blendMode),this.context.save(),!0)},draw:function(t){var e=this.context,a=t.width,i=t.height,r=t.background;r&&(e.fillStyle=r,e.fillRect(0,0,a,i));var n=t.drawable,s=n&&n.image;if(s){var l=n.rect,o=l[2],h=l[3],c=l[4],d=l[5];if(!o||!h)return;a||i||(a=t.width=o,i=t.height=h),(c||d)&&e.translate(c-.5*o,d-.5*h),e.drawImage(s,l[0],l[1],o,h,0,0,a,i)}},endDraw:function(t){this.context.restore()},transform:function(t){var e=t.drawable;if(e&&e.domElement)return void r.setElementStyleByView(t);var a=this.context,i=t.scaleX,n=t.scaleY;if(t===this.stage){var s=this.canvas.style,l=t._scaleX,o=t._scaleY,h=!1;(!l&&1!=i||l&&l!=i)&&(t._scaleX=i,s.width=i*t.width+"px",h=!0),(!o&&1!=n||o&&o!=n)&&(t._scaleY=n,s.height=n*t.height+"px",h=!0),h&&t.updateViewport()}else{var c=t.x,d=t.y,v=t.pivotX,g=t.pivotY,f=t.rotation%360,u=t.mask;u&&(u._render(this),a.clip());var p=t.align;if(p){var w=t.getAlignPosition();c=w.x,d=w.y}0==c&&0==d||a.translate(c,d),0!=f&&a.rotate(f*Math.PI/180),1==i&&1==n||a.scale(i,n),0==v&&0==g||a.translate(-v,-g)}t.alpha>0&&(a.globalAlpha*=t.alpha)},remove:function(t){var e=t.drawable,a=e&&e.domElement;if(a){var i=a.parentNode;i&&i.removeChild(a)}},clear:function(t,e,a,i){this.context.clearRect(t,e,a,i)},resize:function(t,e){var a=this.canvas,i=this.stage,r=a.style;a.width=t,a.height=e,r.width=i.width*i.scaleX+"px",r.height=i.height*i.scaleY+"px"}});return s}); \ No newline at end of file diff --git a/build/cmd/hilo/renderer/DOMRenderer.js b/build/cmd/hilo/renderer/DOMRenderer.js index cf9e75f5..9310e0ee 100644 --- a/build/cmd/hilo/renderer/DOMRenderer.js +++ b/build/cmd/hilo/renderer/DOMRenderer.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/renderer/DOMRenderer.min.js b/build/cmd/hilo/renderer/DOMRenderer.min.js index e21ee72c..e9b8e1f3 100644 --- a/build/cmd/hilo/renderer/DOMRenderer.min.js +++ b/build/cmd/hilo/renderer/DOMRenderer.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/renderer/Renderer.js b/build/cmd/hilo/renderer/Renderer.js index 9f77fece..a321751c 100644 --- a/build/cmd/hilo/renderer/Renderer.js +++ b/build/cmd/hilo/renderer/Renderer.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/renderer/Renderer.min.js b/build/cmd/hilo/renderer/Renderer.min.js index 4e4709db..c75f2f78 100644 --- a/build/cmd/hilo/renderer/Renderer.min.js +++ b/build/cmd/hilo/renderer/Renderer.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/renderer/WebGLRenderer.js b/build/cmd/hilo/renderer/WebGLRenderer.js index 0f328525..a2aa4f81 100644 --- a/build/cmd/hilo/renderer/WebGLRenderer.js +++ b/build/cmd/hilo/renderer/WebGLRenderer.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -436,12 +436,13 @@ var WebGLRenderer = Class.create(/** @lends WebGLRenderer.prototype */{ sin = Math.sin(r); } + var pos = view.getAlignPosition(); mtx.a = cos*scaleX; mtx.b = sin*scaleX; mtx.c = -sin*scaleY; mtx.d = cos*scaleY; - mtx.tx = view.x - mtx.a * pivotX - mtx.c * pivotY; - mtx.ty = view.y - mtx.b * pivotX - mtx.d * pivotY; + mtx.tx = pos.x - mtx.a * pivotX - mtx.c * pivotY; + mtx.ty = pos.y - mtx.b * pivotX - mtx.d * pivotY; mtx.concat(ancestor.__webglWorldMatrix); }, diff --git a/build/cmd/hilo/renderer/WebGLRenderer.min.js b/build/cmd/hilo/renderer/WebGLRenderer.min.js index 0d559023..6fee4525 100644 --- a/build/cmd/hilo/renderer/WebGLRenderer.min.js +++ b/build/cmd/hilo/renderer/WebGLRenderer.min.js @@ -1,6 +1,6 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ -define(function(t,e,r){var i=t("hilo/core/Class"),a=t("hilo/core/Hilo"),n=t("hilo/renderer/Renderer"),s=t("hilo/geom/Matrix"),o=Math.PI/180,h=i.create({Extends:n,Statics:{MAX_BATCH_NUM:2e3,ATTRIBUTE_NUM:5,isSupport:function(){if(void 0==this._isSupported){var t=document.createElement("canvas");t.getContext&&(t.getContext("webgl")||t.getContext("experimental-webgl"))?this._isSupported=!0:this._isSupported=!1}return this._isSupported}},renderType:"webgl",gl:null,_isContextLost:!1,_cacheTexture:{},constructor:function(t){h.superclass.constructor.call(this,t);var e=this;this.gl=this.canvas.getContext("webgl")||this.canvas.getContext("experimental-webgl"),this.maxBatchNum=h.MAX_BATCH_NUM,this.positionStride=4*h.ATTRIBUTE_NUM;var r=this.maxBatchNum*h.ATTRIBUTE_NUM*4,i=6*this.maxBatchNum;this.arrayBuffer=new ArrayBuffer(4*r),this.float32Array=new Float32Array(this.arrayBuffer),this.uint32Array=new Uint32Array(this.arrayBuffer),this.indexs=new Uint16Array(i);for(var a=0,n=0;a0)&&(t===this.stage&&this.clear(),!0)},draw:function(t){var e=t.width,r=t.height,i=(t.background,t.drawable),a=i&&i.image;if(a){var n=i.rect,s=n[2],o=n[3];e||r||(e=t.width=s,r=t.height=o),this.batchIndex>=this.maxBatchNum&&this._renderBatches();var h=this._createVertexs(a,n[0],n[1],s,o,0,0,e,r),_=this.batchIndex*this.positionStride,c=this.float32Array,l=this.uint32Array,d=(t.tint>>16)+(65280&t.tint)+((255&t.tint)<<16)+(255*t.__webglRenderAlpha<<24);c[_+0]=h[0],c[_+1]=h[1],c[_+2]=h[2],c[_+3]=h[3],l[_+4]=d,c[_+5]=h[4],c[_+6]=h[5],c[_+7]=h[6],c[_+8]=h[7],l[_+9]=d,c[_+10]=h[8],c[_+11]=h[9],c[_+12]=h[10],c[_+13]=h[11],l[_+14]=d,c[_+15]=h[12],c[_+16]=h[13],c[_+17]=h[14],c[_+18]=h[15],l[_+19]=d;for(var u=t.__webglWorldMatrix,f=0;f<4;f++){var g=c[_+5*f],T=c[_+5*f+1];c[_+5*f]=u.a*g+u.c*T+u.tx,c[_+5*f+1]=u.b*g+u.d*T+u.ty}t.__textureImage=a,this.sprites[this.batchIndex++]=t}},endDraw:function(t){t===this.stage&&this._renderBatches()},transform:function(t){var e=t.drawable;if(e&&e.domElement)return void a.setElementStyleByView(t);var r=t.scaleX,i=t.scaleY;if(t===this.stage){var n=this.canvas.style,o=t._scaleX,h=t._scaleY,_=!1;(!o&&1!=r||o&&o!=r)&&(t._scaleX=r,n.width=r*t.width+"px",_=!0),(!h&&1!=i||h&&h!=i)&&(t._scaleY=i,n.height=i*t.height+"px",_=!0),_&&t.updateViewport(),t.__webglWorldMatrix=t.__webglWorldMatrix||new s(1,0,0,1,0,0)}else t.parent&&(t.__webglWorldMatrix=t.__webglWorldMatrix||new s(1,0,0,1,0,0),this._setConcatenatedMatrix(t,t.parent));t.alpha>0&&(t.parent&&t.parent.__webglRenderAlpha?t.__webglRenderAlpha=t.alpha*t.parent.__webglRenderAlpha:t.__webglRenderAlpha=t.alpha)},remove:function(t){var e=t.drawable,r=e&&e.domElement;if(r){var i=r.parentNode;i&&i.removeChild(r)}},clear:function(t,e,r,i){this.gl.clear(this.gl.COLOR_BUFFER_BIT)},resize:function(t,e){if(this.width!==t||this.height!==e){var r=this.canvas,i=this.stage,a=r.style;this.width=r.width=t,this.height=r.height=e,a.width=i.width*i.scaleX+"px",a.height=i.height*i.scaleY+"px",this.gl.viewport(0,0,t,e),this.canvasHalfWidth=.5*t,this.canvasHalfHeight=.5*e,this._uploadProjectionTransform(!0)}},_renderBatches:function(){var t=this.gl;t.bufferSubData(t.ARRAY_BUFFER,0,this.uint32Array.subarray(0,this.batchIndex*this.positionStride));for(var e=0,r=0,i=null,a=0;a0&&(r.bindTexture(r.TEXTURE_2D,this._getTexture(this.sprites[t])),r.drawElements(r.TRIANGLES,6*i,r.UNSIGNED_SHORT,6*t*2))},_uploadProjectionTransform:function(t){this._projectionTransformElements&&!t||(this._projectionTransformElements=new Float32Array([1/this.canvasHalfWidth,0,0,0,-1/this.canvasHalfHeight,0,-1,1,1])),this.gl.uniformMatrix3fv(this.u_projectionTransform,!1,this._projectionTransformElements)},_initShaders:function(){var t=" attribute vec2 a_position;\n attribute vec2 a_TexCoord;\n attribute vec4 a_tint;\n uniform mat3 u_projectionTransform;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_Position = vec4((u_projectionTransform * vec3(a_position, 1.0)).xy, 1.0, 1.0);\n v_TexCoord = a_TexCoord;\n v_tint = vec4(a_tint.rgb * a_tint.a, a_tint.a);\n }\n ",e="\n precision mediump float;\n uniform sampler2D u_Sampler;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_FragColor = texture2D(u_Sampler, v_TexCoord) * v_tint;\n }\n ";this.defaultShader=new _(this,{v:t,f:e},{attributes:["a_position","a_TexCoord","a_tint"],uniforms:["u_projectionTransform","u_Sampler"]})},_createVertexs:function(t,e,r,i,a,n,s,o,h){var _=this.__tempVertexs||[],c=t.width,l=t.height;i/=c,a/=l,e/=c,r/=l,o=o,h=h,n=n,s=s,i+e>1&&(i=1-e),a+r>1&&(a=1-r);var d=0;return _[d++]=n,_[d++]=s,_[d++]=e,_[d++]=r,_[d++]=n+o,_[d++]=s,_[d++]=e+i,_[d++]=r,_[d++]=n,_[d++]=s+h,_[d++]=e,_[d++]=r+a,_[d++]=n+o,_[d++]=s+h,_[d++]=e+i,_[d++]=r+a,_},_setConcatenatedMatrix:function(t,e){var r=t.__webglWorldMatrix,i=1,a=0,n=t.rotation%360,s=t.pivotX,h=t.pivotY,_=t.scaleX,c=t.scaleY;if(n){var l=n*o;i=Math.cos(l),a=Math.sin(l)}r.a=i*_,r.b=a*_,r.c=-a*c,r.d=i*c,r.tx=t.x-r.a*s-r.c*h,r.ty=t.y-r.b*s-r.d*h,r.concat(e.__webglWorldMatrix)},_getTexture:function(t){var e=t.__textureImage,r=this._cacheTexture[e.src];return r||(r=this.activeShader.uploadTexture(e)),r}}),_=function(t,e,r){this.renderer=t,this.gl=t.gl,this.program=this._createProgram(this.gl,e.v,e.f),r=r||{},this.attributes=r.attributes||[],this.uniforms=r.uniforms||[]};return _.prototype={active:function(){var t=this,e=t.renderer,r=t.gl,i=t.program;i&&r&&(e.activeShader=t,r.useProgram(i),t.attributes.forEach(function(t){e[t]=r.getAttribLocation(i,t),r.enableVertexAttribArray(e[t])}),t.uniforms.forEach(function(t){e[t]=r.getUniformLocation(i,t)}),t.width===e.width&&t.height===e.height||(t.width=e.width,t.height=e.height,e._uploadProjectionTransform()))},uploadTexture:function(t){var e=this.gl,r=this.renderer,i=e.createTexture(),a=r.u_Sampler;return e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,i),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,1),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.uniform1i(a,0),e.bindTexture(e.TEXTURE_2D,null),this.renderer._cacheTexture[t.src]=i,i},_createProgram:function(t,e,r){var i=this._createShader(t,t.VERTEX_SHADER,e),a=this._createShader(t,t.FRAGMENT_SHADER,r);if(!i||!a)return null;var n=t.createProgram();if(n){t.attachShader(n,i),t.attachShader(n,a),t.linkProgram(n),t.deleteShader(a),t.deleteShader(i);var s=t.getProgramParameter(n,t.LINK_STATUS);if(!s){var o=t.getProgramInfoLog(n);return console.log("Failed to link program: "+o),t.deleteProgram(n),null}}return n},_createShader:function(t,e,r){var i=t.createShader(e);if(i){t.shaderSource(i,r),t.compileShader(i);var a=t.getShaderParameter(i,t.COMPILE_STATUS);if(!a){var n=t.getShaderInfoLog(i);return console.log("Failed to compile shader: "+n),t.deleteShader(i),null}}return i}},h}); \ No newline at end of file +define(function(t,e,r){var i=t("hilo/core/Class"),a=t("hilo/core/Hilo"),n=t("hilo/renderer/Renderer"),s=t("hilo/geom/Matrix"),o=Math.PI/180,h=i.create({Extends:n,Statics:{MAX_BATCH_NUM:2e3,ATTRIBUTE_NUM:5,isSupport:function(){if(void 0==this._isSupported){var t=document.createElement("canvas");t.getContext&&(t.getContext("webgl")||t.getContext("experimental-webgl"))?this._isSupported=!0:this._isSupported=!1}return this._isSupported}},renderType:"webgl",gl:null,_isContextLost:!1,_cacheTexture:{},constructor:function(t){h.superclass.constructor.call(this,t);var e=this;this.gl=this.canvas.getContext("webgl")||this.canvas.getContext("experimental-webgl"),this.maxBatchNum=h.MAX_BATCH_NUM,this.positionStride=4*h.ATTRIBUTE_NUM;var r=this.maxBatchNum*h.ATTRIBUTE_NUM*4,i=6*this.maxBatchNum;this.arrayBuffer=new ArrayBuffer(4*r),this.float32Array=new Float32Array(this.arrayBuffer),this.uint32Array=new Uint32Array(this.arrayBuffer),this.indexs=new Uint16Array(i);for(var a=0,n=0;a0)&&(t===this.stage&&this.clear(),!0)},draw:function(t){var e=t.width,r=t.height,i=(t.background,t.drawable),a=i&&i.image;if(a){var n=i.rect,s=n[2],o=n[3];e||r||(e=t.width=s,r=t.height=o),this.batchIndex>=this.maxBatchNum&&this._renderBatches();var h=this._createVertexs(a,n[0],n[1],s,o,0,0,e,r),_=this.batchIndex*this.positionStride,c=this.float32Array,l=this.uint32Array,d=(t.tint>>16)+(65280&t.tint)+((255&t.tint)<<16)+(255*t.__webglRenderAlpha<<24);c[_+0]=h[0],c[_+1]=h[1],c[_+2]=h[2],c[_+3]=h[3],l[_+4]=d,c[_+5]=h[4],c[_+6]=h[5],c[_+7]=h[6],c[_+8]=h[7],l[_+9]=d,c[_+10]=h[8],c[_+11]=h[9],c[_+12]=h[10],c[_+13]=h[11],l[_+14]=d,c[_+15]=h[12],c[_+16]=h[13],c[_+17]=h[14],c[_+18]=h[15],l[_+19]=d;for(var u=t.__webglWorldMatrix,f=0;f<4;f++){var g=c[_+5*f],T=c[_+5*f+1];c[_+5*f]=u.a*g+u.c*T+u.tx,c[_+5*f+1]=u.b*g+u.d*T+u.ty}t.__textureImage=a,this.sprites[this.batchIndex++]=t}},endDraw:function(t){t===this.stage&&this._renderBatches()},transform:function(t){var e=t.drawable;if(e&&e.domElement)return void a.setElementStyleByView(t);var r=t.scaleX,i=t.scaleY;if(t===this.stage){var n=this.canvas.style,o=t._scaleX,h=t._scaleY,_=!1;(!o&&1!=r||o&&o!=r)&&(t._scaleX=r,n.width=r*t.width+"px",_=!0),(!h&&1!=i||h&&h!=i)&&(t._scaleY=i,n.height=i*t.height+"px",_=!0),_&&t.updateViewport(),t.__webglWorldMatrix=t.__webglWorldMatrix||new s(1,0,0,1,0,0)}else t.parent&&(t.__webglWorldMatrix=t.__webglWorldMatrix||new s(1,0,0,1,0,0),this._setConcatenatedMatrix(t,t.parent));t.alpha>0&&(t.parent&&t.parent.__webglRenderAlpha?t.__webglRenderAlpha=t.alpha*t.parent.__webglRenderAlpha:t.__webglRenderAlpha=t.alpha)},remove:function(t){var e=t.drawable,r=e&&e.domElement;if(r){var i=r.parentNode;i&&i.removeChild(r)}},clear:function(t,e,r,i){this.gl.clear(this.gl.COLOR_BUFFER_BIT)},resize:function(t,e){if(this.width!==t||this.height!==e){var r=this.canvas,i=this.stage,a=r.style;this.width=r.width=t,this.height=r.height=e,a.width=i.width*i.scaleX+"px",a.height=i.height*i.scaleY+"px",this.gl.viewport(0,0,t,e),this.canvasHalfWidth=.5*t,this.canvasHalfHeight=.5*e,this._uploadProjectionTransform(!0)}},_renderBatches:function(){var t=this.gl;t.bufferSubData(t.ARRAY_BUFFER,0,this.uint32Array.subarray(0,this.batchIndex*this.positionStride));for(var e=0,r=0,i=null,a=0;a0&&(r.bindTexture(r.TEXTURE_2D,this._getTexture(this.sprites[t])),r.drawElements(r.TRIANGLES,6*i,r.UNSIGNED_SHORT,6*t*2))},_uploadProjectionTransform:function(t){this._projectionTransformElements&&!t||(this._projectionTransformElements=new Float32Array([1/this.canvasHalfWidth,0,0,0,-1/this.canvasHalfHeight,0,-1,1,1])),this.gl.uniformMatrix3fv(this.u_projectionTransform,!1,this._projectionTransformElements)},_initShaders:function(){var t=" attribute vec2 a_position;\n attribute vec2 a_TexCoord;\n attribute vec4 a_tint;\n uniform mat3 u_projectionTransform;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_Position = vec4((u_projectionTransform * vec3(a_position, 1.0)).xy, 1.0, 1.0);\n v_TexCoord = a_TexCoord;\n v_tint = vec4(a_tint.rgb * a_tint.a, a_tint.a);\n }\n ",e="\n precision mediump float;\n uniform sampler2D u_Sampler;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_FragColor = texture2D(u_Sampler, v_TexCoord) * v_tint;\n }\n ";this.defaultShader=new _(this,{v:t,f:e},{attributes:["a_position","a_TexCoord","a_tint"],uniforms:["u_projectionTransform","u_Sampler"]})},_createVertexs:function(t,e,r,i,a,n,s,o,h){var _=this.__tempVertexs||[],c=t.width,l=t.height;i/=c,a/=l,e/=c,r/=l,o=o,h=h,n=n,s=s,i+e>1&&(i=1-e),a+r>1&&(a=1-r);var d=0;return _[d++]=n,_[d++]=s,_[d++]=e,_[d++]=r,_[d++]=n+o,_[d++]=s,_[d++]=e+i,_[d++]=r,_[d++]=n,_[d++]=s+h,_[d++]=e,_[d++]=r+a,_[d++]=n+o,_[d++]=s+h,_[d++]=e+i,_[d++]=r+a,_},_setConcatenatedMatrix:function(t,e){var r=t.__webglWorldMatrix,i=1,a=0,n=t.rotation%360,s=t.pivotX,h=t.pivotY,_=t.scaleX,c=t.scaleY;if(n){var l=n*o;i=Math.cos(l),a=Math.sin(l)}var d=t.getAlignPosition();r.a=i*_,r.b=a*_,r.c=-a*c,r.d=i*c,r.tx=d.x-r.a*s-r.c*h,r.ty=d.y-r.b*s-r.d*h,r.concat(e.__webglWorldMatrix)},_getTexture:function(t){var e=t.__textureImage,r=this._cacheTexture[e.src];return r||(r=this.activeShader.uploadTexture(e)),r}}),_=function(t,e,r){this.renderer=t,this.gl=t.gl,this.program=this._createProgram(this.gl,e.v,e.f),r=r||{},this.attributes=r.attributes||[],this.uniforms=r.uniforms||[]};return _.prototype={active:function(){var t=this,e=t.renderer,r=t.gl,i=t.program;i&&r&&(e.activeShader=t,r.useProgram(i),t.attributes.forEach(function(t){e[t]=r.getAttribLocation(i,t),r.enableVertexAttribArray(e[t])}),t.uniforms.forEach(function(t){e[t]=r.getUniformLocation(i,t)}),t.width===e.width&&t.height===e.height||(t.width=e.width,t.height=e.height,e._uploadProjectionTransform()))},uploadTexture:function(t){var e=this.gl,r=this.renderer,i=e.createTexture(),a=r.u_Sampler;return e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,i),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,1),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.uniform1i(a,0),e.bindTexture(e.TEXTURE_2D,null),this.renderer._cacheTexture[t.src]=i,i},_createProgram:function(t,e,r){var i=this._createShader(t,t.VERTEX_SHADER,e),a=this._createShader(t,t.FRAGMENT_SHADER,r);if(!i||!a)return null;var n=t.createProgram();if(n){t.attachShader(n,i),t.attachShader(n,a),t.linkProgram(n),t.deleteShader(a),t.deleteShader(i);var s=t.getProgramParameter(n,t.LINK_STATUS);if(!s){var o=t.getProgramInfoLog(n);return console.log("Failed to link program: "+o),t.deleteProgram(n),null}}return n},_createShader:function(t,e,r){var i=t.createShader(e);if(i){t.shaderSource(i,r),t.compileShader(i);var a=t.getShaderParameter(i,t.COMPILE_STATUS);if(!a){var n=t.getShaderInfoLog(i);return console.log("Failed to compile shader: "+n),t.deleteShader(i),null}}return i}},h}); \ No newline at end of file diff --git a/build/cmd/hilo/tween/Ease.js b/build/cmd/hilo/tween/Ease.js index 54ad9d51..29015378 100644 --- a/build/cmd/hilo/tween/Ease.js +++ b/build/cmd/hilo/tween/Ease.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/tween/Ease.min.js b/build/cmd/hilo/tween/Ease.min.js index 32f35a21..41d84c2a 100644 --- a/build/cmd/hilo/tween/Ease.min.js +++ b/build/cmd/hilo/tween/Ease.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/tween/Tween.js b/build/cmd/hilo/tween/Tween.js index d4c26696..3ff3e7db 100644 --- a/build/cmd/hilo/tween/Tween.js +++ b/build/cmd/hilo/tween/Tween.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/tween/Tween.min.js b/build/cmd/hilo/tween/Tween.min.js index de1549d8..c6f57852 100644 --- a/build/cmd/hilo/tween/Tween.min.js +++ b/build/cmd/hilo/tween/Tween.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/util/TextureAtlas.js b/build/cmd/hilo/util/TextureAtlas.js index 3a0260ad..7cb8bc67 100644 --- a/build/cmd/hilo/util/TextureAtlas.js +++ b/build/cmd/hilo/util/TextureAtlas.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -75,7 +75,7 @@ return Class.create(/** @lends TextureAtlas.prototype */{ * @param {String} frames Frames message, eg:"0-5" means frame 0 to frame 5. * @param {Number} w The width of each frame. * @param {Number} h The height of each frame. - * @param {Bollean} loop Is play in loop. + * @param {Boolean} loop Is play in loop. * @param {Number} duration The time between each frame. default value is 1 (Frame), but if timeBased is true, default value will be duration(milli-second). * @example * //demo1 make one animation diff --git a/build/cmd/hilo/util/TextureAtlas.min.js b/build/cmd/hilo/util/TextureAtlas.min.js index 79784f14..058706b5 100644 --- a/build/cmd/hilo/util/TextureAtlas.min.js +++ b/build/cmd/hilo/util/TextureAtlas.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/util/Ticker.js b/build/cmd/hilo/util/Ticker.js index f1570fd1..ee442d4f 100644 --- a/build/cmd/hilo/util/Ticker.js +++ b/build/cmd/hilo/util/Ticker.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/util/Ticker.min.js b/build/cmd/hilo/util/Ticker.min.js index c20a2829..f5254aba 100644 --- a/build/cmd/hilo/util/Ticker.min.js +++ b/build/cmd/hilo/util/Ticker.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/util/browser.js b/build/cmd/hilo/util/browser.js index 96d2dd02..942925bf 100644 --- a/build/cmd/hilo/util/browser.js +++ b/build/cmd/hilo/util/browser.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/util/browser.min.js b/build/cmd/hilo/util/browser.min.js index ffa07dbc..b72cd0af 100644 --- a/build/cmd/hilo/util/browser.min.js +++ b/build/cmd/hilo/util/browser.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/util/drag.js b/build/cmd/hilo/util/drag.js index 3a260b62..1bb87cd6 100644 --- a/build/cmd/hilo/util/drag.js +++ b/build/cmd/hilo/util/drag.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/util/drag.min.js b/build/cmd/hilo/util/drag.min.js index c3a4c4f6..5ab81d46 100644 --- a/build/cmd/hilo/util/drag.min.js +++ b/build/cmd/hilo/util/drag.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/util/polyfill.js b/build/cmd/hilo/util/polyfill.js index 50ea6fe9..3d948dd0 100644 --- a/build/cmd/hilo/util/polyfill.js +++ b/build/cmd/hilo/util/polyfill.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/util/polyfill.min.js b/build/cmd/hilo/util/polyfill.min.js index 25c504ed..72e7a954 100644 --- a/build/cmd/hilo/util/polyfill.min.js +++ b/build/cmd/hilo/util/polyfill.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/util/util.js b/build/cmd/hilo/util/util.js index 979ee0ec..3b3e4439 100644 --- a/build/cmd/hilo/util/util.js +++ b/build/cmd/hilo/util/util.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/util/util.min.js b/build/cmd/hilo/util/util.min.js index 93ba5cce..243cc1c3 100644 --- a/build/cmd/hilo/util/util.min.js +++ b/build/cmd/hilo/util/util.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/view/Bitmap.js b/build/cmd/hilo/view/Bitmap.js index 54349093..68430466 100644 --- a/build/cmd/hilo/view/Bitmap.js +++ b/build/cmd/hilo/view/Bitmap.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/view/Bitmap.min.js b/build/cmd/hilo/view/Bitmap.min.js index 1c7ad2d2..a6760108 100644 --- a/build/cmd/hilo/view/Bitmap.min.js +++ b/build/cmd/hilo/view/Bitmap.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/view/BitmapText.js b/build/cmd/hilo/view/BitmapText.js index d7e31563..0ccad2d2 100644 --- a/build/cmd/hilo/view/BitmapText.js +++ b/build/cmd/hilo/view/BitmapText.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/view/BitmapText.min.js b/build/cmd/hilo/view/BitmapText.min.js index ee8681ae..00c8edd1 100644 --- a/build/cmd/hilo/view/BitmapText.min.js +++ b/build/cmd/hilo/view/BitmapText.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/view/Button.js b/build/cmd/hilo/view/Button.js index 0ed44aff..856db3f8 100644 --- a/build/cmd/hilo/view/Button.js +++ b/build/cmd/hilo/view/Button.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/view/Button.min.js b/build/cmd/hilo/view/Button.min.js index c6984e93..dc7e3369 100644 --- a/build/cmd/hilo/view/Button.min.js +++ b/build/cmd/hilo/view/Button.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/view/CacheMixin.js b/build/cmd/hilo/view/CacheMixin.js index 8fa82a4a..1eabd803 100644 --- a/build/cmd/hilo/view/CacheMixin.js +++ b/build/cmd/hilo/view/CacheMixin.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/view/CacheMixin.min.js b/build/cmd/hilo/view/CacheMixin.min.js index ee940bd3..e1f5bba3 100644 --- a/build/cmd/hilo/view/CacheMixin.min.js +++ b/build/cmd/hilo/view/CacheMixin.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/view/Container.js b/build/cmd/hilo/view/Container.js index 50275878..0c3ee35b 100644 --- a/build/cmd/hilo/view/Container.js +++ b/build/cmd/hilo/view/Container.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/view/Container.min.js b/build/cmd/hilo/view/Container.min.js index 11ff5e6c..cdda7f78 100644 --- a/build/cmd/hilo/view/Container.min.js +++ b/build/cmd/hilo/view/Container.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/view/DOMElement.js b/build/cmd/hilo/view/DOMElement.js index a07a24c2..9155f802 100644 --- a/build/cmd/hilo/view/DOMElement.js +++ b/build/cmd/hilo/view/DOMElement.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/view/DOMElement.min.js b/build/cmd/hilo/view/DOMElement.min.js index ef901fb5..6fe6e260 100644 --- a/build/cmd/hilo/view/DOMElement.min.js +++ b/build/cmd/hilo/view/DOMElement.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/view/Drawable.js b/build/cmd/hilo/view/Drawable.js index bca40907..bd80276d 100644 --- a/build/cmd/hilo/view/Drawable.js +++ b/build/cmd/hilo/view/Drawable.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/view/Drawable.min.js b/build/cmd/hilo/view/Drawable.min.js index 7e86e878..4d3f3795 100644 --- a/build/cmd/hilo/view/Drawable.min.js +++ b/build/cmd/hilo/view/Drawable.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/view/Graphics.js b/build/cmd/hilo/view/Graphics.js index f38a25f7..5ab35ff6 100644 --- a/build/cmd/hilo/view/Graphics.js +++ b/build/cmd/hilo/view/Graphics.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/view/Graphics.min.js b/build/cmd/hilo/view/Graphics.min.js index 7da790a1..355497ef 100644 --- a/build/cmd/hilo/view/Graphics.min.js +++ b/build/cmd/hilo/view/Graphics.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/view/Sprite.js b/build/cmd/hilo/view/Sprite.js index bf788d40..65ddeebd 100644 --- a/build/cmd/hilo/view/Sprite.js +++ b/build/cmd/hilo/view/Sprite.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/view/Sprite.min.js b/build/cmd/hilo/view/Sprite.min.js index 064e97c0..a22f3f3a 100644 --- a/build/cmd/hilo/view/Sprite.min.js +++ b/build/cmd/hilo/view/Sprite.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/view/Stage.js b/build/cmd/hilo/view/Stage.js index 6157ca02..5c29c25e 100644 --- a/build/cmd/hilo/view/Stage.js +++ b/build/cmd/hilo/view/Stage.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/view/Stage.min.js b/build/cmd/hilo/view/Stage.min.js index 5af9b115..9402ae35 100644 --- a/build/cmd/hilo/view/Stage.min.js +++ b/build/cmd/hilo/view/Stage.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/view/Text.js b/build/cmd/hilo/view/Text.js index 4f8c6f89..444de1cd 100644 --- a/build/cmd/hilo/view/Text.js +++ b/build/cmd/hilo/view/Text.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/view/Text.min.js b/build/cmd/hilo/view/Text.min.js index a87fe34e..a5d6e672 100644 --- a/build/cmd/hilo/view/Text.min.js +++ b/build/cmd/hilo/view/Text.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/cmd/hilo/view/View.js b/build/cmd/hilo/view/View.js index 9f8f27a1..ca3ebc82 100644 --- a/build/cmd/hilo/view/View.js +++ b/build/cmd/hilo/view/View.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -202,11 +202,72 @@ return Class.create(/** @lends View.prototype */{ if(pivotX != 0) mtx.tx -= pivotX; if(pivotY != 0) mtx.ty -= pivotY; - mtx.concat(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, o.x, o.y); + + var pos = o.getAlignPosition(); + mtx.concat(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, pos.x, pos.y); } return mtx; }, + getAlignPosition: function(){ + var parent = this.parent; + var align = this.align; + var x = this.x; + var y = this.y; + + if(parent && this.align){ + if(typeof align === 'function'){ + return this.align(); + } + + var w = this.width, h = this.height, + pw = parent.width, ph = parent.height; + switch(align){ + case 'TL': + x = 0; + y = 0; + break; + case 'T': + x = pw - w >> 1; + y = 0; + break; + case 'TR': + x = pw - w; + y = 0; + break; + case 'L': + x = 0; + y = ph - h >> 1; + break; + case 'C': + x = pw - w >> 1; + y = ph - h >> 1; + break; + case 'R': + x = pw - w; + y = ph - h >> 1; + break; + case 'BL': + x = 0; + y = ph - h; + break; + case 'B': + x = pw - w >> 1; + y = ph - h; + break; + case 'BR': + x = pw - w; + y = ph - h; + break; + } + } + + return { + x:x, + y:y + }; + }, + /** * @language=en * Determining whether a point is in the circumscribed rectangle of current view. diff --git a/build/cmd/hilo/view/View.min.js b/build/cmd/hilo/view/View.min.js index beb64489..370f2ac7 100644 --- a/build/cmd/hilo/view/View.min.js +++ b/build/cmd/hilo/view/View.min.js @@ -1,6 +1,6 @@ /** - * Hilo 1.1.4 for cmd + * Hilo 1.1.5 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ -define(function(t,e,i){var n=t("hilo/core/Hilo"),r=t("hilo/core/Class"),o=t("hilo/event/EventMixin"),a=t("hilo/geom/Matrix"),h=t("hilo/util/util"),s=function(){function t(t,e,i){for(var n,r,o,a,h=0,s=!1,u=0,y=i.length;ux.x?(n=x.x,r=l.x):(n=l.x,r=x.x),t>=n&&t<=r))s=!0;else if(l.y>x.y?(o=x.y,a=l.y):(o=l.y,a=x.y),!(ea)){var d=(e-l.y)*(x.x-l.x)/(x.y-l.y)+l.x;if(d>t?h++:d==t&&(s=!0),l.x>t&&l.y==e){var c=i[(y+u-1)%y];(c.ye||c.y>e&&x.yh?h=y:yu?u=y:y=0)return!1;l>i.overlap&&(i.overlap=l,i.normal.x=c.x,i.normal.y=c.y)}return i}return r.create({Mixes:o,constructor:function(t){t=t||{},this.id=this.id||t.id||n.getUid("View"),h.copy(this,t,!0)},tint:16777215,id:null,x:0,y:0,width:0,height:0,alpha:1,rotation:0,visible:!0,pivotX:0,pivotY:0,scaleX:1,scaleY:1,pointerEnabled:!0,background:null,mask:null,align:null,drawable:null,boundsArea:null,parent:null,depth:-1,blendMode:"source-over",getStage:function(){for(var t,e=this;t=e.parent;)e=t;return e.canvas?e:null},getScaledWidth:function(){return this.width*this.scaleX},getScaledHeight:function(){return this.height*this.scaleY},addTo:function(t,e){return"number"==typeof e?t.addChildAt(this,e):t.addChild(this),this},removeFromParent:function(){var t=this.parent;return t&&t.removeChild(this),this},getBounds:function(){for(var t,e,i,n,r,o,a,h=this.width,s=this.height,u=this.getConcatenatedMatrix(),y=this.boundsArea||[{x:0,y:0},{x:h,y:0},{x:h,y:s},{x:0,y:s}],l=[],x=0,d=y.length;xe?n=e:ri?o=i:a=r.x&&e<=r.x+r.width&&i>=r.y&&i<=r.y+r.height;return o&&n&&(o=t(e,i,r)),o},hitTestObject:function(t,i){var n=this.getBounds(),r=t.getBounds(),o=n.x<=r.x+r.width&&r.x<=n.x+n.width&&n.y<=r.y+r.height&&r.y<=n.y+n.height;return o&&i&&(o=e(n,r)),!!o},_render:function(t,e){this.onUpdate&&this.onUpdate(e)===!1||!t.startDraw(this)||(t.transform(this),this.render(t,e),t.endDraw(this))},_fireMouseEvent:function(t){if(t.eventCurrentTarget=this,this.fire(t),"mousemove"==t.type){if(!this.__mouseOver){this.__mouseOver=!0;var e=h.copy({},t);e.type="mouseover",this.fire(e)}}else"mouseout"==t.type&&(this.__mouseOver=!1);var i=this.parent;t._stopped||t._stopPropagationed||!i||("mouseout"==t.type||"touchout"==t.type?i.hitTestPoint(t.stageX,t.stageY,!0)||i._fireMouseEvent(t):i._fireMouseEvent(t))},onUpdate:null,render:function(t,e){t.draw(this)},toString:function(){return n.viewToString(this)}})}();return s}); \ No newline at end of file +define(function(t,e,i){var n=t("hilo/core/Hilo"),r=t("hilo/core/Class"),o=t("hilo/event/EventMixin"),a=t("hilo/geom/Matrix"),s=t("hilo/util/util"),h=function(){function t(t,e,i){for(var n,r,o,a,s=0,h=!1,u=0,y=i.length;uc.x?(n=c.x,r=l.x):(n=l.x,r=c.x),t>=n&&t<=r))h=!0;else if(l.y>c.y?(o=c.y,a=l.y):(o=l.y,a=c.y),!(ea)){var x=(e-l.y)*(c.x-l.x)/(c.y-l.y)+l.x;if(x>t?s++:x==t&&(h=!0),l.x>t&&l.y==e){var d=i[(y+u-1)%y];(d.ye||d.y>e&&c.ys?s=y:yu?u=y:y=0)return!1;l>i.overlap&&(i.overlap=l,i.normal.x=d.x,i.normal.y=d.y)}return i}return r.create({Mixes:o,constructor:function(t){t=t||{},this.id=this.id||t.id||n.getUid("View"),s.copy(this,t,!0)},tint:16777215,id:null,x:0,y:0,width:0,height:0,alpha:1,rotation:0,visible:!0,pivotX:0,pivotY:0,scaleX:1,scaleY:1,pointerEnabled:!0,background:null,mask:null,align:null,drawable:null,boundsArea:null,parent:null,depth:-1,blendMode:"source-over",getStage:function(){for(var t,e=this;t=e.parent;)e=t;return e.canvas?e:null},getScaledWidth:function(){return this.width*this.scaleX},getScaledHeight:function(){return this.height*this.scaleY},addTo:function(t,e){return"number"==typeof e?t.addChildAt(this,e):t.addChild(this),this},removeFromParent:function(){var t=this.parent;return t&&t.removeChild(this),this},getBounds:function(){for(var t,e,i,n,r,o,a,s=this.width,h=this.height,u=this.getConcatenatedMatrix(),y=this.boundsArea||[{x:0,y:0},{x:s,y:0},{x:s,y:h},{x:0,y:h}],l=[],c=0,x=y.length;ce?n=e:ri?o=i:a>1,n=0;break;case"TR":i=a-r,n=0;break;case"L":i=0,n=s-o>>1;break;case"C":i=a-r>>1,n=s-o>>1;break;case"R":i=a-r,n=s-o>>1;break;case"BL":i=0,n=s-o;break;case"B":i=a-r>>1,n=s-o;break;case"BR":i=a-r,n=s-o}}return{x:i,y:n}},hitTestPoint:function(e,i,n){var r=this.getBounds(),o=e>=r.x&&e<=r.x+r.width&&i>=r.y&&i<=r.y+r.height;return o&&n&&(o=t(e,i,r)),o},hitTestObject:function(t,i){var n=this.getBounds(),r=t.getBounds(),o=n.x<=r.x+r.width&&r.x<=n.x+n.width&&n.y<=r.y+r.height&&r.y<=n.y+n.height;return o&&i&&(o=e(n,r)),!!o},_render:function(t,e){this.onUpdate&&this.onUpdate(e)===!1||!t.startDraw(this)||(t.transform(this),this.render(t,e),t.endDraw(this))},_fireMouseEvent:function(t){if(t.eventCurrentTarget=this,this.fire(t),"mousemove"==t.type){if(!this.__mouseOver){this.__mouseOver=!0;var e=s.copy({},t);e.type="mouseover",this.fire(e)}}else"mouseout"==t.type&&(this.__mouseOver=!1);var i=this.parent;t._stopped||t._stopPropagationed||!i||("mouseout"==t.type||"touchout"==t.type?i.hitTestPoint(t.stageX,t.stageY,!0)||i._fireMouseEvent(t):i._fireMouseEvent(t))},onUpdate:null,render:function(t,e){t.draw(this)},toString:function(){return n.viewToString(this)}})}();return h}); \ No newline at end of file diff --git a/build/commonjs/core/Class.js b/build/commonjs/core/Class.js index 02cdba78..1686cb6b 100644 --- a/build/commonjs/core/Class.js +++ b/build/commonjs/core/Class.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/core/Class.min.js b/build/commonjs/core/Class.min.js index f97c37c7..def79606 100644 --- a/build/commonjs/core/Class.min.js +++ b/build/commonjs/core/Class.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/core/Hilo.js b/build/commonjs/core/Hilo.js index 24d27bf4..1673def5 100644 --- a/build/commonjs/core/Hilo.js +++ b/build/commonjs/core/Hilo.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -26,7 +26,7 @@ var Hilo = { * Hilo version * @type String */ - version:'1.1.4', + version:'1.1.5', /** * @language=en * Gets a globally unique id. Such as Stage1, Bitmap2 etc. diff --git a/build/commonjs/core/Hilo.min.js b/build/commonjs/core/Hilo.min.js index 5c4c6ce7..3f260a60 100644 --- a/build/commonjs/core/Hilo.min.js +++ b/build/commonjs/core/Hilo.min.js @@ -1,6 +1,6 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ -var browser=require("../util/browser"),util=require("../util/util"),win=window,doc=document,docElem=doc.documentElement,uid=0,hasWarnedDict={},Hilo={version:"1.1.4",getUid:function(e){var t=++uid;if(e){var o=e.charCodeAt(e.length-1);return o>=48&&o<=57&&(e+="_"),e+t}return t},viewToString:function(e){for(var t,o=e;o;)t=t?o.id+"."+t:o.id,o=o.parent;return t},copy:function(e,t,o){return util.copy(e,t,o),hasWarnedDict.copy||(hasWarnedDict.copy=!0,console.warn("Hilo.copy has been Deprecated! Use Hilo.util.copy instead.")),e},browser:browser,event:function(){var e="ontouchstart"in win;return{POINTER_START:e?"touchstart":"mousedown",POINTER_MOVE:e?"touchmove":"mousemove",POINTER_END:e?"touchend":"mouseup"}}(),align:{TOP_LEFT:"TL",TOP:"T",TOP_RIGHT:"TR",LEFT:"L",CENTER:"C",RIGHT:"R",BOTTOM_LEFT:"BL",BOTTOM:"B",BOTTOM_RIGHT:"BR"},getElementRect:function(e){var t;try{t=e.getBoundingClientRect()}catch(o){t={top:e.offsetTop,left:e.offsetLeft,right:e.offsetLeft+e.offsetWidth,bottom:e.offsetTop+e.offsetHeight}}var a=(win.pageXOffset||docElem.scrollLeft)-(docElem.clientLeft||0)||0,r=(win.pageYOffset||docElem.scrollTop)-(docElem.clientTop||0)||0,i=win.getComputedStyle?getComputedStyle(e):e.currentStyle,n=parseInt,s=n(i.paddingLeft)+n(i.borderLeftWidth)||0,c=n(i.paddingTop)+n(i.borderTopWidth)||0,d=n(i.paddingRight)+n(i.borderRightWidth)||0,h=n(i.paddingBottom)+n(i.borderBottomWidth)||0,l=t.top||0,f=t.left||0,g=t.right||0,u=t.bottom||0;return{left:f+a+s,top:l+r+c,width:g-d-f-s,height:u-h-l-c}},createElement:function(e,t){var o,a,r,i=doc.createElement(e);for(o in t)if(a=t[o],"style"===o)for(r in a)i.style[r]=a[r];else i[o]=a;return i},getElement:function(e){return doc.getElementById(e)},setElementStyleByView:function(e){var t=e.drawable,o=t.domElement.style,a=e._stateCache||(e._stateCache={}),r=Hilo.browser.jsVendor,i="px",n=!1;if(this.cacheStateIfChanged(e,["visible"],a)&&(o.display=e.visible?"":"none"),this.cacheStateIfChanged(e,["alpha"],a)&&(o.opacity=e.alpha),e.visible&&!(e.alpha<=0)){this.cacheStateIfChanged(e,["width"],a)&&(o.width=e.width+i),this.cacheStateIfChanged(e,["height"],a)&&(o.height=e.height+i),this.cacheStateIfChanged(e,["depth"],a)&&(o.zIndex=e.depth+1),(n=this.cacheStateIfChanged(e,["pivotX","pivotY"],a))&&(o[r+"TransformOrigin"]=e.pivotX+i+" "+e.pivotY+i),(this.cacheStateIfChanged(e,["x","y","rotation","scaleX","scaleY"],a)||n)&&(o[r+"Transform"]=this.getTransformCSS(e)),this.cacheStateIfChanged(e,["background"],a)&&(o.backgroundColor=e.background),o.pointerEvents||(o.pointerEvents="none");var s=t.image;if(s){var c=s.src;c!==a.image&&(a.image=c,o.backgroundImage="url("+c+")");var d=t.rect;if(d){var h=d[0],l=d[1];h!==a.sx&&(a.sx=h,o.backgroundPositionX=-h+i),l!==a.sy&&(a.sy=l,o.backgroundPositionY=-l+i)}}var f=e.mask;if(f){var g=f.drawable.domElement.style.backgroundImage;g!==a.maskImage&&(a.maskImage=g,o[r+"MaskImage"]=g,o[r+"MaskRepeat"]="no-repeat");var u=f.x,p=f.y;u===a.maskX&&p===a.maskY||(a.maskX=u,a.maskY=p,o[r+"MaskPosition"]=u+i+" "+p+i)}}},cacheStateIfChanged:function(e,t,o){var a,r,i,n,s=!1;for(a=0,r=t.length;a=48&&o<=57&&(e+="_"),e+t}return t},viewToString:function(e){for(var t,o=e;o;)t=t?o.id+"."+t:o.id,o=o.parent;return t},copy:function(e,t,o){return util.copy(e,t,o),hasWarnedDict.copy||(hasWarnedDict.copy=!0,console.warn("Hilo.copy has been Deprecated! Use Hilo.util.copy instead.")),e},browser:browser,event:function(){var e="ontouchstart"in win;return{POINTER_START:e?"touchstart":"mousedown",POINTER_MOVE:e?"touchmove":"mousemove",POINTER_END:e?"touchend":"mouseup"}}(),align:{TOP_LEFT:"TL",TOP:"T",TOP_RIGHT:"TR",LEFT:"L",CENTER:"C",RIGHT:"R",BOTTOM_LEFT:"BL",BOTTOM:"B",BOTTOM_RIGHT:"BR"},getElementRect:function(e){var t;try{t=e.getBoundingClientRect()}catch(o){t={top:e.offsetTop,left:e.offsetLeft,right:e.offsetLeft+e.offsetWidth,bottom:e.offsetTop+e.offsetHeight}}var a=(win.pageXOffset||docElem.scrollLeft)-(docElem.clientLeft||0)||0,r=(win.pageYOffset||docElem.scrollTop)-(docElem.clientTop||0)||0,i=win.getComputedStyle?getComputedStyle(e):e.currentStyle,n=parseInt,s=n(i.paddingLeft)+n(i.borderLeftWidth)||0,c=n(i.paddingTop)+n(i.borderTopWidth)||0,d=n(i.paddingRight)+n(i.borderRightWidth)||0,h=n(i.paddingBottom)+n(i.borderBottomWidth)||0,l=t.top||0,f=t.left||0,g=t.right||0,u=t.bottom||0;return{left:f+a+s,top:l+r+c,width:g-d-f-s,height:u-h-l-c}},createElement:function(e,t){var o,a,r,i=doc.createElement(e);for(o in t)if(a=t[o],"style"===o)for(r in a)i.style[r]=a[r];else i[o]=a;return i},getElement:function(e){return doc.getElementById(e)},setElementStyleByView:function(e){var t=e.drawable,o=t.domElement.style,a=e._stateCache||(e._stateCache={}),r=Hilo.browser.jsVendor,i="px",n=!1;if(this.cacheStateIfChanged(e,["visible"],a)&&(o.display=e.visible?"":"none"),this.cacheStateIfChanged(e,["alpha"],a)&&(o.opacity=e.alpha),e.visible&&!(e.alpha<=0)){this.cacheStateIfChanged(e,["width"],a)&&(o.width=e.width+i),this.cacheStateIfChanged(e,["height"],a)&&(o.height=e.height+i),this.cacheStateIfChanged(e,["depth"],a)&&(o.zIndex=e.depth+1),(n=this.cacheStateIfChanged(e,["pivotX","pivotY"],a))&&(o[r+"TransformOrigin"]=e.pivotX+i+" "+e.pivotY+i),(this.cacheStateIfChanged(e,["x","y","rotation","scaleX","scaleY"],a)||n)&&(o[r+"Transform"]=this.getTransformCSS(e)),this.cacheStateIfChanged(e,["background"],a)&&(o.backgroundColor=e.background),o.pointerEvents||(o.pointerEvents="none");var s=t.image;if(s){var c=s.src;c!==a.image&&(a.image=c,o.backgroundImage="url("+c+")");var d=t.rect;if(d){var h=d[0],l=d[1];h!==a.sx&&(a.sx=h,o.backgroundPositionX=-h+i),l!==a.sy&&(a.sy=l,o.backgroundPositionY=-l+i)}}var f=e.mask;if(f){var g=f.drawable.domElement.style.backgroundImage;g!==a.maskImage&&(a.maskImage=g,o[r+"MaskImage"]=g,o[r+"MaskRepeat"]="no-repeat");var u=f.x,p=f.y;u===a.maskX&&p===a.maskY||(a.maskX=u,a.maskY=p,o[r+"MaskPosition"]=u+i+" "+p+i)}}},cacheStateIfChanged:function(e,t,o){var a,r,i,n,s=!1;for(a=0,r=t.length;a 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 Z>t(?|?Lvn+CXinarb0+hgLW3^{{d`@IQRen delta 63751 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 1; - y = 0; - break; - case 'TR': - x = pw - w; - y = 0; - break; - case 'L': - x = 0; - y = ph - h >> 1; - break; - case 'C': - x = pw - w >> 1; - y = ph - h >> 1; - break; - case 'R': - x = pw - w; - y = ph - h >> 1; - break; - case 'BL': - x = 0; - y = ph - h; - break; - case 'B': - x = pw - w >> 1; - y = ph - h; - break; - case 'BR': - x = pw - w; - y = ph - h; - break; - } - } - } + var pos = target.getAlignPosition(); + x = pos.x; + y = pos.y; } if(x != 0 || y != 0) ctx.translate(x, y); diff --git a/build/commonjs/renderer/CanvasRenderer.min.js b/build/commonjs/renderer/CanvasRenderer.min.js index ff68947a..c1d2b0c0 100644 --- a/build/commonjs/renderer/CanvasRenderer.min.js +++ b/build/commonjs/renderer/CanvasRenderer.min.js @@ -1,6 +1,6 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ -var Class=require("../core/Class"),Hilo=require("../core/Hilo"),Renderer=require("./Renderer"),CanvasRenderer=Class.create({Extends:Renderer,constructor:function(e){CanvasRenderer.superclass.constructor.call(this,e),this.context=this.canvas.getContext("2d")},renderType:"canvas",context:null,startDraw:function(e){return!!(e.visible&&e.alpha>0)&&(e===this.stage&&this.context.clearRect(0,0,e.width,e.height),e.blendMode!==this.blendMode&&(this.context.globalCompositeOperation=this.blendMode=e.blendMode),this.context.save(),!0)},draw:function(e){var t=this.context,a=e.width,r=e.height,i=e.background;i&&(t.fillStyle=i,t.fillRect(0,0,a,r));var s=e.drawable,n=s&&s.image;if(n){var l=s.rect,c=l[2],h=l[3],o=l[4],d=l[5];if(!c||!h)return;a||r||(a=e.width=c,r=e.height=h),(o||d)&&t.translate(o-.5*c,d-.5*h),t.drawImage(n,l[0],l[1],c,h,0,0,a,r)}},endDraw:function(e){this.context.restore()},transform:function(e){var t=e.drawable;if(t&&t.domElement)return void Hilo.setElementStyleByView(e);var a=this.context,r=e.scaleX,i=e.scaleY;if(e===this.stage){var s=this.canvas.style,n=e._scaleX,l=e._scaleY,c=!1;(!n&&1!=r||n&&n!=r)&&(e._scaleX=r,s.width=r*e.width+"px",c=!0),(!l&&1!=i||l&&l!=i)&&(e._scaleY=i,s.height=i*e.height+"px",c=!0),c&&e.updateViewport()}else{var h=e.x,o=e.y,d=e.pivotX,v=e.pivotY,u=e.rotation%360,f=e.mask;f&&(f._render(this),a.clip());var g=e.align;if(g)if("function"==typeof g)e.align();else{var p=e.parent;if(p){var w=e.width,b=e.height,x=p.width,m=p.height;switch(g){case"TL":h=0,o=0;break;case"T":h=x-w>>1,o=0;break;case"TR":h=x-w,o=0;break;case"L":h=0,o=m-b>>1;break;case"C":h=x-w>>1,o=m-b>>1;break;case"R":h=x-w,o=m-b>>1;break;case"BL":h=0,o=m-b;break;case"B":h=x-w>>1,o=m-b;break;case"BR":h=x-w,o=m-b}}}0==h&&0==o||a.translate(h,o),0!=u&&a.rotate(u*Math.PI/180),1==r&&1==i||a.scale(r,i),0==d&&0==v||a.translate(-d,-v)}e.alpha>0&&(a.globalAlpha*=e.alpha)},remove:function(e){var t=e.drawable,a=t&&t.domElement;if(a){var r=a.parentNode;r&&r.removeChild(a)}},clear:function(e,t,a,r){this.context.clearRect(e,t,a,r)},resize:function(e,t){var a=this.canvas,r=this.stage,i=a.style;a.width=e,a.height=t,i.width=r.width*r.scaleX+"px",i.height=r.height*r.scaleY+"px"}});module.exports=CanvasRenderer; \ No newline at end of file +var Class=require("../core/Class"),Hilo=require("../core/Hilo"),Renderer=require("./Renderer"),CanvasRenderer=Class.create({Extends:Renderer,constructor:function(e){CanvasRenderer.superclass.constructor.call(this,e),this.context=this.canvas.getContext("2d")},renderType:"canvas",context:null,startDraw:function(e){return!!(e.visible&&e.alpha>0)&&(e===this.stage&&this.context.clearRect(0,0,e.width,e.height),e.blendMode!==this.blendMode&&(this.context.globalCompositeOperation=this.blendMode=e.blendMode),this.context.save(),!0)},draw:function(e){var t=this.context,a=e.width,r=e.height,i=e.background;i&&(t.fillStyle=i,t.fillRect(0,0,a,r));var n=e.drawable,s=n&&n.image;if(s){var l=n.rect,o=l[2],c=l[3],h=l[4],d=l[5];if(!o||!c)return;a||r||(a=e.width=o,r=e.height=c),(h||d)&&t.translate(h-.5*o,d-.5*c),t.drawImage(s,l[0],l[1],o,c,0,0,a,r)}},endDraw:function(e){this.context.restore()},transform:function(e){var t=e.drawable;if(t&&t.domElement)return void Hilo.setElementStyleByView(e);var a=this.context,r=e.scaleX,i=e.scaleY;if(e===this.stage){var n=this.canvas.style,s=e._scaleX,l=e._scaleY,o=!1;(!s&&1!=r||s&&s!=r)&&(e._scaleX=r,n.width=r*e.width+"px",o=!0),(!l&&1!=i||l&&l!=i)&&(e._scaleY=i,n.height=i*e.height+"px",o=!0),o&&e.updateViewport()}else{var c=e.x,h=e.y,d=e.pivotX,v=e.pivotY,u=e.rotation%360,g=e.mask;g&&(g._render(this),a.clip());var p=e.align;if(p){var x=e.getAlignPosition();c=x.x,h=x.y}0==c&&0==h||a.translate(c,h),0!=u&&a.rotate(u*Math.PI/180),1==r&&1==i||a.scale(r,i),0==d&&0==v||a.translate(-d,-v)}e.alpha>0&&(a.globalAlpha*=e.alpha)},remove:function(e){var t=e.drawable,a=t&&t.domElement;if(a){var r=a.parentNode;r&&r.removeChild(a)}},clear:function(e,t,a,r){this.context.clearRect(e,t,a,r)},resize:function(e,t){var a=this.canvas,r=this.stage,i=a.style;a.width=e,a.height=t,i.width=r.width*r.scaleX+"px",i.height=r.height*r.scaleY+"px"}});module.exports=CanvasRenderer; \ No newline at end of file diff --git a/build/commonjs/renderer/DOMRenderer.js b/build/commonjs/renderer/DOMRenderer.js index 15d1fce0..a487959d 100644 --- a/build/commonjs/renderer/DOMRenderer.js +++ b/build/commonjs/renderer/DOMRenderer.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/renderer/DOMRenderer.min.js b/build/commonjs/renderer/DOMRenderer.min.js index 9a4e76c7..c6c1f528 100644 --- a/build/commonjs/renderer/DOMRenderer.min.js +++ b/build/commonjs/renderer/DOMRenderer.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/renderer/Renderer.js b/build/commonjs/renderer/Renderer.js index 6024b672..c9a3d724 100644 --- a/build/commonjs/renderer/Renderer.js +++ b/build/commonjs/renderer/Renderer.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/renderer/Renderer.min.js b/build/commonjs/renderer/Renderer.min.js index 52cbdc1b..b0327913 100644 --- a/build/commonjs/renderer/Renderer.min.js +++ b/build/commonjs/renderer/Renderer.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/renderer/WebGLRenderer.js b/build/commonjs/renderer/WebGLRenderer.js index ef2a1b6c..c50a2b07 100644 --- a/build/commonjs/renderer/WebGLRenderer.js +++ b/build/commonjs/renderer/WebGLRenderer.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -434,12 +434,13 @@ var WebGLRenderer = Class.create(/** @lends WebGLRenderer.prototype */{ sin = Math.sin(r); } + var pos = view.getAlignPosition(); mtx.a = cos*scaleX; mtx.b = sin*scaleX; mtx.c = -sin*scaleY; mtx.d = cos*scaleY; - mtx.tx = view.x - mtx.a * pivotX - mtx.c * pivotY; - mtx.ty = view.y - mtx.b * pivotX - mtx.d * pivotY; + mtx.tx = pos.x - mtx.a * pivotX - mtx.c * pivotY; + mtx.ty = pos.y - mtx.b * pivotX - mtx.d * pivotY; mtx.concat(ancestor.__webglWorldMatrix); }, diff --git a/build/commonjs/renderer/WebGLRenderer.min.js b/build/commonjs/renderer/WebGLRenderer.min.js index 98f37f9c..71fe7e6e 100644 --- a/build/commonjs/renderer/WebGLRenderer.min.js +++ b/build/commonjs/renderer/WebGLRenderer.min.js @@ -1,6 +1,6 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ -var Class=require("../core/Class"),Hilo=require("../core/Hilo"),Renderer=require("./Renderer"),Matrix=require("../geom/Matrix"),DEG2RAD=Math.PI/180,WebGLRenderer=Class.create({Extends:Renderer,Statics:{MAX_BATCH_NUM:2e3,ATTRIBUTE_NUM:5,isSupport:function(){if(void 0==this._isSupported){var e=document.createElement("canvas");e.getContext&&(e.getContext("webgl")||e.getContext("experimental-webgl"))?this._isSupported=!0:this._isSupported=!1}return this._isSupported}},renderType:"webgl",gl:null,_isContextLost:!1,_cacheTexture:{},constructor:function(e){WebGLRenderer.superclass.constructor.call(this,e);var t=this;this.gl=this.canvas.getContext("webgl")||this.canvas.getContext("experimental-webgl"),this.maxBatchNum=WebGLRenderer.MAX_BATCH_NUM,this.positionStride=4*WebGLRenderer.ATTRIBUTE_NUM;var r=this.maxBatchNum*WebGLRenderer.ATTRIBUTE_NUM*4,i=6*this.maxBatchNum;this.arrayBuffer=new ArrayBuffer(4*r),this.float32Array=new Float32Array(this.arrayBuffer),this.uint32Array=new Uint32Array(this.arrayBuffer),this.indexs=new Uint16Array(i);for(var a=0,n=0;a0)&&(e===this.stage&&this.clear(),!0)},draw:function(e){var t=e.width,r=e.height,i=(e.background,e.drawable),a=i&&i.image;if(a){var n=i.rect,s=n[2],o=n[3];t||r||(t=e.width=s,r=e.height=o),this.batchIndex>=this.maxBatchNum&&this._renderBatches();var h=this._createVertexs(a,n[0],n[1],s,o,0,0,t,r),d=this.batchIndex*this.positionStride,_=this.float32Array,c=this.uint32Array,l=(e.tint>>16)+(65280&e.tint)+((255&e.tint)<<16)+(255*e.__webglRenderAlpha<<24);_[d+0]=h[0],_[d+1]=h[1],_[d+2]=h[2],_[d+3]=h[3],c[d+4]=l,_[d+5]=h[4],_[d+6]=h[5],_[d+7]=h[6],_[d+8]=h[7],c[d+9]=l,_[d+10]=h[8],_[d+11]=h[9],_[d+12]=h[10],_[d+13]=h[11],c[d+14]=l,_[d+15]=h[12],_[d+16]=h[13],_[d+17]=h[14],_[d+18]=h[15],c[d+19]=l;for(var u=e.__webglWorldMatrix,f=0;f<4;f++){var x=_[d+5*f],g=_[d+5*f+1];_[d+5*f]=u.a*x+u.c*g+u.tx,_[d+5*f+1]=u.b*x+u.d*g+u.ty}e.__textureImage=a,this.sprites[this.batchIndex++]=e}},endDraw:function(e){e===this.stage&&this._renderBatches()},transform:function(e){var t=e.drawable;if(t&&t.domElement)return void Hilo.setElementStyleByView(e);var r=e.scaleX,i=e.scaleY;if(e===this.stage){var a=this.canvas.style,n=e._scaleX,s=e._scaleY,o=!1;(!n&&1!=r||n&&n!=r)&&(e._scaleX=r,a.width=r*e.width+"px",o=!0),(!s&&1!=i||s&&s!=i)&&(e._scaleY=i,a.height=i*e.height+"px",o=!0),o&&e.updateViewport(),e.__webglWorldMatrix=e.__webglWorldMatrix||new Matrix(1,0,0,1,0,0)}else e.parent&&(e.__webglWorldMatrix=e.__webglWorldMatrix||new Matrix(1,0,0,1,0,0),this._setConcatenatedMatrix(e,e.parent));e.alpha>0&&(e.parent&&e.parent.__webglRenderAlpha?e.__webglRenderAlpha=e.alpha*e.parent.__webglRenderAlpha:e.__webglRenderAlpha=e.alpha)},remove:function(e){var t=e.drawable,r=t&&t.domElement;if(r){var i=r.parentNode;i&&i.removeChild(r)}},clear:function(e,t,r,i){this.gl.clear(this.gl.COLOR_BUFFER_BIT)},resize:function(e,t){if(this.width!==e||this.height!==t){var r=this.canvas,i=this.stage,a=r.style;this.width=r.width=e,this.height=r.height=t,a.width=i.width*i.scaleX+"px",a.height=i.height*i.scaleY+"px",this.gl.viewport(0,0,e,t),this.canvasHalfWidth=.5*e,this.canvasHalfHeight=.5*t,this._uploadProjectionTransform(!0)}},_renderBatches:function(){var e=this.gl;e.bufferSubData(e.ARRAY_BUFFER,0,this.uint32Array.subarray(0,this.batchIndex*this.positionStride));for(var t=0,r=0,i=null,a=0;a0&&(r.bindTexture(r.TEXTURE_2D,this._getTexture(this.sprites[e])),r.drawElements(r.TRIANGLES,6*i,r.UNSIGNED_SHORT,6*e*2))},_uploadProjectionTransform:function(e){this._projectionTransformElements&&!e||(this._projectionTransformElements=new Float32Array([1/this.canvasHalfWidth,0,0,0,-1/this.canvasHalfHeight,0,-1,1,1])),this.gl.uniformMatrix3fv(this.u_projectionTransform,!1,this._projectionTransformElements)},_initShaders:function(){var e=" attribute vec2 a_position;\n attribute vec2 a_TexCoord;\n attribute vec4 a_tint;\n uniform mat3 u_projectionTransform;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_Position = vec4((u_projectionTransform * vec3(a_position, 1.0)).xy, 1.0, 1.0);\n v_TexCoord = a_TexCoord;\n v_tint = vec4(a_tint.rgb * a_tint.a, a_tint.a);\n }\n ",t="\n precision mediump float;\n uniform sampler2D u_Sampler;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_FragColor = texture2D(u_Sampler, v_TexCoord) * v_tint;\n }\n ";this.defaultShader=new Shader(this,{v:e,f:t},{attributes:["a_position","a_TexCoord","a_tint"],uniforms:["u_projectionTransform","u_Sampler"]})},_createVertexs:function(e,t,r,i,a,n,s,o,h){var d=this.__tempVertexs||[],_=e.width,c=e.height;i/=_,a/=c,t/=_,r/=c,o=o,h=h,n=n,s=s,i+t>1&&(i=1-t),a+r>1&&(a=1-r);var l=0;return d[l++]=n,d[l++]=s,d[l++]=t,d[l++]=r,d[l++]=n+o,d[l++]=s,d[l++]=t+i,d[l++]=r,d[l++]=n,d[l++]=s+h,d[l++]=t,d[l++]=r+a,d[l++]=n+o,d[l++]=s+h,d[l++]=t+i,d[l++]=r+a,d},_setConcatenatedMatrix:function(e,t){var r=e.__webglWorldMatrix,i=1,a=0,n=e.rotation%360,s=e.pivotX,o=e.pivotY,h=e.scaleX,d=e.scaleY;if(n){var _=n*DEG2RAD;i=Math.cos(_),a=Math.sin(_)}r.a=i*h,r.b=a*h,r.c=-a*d,r.d=i*d,r.tx=e.x-r.a*s-r.c*o,r.ty=e.y-r.b*s-r.d*o,r.concat(t.__webglWorldMatrix)},_getTexture:function(e){var t=e.__textureImage,r=this._cacheTexture[t.src];return r||(r=this.activeShader.uploadTexture(t)),r}}),Shader=function(e,t,r){this.renderer=e,this.gl=e.gl,this.program=this._createProgram(this.gl,t.v,t.f),r=r||{},this.attributes=r.attributes||[],this.uniforms=r.uniforms||[]};Shader.prototype={active:function(){var e=this,t=e.renderer,r=e.gl,i=e.program;i&&r&&(t.activeShader=e,r.useProgram(i),e.attributes.forEach(function(e){t[e]=r.getAttribLocation(i,e),r.enableVertexAttribArray(t[e])}),e.uniforms.forEach(function(e){t[e]=r.getUniformLocation(i,e)}),e.width===t.width&&e.height===t.height||(e.width=t.width,e.height=t.height,t._uploadProjectionTransform()))},uploadTexture:function(e){var t=this.gl,r=this.renderer,i=t.createTexture(),a=r.u_Sampler;return t.activeTexture(t.TEXTURE0),t.bindTexture(t.TEXTURE_2D,i),t.pixelStorei(t.UNPACK_PREMULTIPLY_ALPHA_WEBGL,1),t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,e),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.LINEAR),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.LINEAR),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),t.uniform1i(a,0),t.bindTexture(t.TEXTURE_2D,null),this.renderer._cacheTexture[e.src]=i,i},_createProgram:function(e,t,r){var i=this._createShader(e,e.VERTEX_SHADER,t),a=this._createShader(e,e.FRAGMENT_SHADER,r);if(!i||!a)return null;var n=e.createProgram();if(n){e.attachShader(n,i),e.attachShader(n,a),e.linkProgram(n),e.deleteShader(a),e.deleteShader(i);var s=e.getProgramParameter(n,e.LINK_STATUS);if(!s){var o=e.getProgramInfoLog(n);return console.log("Failed to link program: "+o),e.deleteProgram(n),null}}return n},_createShader:function(e,t,r){var i=e.createShader(t);if(i){e.shaderSource(i,r),e.compileShader(i);var a=e.getShaderParameter(i,e.COMPILE_STATUS);if(!a){var n=e.getShaderInfoLog(i);return console.log("Failed to compile shader: "+n),e.deleteShader(i),null}}return i}},module.exports=WebGLRenderer; \ No newline at end of file +var Class=require("../core/Class"),Hilo=require("../core/Hilo"),Renderer=require("./Renderer"),Matrix=require("../geom/Matrix"),DEG2RAD=Math.PI/180,WebGLRenderer=Class.create({Extends:Renderer,Statics:{MAX_BATCH_NUM:2e3,ATTRIBUTE_NUM:5,isSupport:function(){if(void 0==this._isSupported){var e=document.createElement("canvas");e.getContext&&(e.getContext("webgl")||e.getContext("experimental-webgl"))?this._isSupported=!0:this._isSupported=!1}return this._isSupported}},renderType:"webgl",gl:null,_isContextLost:!1,_cacheTexture:{},constructor:function(e){WebGLRenderer.superclass.constructor.call(this,e);var t=this;this.gl=this.canvas.getContext("webgl")||this.canvas.getContext("experimental-webgl"),this.maxBatchNum=WebGLRenderer.MAX_BATCH_NUM,this.positionStride=4*WebGLRenderer.ATTRIBUTE_NUM;var r=this.maxBatchNum*WebGLRenderer.ATTRIBUTE_NUM*4,i=6*this.maxBatchNum;this.arrayBuffer=new ArrayBuffer(4*r),this.float32Array=new Float32Array(this.arrayBuffer),this.uint32Array=new Uint32Array(this.arrayBuffer),this.indexs=new Uint16Array(i);for(var a=0,n=0;a0)&&(e===this.stage&&this.clear(),!0)},draw:function(e){var t=e.width,r=e.height,i=(e.background,e.drawable),a=i&&i.image;if(a){var n=i.rect,s=n[2],o=n[3];t||r||(t=e.width=s,r=e.height=o),this.batchIndex>=this.maxBatchNum&&this._renderBatches();var h=this._createVertexs(a,n[0],n[1],s,o,0,0,t,r),d=this.batchIndex*this.positionStride,_=this.float32Array,c=this.uint32Array,l=(e.tint>>16)+(65280&e.tint)+((255&e.tint)<<16)+(255*e.__webglRenderAlpha<<24);_[d+0]=h[0],_[d+1]=h[1],_[d+2]=h[2],_[d+3]=h[3],c[d+4]=l,_[d+5]=h[4],_[d+6]=h[5],_[d+7]=h[6],_[d+8]=h[7],c[d+9]=l,_[d+10]=h[8],_[d+11]=h[9],_[d+12]=h[10],_[d+13]=h[11],c[d+14]=l,_[d+15]=h[12],_[d+16]=h[13],_[d+17]=h[14],_[d+18]=h[15],c[d+19]=l;for(var u=e.__webglWorldMatrix,f=0;f<4;f++){var g=_[d+5*f],x=_[d+5*f+1];_[d+5*f]=u.a*g+u.c*x+u.tx,_[d+5*f+1]=u.b*g+u.d*x+u.ty}e.__textureImage=a,this.sprites[this.batchIndex++]=e}},endDraw:function(e){e===this.stage&&this._renderBatches()},transform:function(e){var t=e.drawable;if(t&&t.domElement)return void Hilo.setElementStyleByView(e);var r=e.scaleX,i=e.scaleY;if(e===this.stage){var a=this.canvas.style,n=e._scaleX,s=e._scaleY,o=!1;(!n&&1!=r||n&&n!=r)&&(e._scaleX=r,a.width=r*e.width+"px",o=!0),(!s&&1!=i||s&&s!=i)&&(e._scaleY=i,a.height=i*e.height+"px",o=!0),o&&e.updateViewport(),e.__webglWorldMatrix=e.__webglWorldMatrix||new Matrix(1,0,0,1,0,0)}else e.parent&&(e.__webglWorldMatrix=e.__webglWorldMatrix||new Matrix(1,0,0,1,0,0),this._setConcatenatedMatrix(e,e.parent));e.alpha>0&&(e.parent&&e.parent.__webglRenderAlpha?e.__webglRenderAlpha=e.alpha*e.parent.__webglRenderAlpha:e.__webglRenderAlpha=e.alpha)},remove:function(e){var t=e.drawable,r=t&&t.domElement;if(r){var i=r.parentNode;i&&i.removeChild(r)}},clear:function(e,t,r,i){this.gl.clear(this.gl.COLOR_BUFFER_BIT)},resize:function(e,t){if(this.width!==e||this.height!==t){var r=this.canvas,i=this.stage,a=r.style;this.width=r.width=e,this.height=r.height=t,a.width=i.width*i.scaleX+"px",a.height=i.height*i.scaleY+"px",this.gl.viewport(0,0,e,t),this.canvasHalfWidth=.5*e,this.canvasHalfHeight=.5*t,this._uploadProjectionTransform(!0)}},_renderBatches:function(){var e=this.gl;e.bufferSubData(e.ARRAY_BUFFER,0,this.uint32Array.subarray(0,this.batchIndex*this.positionStride));for(var t=0,r=0,i=null,a=0;a0&&(r.bindTexture(r.TEXTURE_2D,this._getTexture(this.sprites[e])),r.drawElements(r.TRIANGLES,6*i,r.UNSIGNED_SHORT,6*e*2))},_uploadProjectionTransform:function(e){this._projectionTransformElements&&!e||(this._projectionTransformElements=new Float32Array([1/this.canvasHalfWidth,0,0,0,-1/this.canvasHalfHeight,0,-1,1,1])),this.gl.uniformMatrix3fv(this.u_projectionTransform,!1,this._projectionTransformElements)},_initShaders:function(){var e=" attribute vec2 a_position;\n attribute vec2 a_TexCoord;\n attribute vec4 a_tint;\n uniform mat3 u_projectionTransform;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_Position = vec4((u_projectionTransform * vec3(a_position, 1.0)).xy, 1.0, 1.0);\n v_TexCoord = a_TexCoord;\n v_tint = vec4(a_tint.rgb * a_tint.a, a_tint.a);\n }\n ",t="\n precision mediump float;\n uniform sampler2D u_Sampler;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_FragColor = texture2D(u_Sampler, v_TexCoord) * v_tint;\n }\n ";this.defaultShader=new Shader(this,{v:e,f:t},{attributes:["a_position","a_TexCoord","a_tint"],uniforms:["u_projectionTransform","u_Sampler"]})},_createVertexs:function(e,t,r,i,a,n,s,o,h){var d=this.__tempVertexs||[],_=e.width,c=e.height;i/=_,a/=c,t/=_,r/=c,o=o,h=h,n=n,s=s,i+t>1&&(i=1-t),a+r>1&&(a=1-r);var l=0;return d[l++]=n,d[l++]=s,d[l++]=t,d[l++]=r,d[l++]=n+o,d[l++]=s,d[l++]=t+i,d[l++]=r,d[l++]=n,d[l++]=s+h,d[l++]=t,d[l++]=r+a,d[l++]=n+o,d[l++]=s+h,d[l++]=t+i,d[l++]=r+a,d},_setConcatenatedMatrix:function(e,t){var r=e.__webglWorldMatrix,i=1,a=0,n=e.rotation%360,s=e.pivotX,o=e.pivotY,h=e.scaleX,d=e.scaleY;if(n){var _=n*DEG2RAD;i=Math.cos(_),a=Math.sin(_)}var c=e.getAlignPosition();r.a=i*h,r.b=a*h,r.c=-a*d,r.d=i*d,r.tx=c.x-r.a*s-r.c*o,r.ty=c.y-r.b*s-r.d*o,r.concat(t.__webglWorldMatrix)},_getTexture:function(e){var t=e.__textureImage,r=this._cacheTexture[t.src];return r||(r=this.activeShader.uploadTexture(t)),r}}),Shader=function(e,t,r){this.renderer=e,this.gl=e.gl,this.program=this._createProgram(this.gl,t.v,t.f),r=r||{},this.attributes=r.attributes||[],this.uniforms=r.uniforms||[]};Shader.prototype={active:function(){var e=this,t=e.renderer,r=e.gl,i=e.program;i&&r&&(t.activeShader=e,r.useProgram(i),e.attributes.forEach(function(e){t[e]=r.getAttribLocation(i,e),r.enableVertexAttribArray(t[e])}),e.uniforms.forEach(function(e){t[e]=r.getUniformLocation(i,e)}),e.width===t.width&&e.height===t.height||(e.width=t.width,e.height=t.height,t._uploadProjectionTransform()))},uploadTexture:function(e){var t=this.gl,r=this.renderer,i=t.createTexture(),a=r.u_Sampler;return t.activeTexture(t.TEXTURE0),t.bindTexture(t.TEXTURE_2D,i),t.pixelStorei(t.UNPACK_PREMULTIPLY_ALPHA_WEBGL,1),t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,e),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.LINEAR),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.LINEAR),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),t.uniform1i(a,0),t.bindTexture(t.TEXTURE_2D,null),this.renderer._cacheTexture[e.src]=i,i},_createProgram:function(e,t,r){var i=this._createShader(e,e.VERTEX_SHADER,t),a=this._createShader(e,e.FRAGMENT_SHADER,r);if(!i||!a)return null;var n=e.createProgram();if(n){e.attachShader(n,i),e.attachShader(n,a),e.linkProgram(n),e.deleteShader(a),e.deleteShader(i);var s=e.getProgramParameter(n,e.LINK_STATUS);if(!s){var o=e.getProgramInfoLog(n);return console.log("Failed to link program: "+o),e.deleteProgram(n),null}}return n},_createShader:function(e,t,r){var i=e.createShader(t);if(i){e.shaderSource(i,r),e.compileShader(i);var a=e.getShaderParameter(i,e.COMPILE_STATUS);if(!a){var n=e.getShaderInfoLog(i);return console.log("Failed to compile shader: "+n),e.deleteShader(i),null}}return i}},module.exports=WebGLRenderer; \ No newline at end of file diff --git a/build/commonjs/tween/Ease.js b/build/commonjs/tween/Ease.js index 998e049b..1394bb4b 100644 --- a/build/commonjs/tween/Ease.js +++ b/build/commonjs/tween/Ease.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/tween/Ease.min.js b/build/commonjs/tween/Ease.min.js index d023968b..0443bd52 100644 --- a/build/commonjs/tween/Ease.min.js +++ b/build/commonjs/tween/Ease.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/tween/Tween.js b/build/commonjs/tween/Tween.js index 3d287927..bcd5b099 100644 --- a/build/commonjs/tween/Tween.js +++ b/build/commonjs/tween/Tween.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/tween/Tween.min.js b/build/commonjs/tween/Tween.min.js index ab7c8b6f..01be9774 100644 --- a/build/commonjs/tween/Tween.min.js +++ b/build/commonjs/tween/Tween.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/util/TextureAtlas.js b/build/commonjs/util/TextureAtlas.js index b0ce34fd..ff8a1272 100644 --- a/build/commonjs/util/TextureAtlas.js +++ b/build/commonjs/util/TextureAtlas.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -73,7 +73,7 @@ return Class.create(/** @lends TextureAtlas.prototype */{ * @param {String} frames Frames message, eg:"0-5" means frame 0 to frame 5. * @param {Number} w The width of each frame. * @param {Number} h The height of each frame. - * @param {Bollean} loop Is play in loop. + * @param {Boolean} loop Is play in loop. * @param {Number} duration The time between each frame. default value is 1 (Frame), but if timeBased is true, default value will be duration(milli-second). * @example * //demo1 make one animation diff --git a/build/commonjs/util/TextureAtlas.min.js b/build/commonjs/util/TextureAtlas.min.js index a11d2b07..28d17586 100644 --- a/build/commonjs/util/TextureAtlas.min.js +++ b/build/commonjs/util/TextureAtlas.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/util/Ticker.js b/build/commonjs/util/Ticker.js index 7c3e99be..8e602563 100644 --- a/build/commonjs/util/Ticker.js +++ b/build/commonjs/util/Ticker.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/util/Ticker.min.js b/build/commonjs/util/Ticker.min.js index 5e9468c2..4a642ac5 100644 --- a/build/commonjs/util/Ticker.min.js +++ b/build/commonjs/util/Ticker.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/util/browser.js b/build/commonjs/util/browser.js index e93eed89..9a745c62 100644 --- a/build/commonjs/util/browser.js +++ b/build/commonjs/util/browser.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/util/browser.min.js b/build/commonjs/util/browser.min.js index 9da45bbd..44331065 100644 --- a/build/commonjs/util/browser.min.js +++ b/build/commonjs/util/browser.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/util/drag.js b/build/commonjs/util/drag.js index 7974071e..b26359be 100644 --- a/build/commonjs/util/drag.js +++ b/build/commonjs/util/drag.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/util/drag.min.js b/build/commonjs/util/drag.min.js index 3aa9be36..f0e106bf 100644 --- a/build/commonjs/util/drag.min.js +++ b/build/commonjs/util/drag.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/util/polyfill.js b/build/commonjs/util/polyfill.js index 2d2609c1..e55dbb9a 100644 --- a/build/commonjs/util/polyfill.js +++ b/build/commonjs/util/polyfill.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/util/polyfill.min.js b/build/commonjs/util/polyfill.min.js index 2d32f4b2..f89f4426 100644 --- a/build/commonjs/util/polyfill.min.js +++ b/build/commonjs/util/polyfill.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/util/util.js b/build/commonjs/util/util.js index 749921be..a79ca0ff 100644 --- a/build/commonjs/util/util.js +++ b/build/commonjs/util/util.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/util/util.min.js b/build/commonjs/util/util.min.js index e1a17b00..603d01d8 100644 --- a/build/commonjs/util/util.min.js +++ b/build/commonjs/util/util.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/view/Bitmap.js b/build/commonjs/view/Bitmap.js index e3593380..e284ff64 100644 --- a/build/commonjs/view/Bitmap.js +++ b/build/commonjs/view/Bitmap.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/view/Bitmap.min.js b/build/commonjs/view/Bitmap.min.js index 4d63b59d..87fab097 100644 --- a/build/commonjs/view/Bitmap.min.js +++ b/build/commonjs/view/Bitmap.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/view/BitmapText.js b/build/commonjs/view/BitmapText.js index 04fee2a4..fbb0e434 100644 --- a/build/commonjs/view/BitmapText.js +++ b/build/commonjs/view/BitmapText.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/view/BitmapText.min.js b/build/commonjs/view/BitmapText.min.js index 387159b4..babe6947 100644 --- a/build/commonjs/view/BitmapText.min.js +++ b/build/commonjs/view/BitmapText.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/view/Button.js b/build/commonjs/view/Button.js index 6fc04c80..2a4aab86 100644 --- a/build/commonjs/view/Button.js +++ b/build/commonjs/view/Button.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/view/Button.min.js b/build/commonjs/view/Button.min.js index 02bf6053..a32d10d7 100644 --- a/build/commonjs/view/Button.min.js +++ b/build/commonjs/view/Button.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/view/CacheMixin.js b/build/commonjs/view/CacheMixin.js index 343af516..45cf361a 100644 --- a/build/commonjs/view/CacheMixin.js +++ b/build/commonjs/view/CacheMixin.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/view/CacheMixin.min.js b/build/commonjs/view/CacheMixin.min.js index 79b448cb..7295d44d 100644 --- a/build/commonjs/view/CacheMixin.min.js +++ b/build/commonjs/view/CacheMixin.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/view/Container.js b/build/commonjs/view/Container.js index c822252c..23a339f2 100644 --- a/build/commonjs/view/Container.js +++ b/build/commonjs/view/Container.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/view/Container.min.js b/build/commonjs/view/Container.min.js index 79538cad..ca8fb8ba 100644 --- a/build/commonjs/view/Container.min.js +++ b/build/commonjs/view/Container.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/view/DOMElement.js b/build/commonjs/view/DOMElement.js index 22cced17..c5ae45b9 100644 --- a/build/commonjs/view/DOMElement.js +++ b/build/commonjs/view/DOMElement.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/view/DOMElement.min.js b/build/commonjs/view/DOMElement.min.js index a52abd0a..014f8356 100644 --- a/build/commonjs/view/DOMElement.min.js +++ b/build/commonjs/view/DOMElement.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/view/Drawable.js b/build/commonjs/view/Drawable.js index ba8043ed..a94c56c2 100644 --- a/build/commonjs/view/Drawable.js +++ b/build/commonjs/view/Drawable.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/view/Drawable.min.js b/build/commonjs/view/Drawable.min.js index 5935f325..565456e2 100644 --- a/build/commonjs/view/Drawable.min.js +++ b/build/commonjs/view/Drawable.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/view/Graphics.js b/build/commonjs/view/Graphics.js index ba2e2514..02248a00 100644 --- a/build/commonjs/view/Graphics.js +++ b/build/commonjs/view/Graphics.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/view/Graphics.min.js b/build/commonjs/view/Graphics.min.js index 641f7336..355f0af3 100644 --- a/build/commonjs/view/Graphics.min.js +++ b/build/commonjs/view/Graphics.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/view/Sprite.js b/build/commonjs/view/Sprite.js index 83dc73cd..5cf631ad 100644 --- a/build/commonjs/view/Sprite.js +++ b/build/commonjs/view/Sprite.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/view/Sprite.min.js b/build/commonjs/view/Sprite.min.js index 62c9b16a..c4f05717 100644 --- a/build/commonjs/view/Sprite.min.js +++ b/build/commonjs/view/Sprite.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/view/Stage.js b/build/commonjs/view/Stage.js index 9ac56593..d84bf9cf 100644 --- a/build/commonjs/view/Stage.js +++ b/build/commonjs/view/Stage.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/view/Stage.min.js b/build/commonjs/view/Stage.min.js index 55cf207e..ba1a50ef 100644 --- a/build/commonjs/view/Stage.min.js +++ b/build/commonjs/view/Stage.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/view/Text.js b/build/commonjs/view/Text.js index 79b32b45..5fbc7439 100644 --- a/build/commonjs/view/Text.js +++ b/build/commonjs/view/Text.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/view/Text.min.js b/build/commonjs/view/Text.min.js index 296a573f..d9e582a1 100644 --- a/build/commonjs/view/Text.min.js +++ b/build/commonjs/view/Text.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/commonjs/view/View.js b/build/commonjs/view/View.js index 3489d47d..bc735fcd 100644 --- a/build/commonjs/view/View.js +++ b/build/commonjs/view/View.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -200,11 +200,72 @@ return Class.create(/** @lends View.prototype */{ if(pivotX != 0) mtx.tx -= pivotX; if(pivotY != 0) mtx.ty -= pivotY; - mtx.concat(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, o.x, o.y); + + var pos = o.getAlignPosition(); + mtx.concat(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, pos.x, pos.y); } return mtx; }, + getAlignPosition: function(){ + var parent = this.parent; + var align = this.align; + var x = this.x; + var y = this.y; + + if(parent && this.align){ + if(typeof align === 'function'){ + return this.align(); + } + + var w = this.width, h = this.height, + pw = parent.width, ph = parent.height; + switch(align){ + case 'TL': + x = 0; + y = 0; + break; + case 'T': + x = pw - w >> 1; + y = 0; + break; + case 'TR': + x = pw - w; + y = 0; + break; + case 'L': + x = 0; + y = ph - h >> 1; + break; + case 'C': + x = pw - w >> 1; + y = ph - h >> 1; + break; + case 'R': + x = pw - w; + y = ph - h >> 1; + break; + case 'BL': + x = 0; + y = ph - h; + break; + case 'B': + x = pw - w >> 1; + y = ph - h; + break; + case 'BR': + x = pw - w; + y = ph - h; + break; + } + } + + return { + x:x, + y:y + }; + }, + /** * @language=en * Determining whether a point is in the circumscribed rectangle of current view. diff --git a/build/commonjs/view/View.min.js b/build/commonjs/view/View.min.js index 4a631931..4476051d 100644 --- a/build/commonjs/view/View.min.js +++ b/build/commonjs/view/View.min.js @@ -1,6 +1,6 @@ /** - * Hilo 1.1.4 for commonjs + * Hilo 1.1.5 for commonjs * Copyright 2016 alibaba.com * Licensed under the MIT License */ -var Hilo=require("../core/Hilo"),Class=require("../core/Class"),EventMixin=require("../event/EventMixin"),Matrix=require("../geom/Matrix"),util=require("../util/util"),View=function(){function t(t,e,i){for(var r,n,o,a,s=0,u=!1,h=0,l=i.length;hx.x?(r=x.x,n=y.x):(r=y.x,n=x.x),t>=r&&t<=n))u=!0;else if(y.y>x.y?(o=x.y,a=y.y):(o=y.y,a=x.y),!(ea)){var d=(e-y.y)*(x.x-y.x)/(x.y-y.y)+y.x;if(d>t?s++:d==t&&(u=!0),y.x>t&&y.y==e){var v=i[(l+h-1)%l];(v.ye||v.y>e&&x.ys?s=l:lh?h=l:l=0)return!1;y>i.overlap&&(i.overlap=y,i.normal.x=v.x,i.normal.y=v.y)}return i}return Class.create({Mixes:EventMixin,constructor:function(t){t=t||{},this.id=this.id||t.id||Hilo.getUid("View"),util.copy(this,t,!0)},tint:16777215,id:null,x:0,y:0,width:0,height:0,alpha:1,rotation:0,visible:!0,pivotX:0,pivotY:0,scaleX:1,scaleY:1,pointerEnabled:!0,background:null,mask:null,align:null,drawable:null,boundsArea:null,parent:null,depth:-1,blendMode:"source-over",getStage:function(){for(var t,e=this;t=e.parent;)e=t;return e.canvas?e:null},getScaledWidth:function(){return this.width*this.scaleX},getScaledHeight:function(){return this.height*this.scaleY},addTo:function(t,e){return"number"==typeof e?t.addChildAt(this,e):t.addChild(this),this},removeFromParent:function(){var t=this.parent;return t&&t.removeChild(this),this},getBounds:function(){for(var t,e,i,r,n,o,a,s=this.width,u=this.height,h=this.getConcatenatedMatrix(),l=this.boundsArea||[{x:0,y:0},{x:s,y:0},{x:s,y:u},{x:0,y:u}],y=[],x=0,d=l.length;xe?r=e:ni?o=i:a=n.x&&e<=n.x+n.width&&i>=n.y&&i<=n.y+n.height;return o&&r&&(o=t(e,i,n)),o},hitTestObject:function(t,i){var r=this.getBounds(),n=t.getBounds(),o=r.x<=n.x+n.width&&n.x<=r.x+r.width&&r.y<=n.y+n.height&&n.y<=r.y+r.height;return o&&i&&(o=e(r,n)),!!o},_render:function(t,e){this.onUpdate&&this.onUpdate(e)===!1||!t.startDraw(this)||(t.transform(this),this.render(t,e),t.endDraw(this))},_fireMouseEvent:function(t){if(t.eventCurrentTarget=this,this.fire(t),"mousemove"==t.type){if(!this.__mouseOver){this.__mouseOver=!0;var e=util.copy({},t);e.type="mouseover",this.fire(e)}}else"mouseout"==t.type&&(this.__mouseOver=!1);var i=this.parent;t._stopped||t._stopPropagationed||!i||("mouseout"==t.type||"touchout"==t.type?i.hitTestPoint(t.stageX,t.stageY,!0)||i._fireMouseEvent(t):i._fireMouseEvent(t))},onUpdate:null,render:function(t,e){t.draw(this)},toString:function(){return Hilo.viewToString(this)}})}();module.exports=View; \ No newline at end of file +var Hilo=require("../core/Hilo"),Class=require("../core/Class"),EventMixin=require("../event/EventMixin"),Matrix=require("../geom/Matrix"),util=require("../util/util"),View=function(){function t(t,e,i){for(var r,n,a,o,s=0,h=!1,u=0,l=i.length;ux.x?(r=x.x,n=y.x):(r=y.x,n=x.x),t>=r&&t<=n))h=!0;else if(y.y>x.y?(a=x.y,o=y.y):(a=y.y,o=x.y),!(eo)){var c=(e-y.y)*(x.x-y.x)/(x.y-y.y)+y.x;if(c>t?s++:c==t&&(h=!0),y.x>t&&y.y==e){var d=i[(l+u-1)%l];(d.ye||d.y>e&&x.ys?s=l:lu?u=l:l=0)return!1;y>i.overlap&&(i.overlap=y,i.normal.x=d.x,i.normal.y=d.y)}return i}return Class.create({Mixes:EventMixin,constructor:function(t){t=t||{},this.id=this.id||t.id||Hilo.getUid("View"),util.copy(this,t,!0)},tint:16777215,id:null,x:0,y:0,width:0,height:0,alpha:1,rotation:0,visible:!0,pivotX:0,pivotY:0,scaleX:1,scaleY:1,pointerEnabled:!0,background:null,mask:null,align:null,drawable:null,boundsArea:null,parent:null,depth:-1,blendMode:"source-over",getStage:function(){for(var t,e=this;t=e.parent;)e=t;return e.canvas?e:null},getScaledWidth:function(){return this.width*this.scaleX},getScaledHeight:function(){return this.height*this.scaleY},addTo:function(t,e){return"number"==typeof e?t.addChildAt(this,e):t.addChild(this),this},removeFromParent:function(){var t=this.parent;return t&&t.removeChild(this),this},getBounds:function(){for(var t,e,i,r,n,a,o,s=this.width,h=this.height,u=this.getConcatenatedMatrix(),l=this.boundsArea||[{x:0,y:0},{x:s,y:0},{x:s,y:h},{x:0,y:h}],y=[],x=0,c=l.length;xe?r=e:ni?a=i:o>1,r=0;break;case"TR":i=o-n,r=0;break;case"L":i=0,r=s-a>>1;break;case"C":i=o-n>>1,r=s-a>>1;break;case"R":i=o-n,r=s-a>>1;break;case"BL":i=0,r=s-a;break;case"B":i=o-n>>1,r=s-a;break;case"BR":i=o-n,r=s-a}}return{x:i,y:r}},hitTestPoint:function(e,i,r){var n=this.getBounds(),a=e>=n.x&&e<=n.x+n.width&&i>=n.y&&i<=n.y+n.height;return a&&r&&(a=t(e,i,n)),a},hitTestObject:function(t,i){var r=this.getBounds(),n=t.getBounds(),a=r.x<=n.x+n.width&&n.x<=r.x+r.width&&r.y<=n.y+n.height&&n.y<=r.y+r.height;return a&&i&&(a=e(r,n)),!!a},_render:function(t,e){this.onUpdate&&this.onUpdate(e)===!1||!t.startDraw(this)||(t.transform(this),this.render(t,e),t.endDraw(this))},_fireMouseEvent:function(t){if(t.eventCurrentTarget=this,this.fire(t),"mousemove"==t.type){if(!this.__mouseOver){this.__mouseOver=!0;var e=util.copy({},t);e.type="mouseover",this.fire(e)}}else"mouseout"==t.type&&(this.__mouseOver=!1);var i=this.parent;t._stopped||t._stopPropagationed||!i||("mouseout"==t.type||"touchout"==t.type?i.hitTestPoint(t.stageX,t.stageY,!0)||i._fireMouseEvent(t):i._fireMouseEvent(t))},onUpdate:null,render:function(t,e){t.draw(this)},toString:function(){return Hilo.viewToString(this)}})}();module.exports=View; \ No newline at end of file diff --git a/build/flash/hilo-flash.js b/build/flash/hilo-flash.js index 662fea68..93898594 100644 --- a/build/flash/hilo-flash.js +++ b/build/flash/hilo-flash.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for flashAdaptor + * Hilo 1.1.5 for flashAdaptor * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/flash/hilo-flash.min.js b/build/flash/hilo-flash.min.js index 159a8791..5a7ce16f 100644 --- a/build/flash/hilo-flash.min.js +++ b/build/flash/hilo-flash.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for flashAdaptor + * Hilo 1.1.5 for flashAdaptor * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo-kissy.js b/build/kissy/hilo-kissy.js index fa2ffef9..7ec1ad4c 100644 --- a/build/kissy/hilo-kissy.js +++ b/build/kissy/hilo-kissy.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -168,7 +168,7 @@ return browser; }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -205,7 +205,7 @@ return util; }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -231,7 +231,7 @@ var Hilo = { * Hilo version * @type String */ - version:'1.1.4', + version:'1.1.5', /** * @language=en * Gets a globally unique id. Such as Stage1, Bitmap2 etc. @@ -523,7 +523,7 @@ return Hilo; requires: ['hilo/util/browser', 'hilo/util/util'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -706,7 +706,7 @@ return Class; }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -888,7 +888,7 @@ return Matrix; requires: ['hilo/core/Class'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -1043,7 +1043,7 @@ return EventMixin; requires: ['hilo/core/Class'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -1126,7 +1126,7 @@ return Drawable; requires: ['hilo/core/Class', 'hilo/util/util'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -1222,7 +1222,7 @@ return Renderer; requires: ['hilo/core/Class', 'hilo/util/util'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -1360,53 +1360,9 @@ var CanvasRenderer = Class.create(/** @lends CanvasRenderer.prototype */{ //alignment var align = target.align; if(align){ - if(typeof align === 'function'){ - target.align(); - }else{ - var parent = target.parent; - if(parent){ - var w = target.width, h = target.height, - pw = parent.width, ph = parent.height; - switch(align){ - case 'TL': - x = 0; - y = 0; - break; - case 'T': - x = pw - w >> 1; - y = 0; - break; - case 'TR': - x = pw - w; - y = 0; - break; - case 'L': - x = 0; - y = ph - h >> 1; - break; - case 'C': - x = pw - w >> 1; - y = ph - h >> 1; - break; - case 'R': - x = pw - w; - y = ph - h >> 1; - break; - case 'BL': - x = 0; - y = ph - h; - break; - case 'B': - x = pw - w >> 1; - y = ph - h; - break; - case 'BR': - x = pw - w; - y = ph - h; - break; - } - } - } + var pos = target.getAlignPosition(); + x = pos.x; + y = pos.y; } if(x != 0 || y != 0) ctx.translate(x, y); @@ -1466,7 +1422,7 @@ return CanvasRenderer; requires: ['hilo/core/Class', 'hilo/core/Hilo', 'hilo/renderer/Renderer'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -1650,7 +1606,7 @@ return DOMRenderer; requires: ['hilo/core/Class', 'hilo/core/Hilo', 'hilo/renderer/Renderer', 'hilo/view/Drawable'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -2082,12 +2038,13 @@ var WebGLRenderer = Class.create(/** @lends WebGLRenderer.prototype */{ sin = Math.sin(r); } + var pos = view.getAlignPosition(); mtx.a = cos*scaleX; mtx.b = sin*scaleX; mtx.c = -sin*scaleY; mtx.d = cos*scaleY; - mtx.tx = view.x - mtx.a * pivotX - mtx.c * pivotY; - mtx.ty = view.y - mtx.b * pivotX - mtx.d * pivotY; + mtx.tx = pos.x - mtx.a * pivotX - mtx.c * pivotY; + mtx.ty = pos.y - mtx.b * pivotX - mtx.d * pivotY; mtx.concat(ancestor.__webglWorldMatrix); }, @@ -2221,7 +2178,7 @@ return WebGLRenderer; requires: ['hilo/core/Class', 'hilo/core/Hilo', 'hilo/renderer/Renderer', 'hilo/geom/Matrix'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -2418,11 +2375,72 @@ return Class.create(/** @lends View.prototype */{ if(pivotX != 0) mtx.tx -= pivotX; if(pivotY != 0) mtx.ty -= pivotY; - mtx.concat(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, o.x, o.y); + + var pos = o.getAlignPosition(); + mtx.concat(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, pos.x, pos.y); } return mtx; }, + getAlignPosition: function(){ + var parent = this.parent; + var align = this.align; + var x = this.x; + var y = this.y; + + if(parent && this.align){ + if(typeof align === 'function'){ + return this.align(); + } + + var w = this.width, h = this.height, + pw = parent.width, ph = parent.height; + switch(align){ + case 'TL': + x = 0; + y = 0; + break; + case 'T': + x = pw - w >> 1; + y = 0; + break; + case 'TR': + x = pw - w; + y = 0; + break; + case 'L': + x = 0; + y = ph - h >> 1; + break; + case 'C': + x = pw - w >> 1; + y = ph - h >> 1; + break; + case 'R': + x = pw - w; + y = ph - h >> 1; + break; + case 'BL': + x = 0; + y = ph - h; + break; + case 'B': + x = pw - w >> 1; + y = ph - h; + break; + case 'BR': + x = pw - w; + y = ph - h; + break; + } + } + + return { + x:x, + y:y + }; + }, + /** * @language=en * Determining whether a point is in the circumscribed rectangle of current view. @@ -2650,7 +2668,7 @@ return View; requires: ['hilo/core/Hilo', 'hilo/core/Class', 'hilo/event/EventMixin', 'hilo/geom/Matrix', 'hilo/util/util'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -2718,7 +2736,7 @@ return CacheMixin; requires: ['hilo/view/Drawable', 'hilo/util/browser'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -3094,7 +3112,7 @@ return Container; requires: ['hilo/core/Hilo', 'hilo/core/Class', 'hilo/view/View'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -3363,7 +3381,7 @@ return Stage; requires: ['hilo/core/Hilo', 'hilo/core/Class', 'hilo/view/Container', 'hilo/renderer/CanvasRenderer', 'hilo/renderer/DOMRenderer', 'hilo/renderer/WebGLRenderer', 'hilo/util/browser', 'hilo/util/util'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -3443,7 +3461,7 @@ return Bitmap; requires: ['hilo/core/Hilo', 'hilo/core/Class', 'hilo/view/View', 'hilo/view/Drawable'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -3716,7 +3734,7 @@ return Sprite; requires: ['hilo/core/Hilo', 'hilo/core/Class', 'hilo/view/View', 'hilo/view/Drawable'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -3819,7 +3837,7 @@ return DOMElement; requires: ['hilo/core/Hilo', 'hilo/core/Class', 'hilo/view/View', 'hilo/view/Drawable'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -4374,7 +4392,7 @@ return Graphics; requires: ['hilo/core/Hilo', 'hilo/core/Class', 'hilo/view/View', 'hilo/view/CacheMixin'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -4629,7 +4647,7 @@ return Text; requires: ['hilo/core/Class', 'hilo/core/Hilo', 'hilo/view/View', 'hilo/view/CacheMixin'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -4815,7 +4833,7 @@ return BitmapText; requires: ['hilo/core/Class', 'hilo/core/Hilo', 'hilo/view/Container', 'hilo/view/Bitmap'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -4996,7 +5014,7 @@ return Button; requires: ['hilo/core/Hilo', 'hilo/core/Class', 'hilo/view/View', 'hilo/view/Drawable', 'hilo/util/util'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -5070,7 +5088,7 @@ return Class.create(/** @lends TextureAtlas.prototype */{ * @param {String} frames Frames message, eg:"0-5" means frame 0 to frame 5. * @param {Number} w The width of each frame. * @param {Number} h The height of each frame. - * @param {Bollean} loop Is play in loop. + * @param {Boolean} loop Is play in loop. * @param {Number} duration The time between each frame. default value is 1 (Frame), but if timeBased is true, default value will be duration(milli-second). * @example * //demo1 make one animation @@ -5235,7 +5253,7 @@ return TextureAtlas; requires: ['hilo/core/Class'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -5462,7 +5480,7 @@ return Ticker; requires: ['hilo/core/Class', 'hilo/util/browser'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -5510,7 +5528,7 @@ if (!fnProto.bind) { }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -5630,7 +5648,7 @@ return drag; requires: ['hilo/core/Hilo'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -6074,7 +6092,7 @@ return Tween; requires: ['hilo/core/Class'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -6346,7 +6364,7 @@ return Ease; }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -6396,7 +6414,7 @@ return ImageLoader; requires: ['hilo/core/Class'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -6465,7 +6483,7 @@ return ScriptLoader; requires: ['hilo/core/Class'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -6716,7 +6734,7 @@ return LoadQueue; requires: ['hilo/core/Class', 'hilo/event/EventMixin', 'hilo/loader/ImageLoader', 'hilo/loader/ScriptLoader'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -6921,7 +6939,7 @@ return HTMLAudio; requires: ['hilo/core/Class', 'hilo/util/util', 'hilo/event/EventMixin'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -7240,7 +7258,7 @@ return WebAudio; requires: ['hilo/core/Class', 'hilo/util/util', 'hilo/event/EventMixin'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -7345,7 +7363,7 @@ return WebSound; requires: ['hilo/media/HTMLAudio', 'hilo/media/WebAudio', 'hilo/util/util'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -7440,7 +7458,7 @@ return Camera; requires: ['hilo/core/Class', 'hilo/util/util'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -7629,7 +7647,7 @@ return Camera3d; requires: ['hilo/core/Class', 'hilo/util/util'] }); /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo-kissy.min.js b/build/kissy/hilo-kissy.min.js index 22eb9094..345ce944 100644 --- a/build/kissy/hilo-kissy.min.js +++ b/build/kissy/hilo-kissy.min.js @@ -1,8 +1,8 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ -KISSY.add("hilo/util/browser",function(t){var e=function(){var t=navigator.userAgent,e=document,i=window,r=e.documentElement,n={iphone:/iphone/i.test(t),ipad:/ipad/i.test(t),ipod:/ipod/i.test(t),ios:/iphone|ipad|ipod/i.test(t),android:/android/i.test(t),webkit:/webkit/i.test(t),chrome:/chrome/i.test(t),safari:/safari/i.test(t),firefox:/firefox/i.test(t),ie:/msie/i.test(t),opera:/opera/i.test(t),supportTouch:"ontouchstart"in i,supportCanvas:null!=e.createElement("canvas").getContext,supportStorage:!1,supportOrientation:"orientation"in i||"orientation"in i.screen,supportDeviceMotion:"ondevicemotion"in i};try{var a="hilo";localStorage.setItem(a,a),localStorage.removeItem(a),n.supportStorage=!0}catch(o){}var s=n.jsVendor=n.webkit?"webkit":n.firefox?"webkit":n.opera?"o":n.ie?"ms":"",h=n.cssVendor="-"+s+"-",l=e.createElement("div"),c=l.style,u=void 0!=c[s+"Transform"],d=void 0!=c[s+"Perspective"];return d&&(l.id="test3d",c=e.createElement("style"),c.textContent="@media ("+h+"transform-3d){#test3d{height:3px}}",e.head.appendChild(c),r.appendChild(l),d=3==l.offsetHeight,e.head.removeChild(c),r.removeChild(l)),n.supportTransform=u,n.supportTransform3D=d,n}();return e}),KISSY.add("hilo/util/util",function(t){var e={copy:function(t,e,i){for(var r in e)i&&!t.hasOwnProperty(r)&&void 0===t[r]||(t[r]=e[r]);return t}};return e}),KISSY.add("hilo/core/Hilo",function(t,e,i){var r=window,n=document,a=n.documentElement,o=0,s={},h={version:"1.1.4",getUid:function(t){var e=++o;if(t){var i=t.charCodeAt(t.length-1);return i>=48&&i<=57&&(t+="_"),t+e}return e},viewToString:function(t){for(var e,i=t;i;)e=e?i.id+"."+e:i.id,i=i.parent;return e},copy:function(t,e,r){return i.copy(t,e,r),s.copy||(s.copy=!0,console.warn("Hilo.copy has been Deprecated! Use Hilo.util.copy instead.")),t},browser:e,event:function(){var t="ontouchstart"in r;return{POINTER_START:t?"touchstart":"mousedown",POINTER_MOVE:t?"touchmove":"mousemove",POINTER_END:t?"touchend":"mouseup"}}(),align:{TOP_LEFT:"TL",TOP:"T",TOP_RIGHT:"TR",LEFT:"L",CENTER:"C",RIGHT:"R",BOTTOM_LEFT:"BL",BOTTOM:"B",BOTTOM_RIGHT:"BR"},getElementRect:function(t){var e;try{e=t.getBoundingClientRect()}catch(i){e={top:t.offsetTop,left:t.offsetLeft,right:t.offsetLeft+t.offsetWidth,bottom:t.offsetTop+t.offsetHeight}}var n=(r.pageXOffset||a.scrollLeft)-(a.clientLeft||0)||0,o=(r.pageYOffset||a.scrollTop)-(a.clientTop||0)||0,s=r.getComputedStyle?getComputedStyle(t):t.currentStyle,h=parseInt,l=h(s.paddingLeft)+h(s.borderLeftWidth)||0,c=h(s.paddingTop)+h(s.borderTopWidth)||0,u=h(s.paddingRight)+h(s.borderRightWidth)||0,d=h(s.paddingBottom)+h(s.borderBottomWidth)||0,f=e.top||0,v=e.left||0,p=e.right||0,m=e.bottom||0;return{left:v+n+l,top:f+o+c,width:p-u-v-l,height:m-d-f-c}},createElement:function(t,e){var i,r,a,o=n.createElement(t);for(i in e)if(r=e[i],"style"===i)for(a in r)o.style[a]=r[a];else o[i]=r;return o},getElement:function(t){return n.getElementById(t)},setElementStyleByView:function(t){var e=t.drawable,i=e.domElement.style,r=t._stateCache||(t._stateCache={}),n=h.browser.jsVendor,a="px",o=!1;if(this.cacheStateIfChanged(t,["visible"],r)&&(i.display=t.visible?"":"none"),this.cacheStateIfChanged(t,["alpha"],r)&&(i.opacity=t.alpha),t.visible&&!(t.alpha<=0)){this.cacheStateIfChanged(t,["width"],r)&&(i.width=t.width+a),this.cacheStateIfChanged(t,["height"],r)&&(i.height=t.height+a),this.cacheStateIfChanged(t,["depth"],r)&&(i.zIndex=t.depth+1),(o=this.cacheStateIfChanged(t,["pivotX","pivotY"],r))&&(i[n+"TransformOrigin"]=t.pivotX+a+" "+t.pivotY+a),(this.cacheStateIfChanged(t,["x","y","rotation","scaleX","scaleY"],r)||o)&&(i[n+"Transform"]=this.getTransformCSS(t)),this.cacheStateIfChanged(t,["background"],r)&&(i.backgroundColor=t.background),i.pointerEvents||(i.pointerEvents="none");var s=e.image;if(s){var l=s.src;l!==r.image&&(r.image=l,i.backgroundImage="url("+l+")");var c=e.rect;if(c){var u=c[0],d=c[1];u!==r.sx&&(r.sx=u,i.backgroundPositionX=-u+a),d!==r.sy&&(r.sy=d,i.backgroundPositionY=-d+a)}}var f=t.mask;if(f){var v=f.drawable.domElement.style.backgroundImage;v!==r.maskImage&&(r.maskImage=v,i[n+"MaskImage"]=v,i[n+"MaskRepeat"]="no-repeat");var p=f.x,m=f.y;p===r.maskX&&m===r.maskY||(r.maskX=p,r.maskY=m,i[n+"MaskPosition"]=p+a+" "+m+a)}}},cacheStateIfChanged:function(t,e,i){var r,n,a,o,s=!1;for(r=0,n=e.length;r=6?(e=s[0],i=s[1],r=s[2],n=s[3],a=s[4],o=s[5]):(e=t.a,i=t.b,r=t.c,n=t.d,a=t.tx,o=t.ty),this.a=h*e+l*r,this.b=h*i+l*n,this.c=c*e+u*r,this.d=c*i+u*n,this.tx=d*e+f*r+a,this.ty=d*i+f*n+o,this},rotate:function(t){var e=Math.sin(t),i=Math.cos(t),r=this.a,n=this.b,a=this.c,o=this.d,s=this.tx,h=this.ty;return this.a=r*i-n*e,this.b=r*e+n*i,this.c=a*i-o*e,this.d=a*e+o*i,this.tx=s*i-h*e,this.ty=s*e+h*i,this},scale:function(t,e){return this.a*=t,this.d*=e,this.c*=t,this.b*=e,this.tx*=t,this.ty*=e,this},translate:function(t,e){return this.tx+=t,this.ty+=e,this},identity:function(){return this.a=this.d=1,this.b=this.c=this.tx=this.ty=0,this},invert:function(){var t=this.a,e=this.b,i=this.c,r=this.d,n=this.tx,a=t*r-e*i;return this.a=r/a,this.b=-e/a,this.c=-i/a,this.d=t/a,this.tx=(i*this.ty-r*n)/a,this.ty=-(t*this.ty-e*n)/a,this},transformPoint:function(t,e,i){var r=t.x*this.a+t.y*this.c+this.tx,n=t.x*this.b+t.y*this.d+this.ty;return e&&(r=r+.5>>0,n=n+.5>>0),i?{x:r,y:n}:(t.x=r,t.y=n,t)}});return i},{requires:["hilo/core/Class"]}),KISSY.add("hilo/event/EventMixin",function(t,e){var i={_listeners:null,on:function(t,e,i){for(var r=this._listeners=this._listeners||{},n=r[t]=r[t]||[],a=0,o=n.length;a-1&&o.splice(c,1)}}return 0==o.length&&delete a[n],!0}return!1}},r=e.create({constructor:function(t,e,i){this.type=t,this.target=e,this.detail=i,this.timeStamp=+new Date},type:null,target:null,detail:null,timeStamp:0,stopImmediatePropagation:function(){this._stopped=!0}}),n=window.Event;if(n){var a=n.prototype,o=a.stopImmediatePropagation;a.stopImmediatePropagation=function(){o&&o.call(this),this._stopped=!0}}return i},{requires:["hilo/core/Class"]}),KISSY.add("hilo/view/Drawable",function(t,e,i){var r=e.create({constructor:function(t){this.init(t)},image:null,rect:null,init:function(t){var e=this,n=e.image;r.isDrawable(t)?e.image=t:i.copy(e,t,!0);var a=e.image;if("string"==typeof a){if(!n||a!==n.getAttribute("src")){e.image=null;var o=new Image;return t.crossOrigin&&(o.crossOrigin=t.crossOrigin),o.onload=function(){o.onload=null,e.init(o)},void(o.src=a)}a=e.image=n}a&&!e.rect&&(e.rect=[0,0,a.width,a.height])},Statics:{isDrawable:function(t){if(!t||!t.tagName)return!1;var e=t.tagName.toLowerCase();return"img"===e||"canvas"===e||"video"===e}}});return r},{requires:["hilo/core/Class","hilo/util/util"]}),KISSY.add("hilo/renderer/Renderer",function(t,e,i){var r=e.create({constructor:function(t){t=t||{},i.copy(this,t,!0)},renderType:null,canvas:null,stage:null,blendMode:"source-over",startDraw:function(t){},draw:function(t){},endDraw:function(t){},transform:function(){},hide:function(){},remove:function(t){},clear:function(t,e,i,r){},resize:function(t,e){}});return r},{requires:["hilo/core/Class","hilo/util/util"]}),KISSY.add("hilo/renderer/CanvasRenderer",function(t,e,i,r){var n=e.create({Extends:r,constructor:function(t){n.superclass.constructor.call(this,t),this.context=this.canvas.getContext("2d")},renderType:"canvas",context:null,startDraw:function(t){return!!(t.visible&&t.alpha>0)&&(t===this.stage&&this.context.clearRect(0,0,t.width,t.height),t.blendMode!==this.blendMode&&(this.context.globalCompositeOperation=this.blendMode=t.blendMode),this.context.save(),!0)},draw:function(t){var e=this.context,i=t.width,r=t.height,n=t.background;n&&(e.fillStyle=n,e.fillRect(0,0,i,r));var a=t.drawable,o=a&&a.image;if(o){var s=a.rect,h=s[2],l=s[3],c=s[4],u=s[5];if(!h||!l)return;i||r||(i=t.width=h,r=t.height=l),(c||u)&&e.translate(c-.5*h,u-.5*l),e.drawImage(o,s[0],s[1],h,l,0,0,i,r)}},endDraw:function(t){this.context.restore()},transform:function(t){var e=t.drawable;if(e&&e.domElement)return void i.setElementStyleByView(t);var r=this.context,n=t.scaleX,a=t.scaleY;if(t===this.stage){var o=this.canvas.style,s=t._scaleX,h=t._scaleY,l=!1;(!s&&1!=n||s&&s!=n)&&(t._scaleX=n,o.width=n*t.width+"px",l=!0),(!h&&1!=a||h&&h!=a)&&(t._scaleY=a,o.height=a*t.height+"px",l=!0),l&&t.updateViewport()}else{var c=t.x,u=t.y,d=t.pivotX,f=t.pivotY,v=t.rotation%360,p=t.mask;p&&(p._render(this),r.clip());var m=t.align;if(m)if("function"==typeof m)t.align();else{var g=t.parent;if(g){var _=t.width,x=t.height,y=g.width,w=g.height;switch(m){case"TL":c=0,u=0;break;case"T":c=y-_>>1,u=0;break;case"TR":c=y-_,u=0;break;case"L":c=0,u=w-x>>1;break;case"C":c=y-_>>1,u=w-x>>1;break;case"R":c=y-_,u=w-x>>1;break;case"BL":c=0,u=w-x;break;case"B":c=y-_>>1,u=w-x;break;case"BR":c=y-_,u=w-x}}}0==c&&0==u||r.translate(c,u),0!=v&&r.rotate(v*Math.PI/180),1==n&&1==a||r.scale(n,a),0==d&&0==f||r.translate(-d,-f)}t.alpha>0&&(r.globalAlpha*=t.alpha)},remove:function(t){var e=t.drawable,i=e&&e.domElement;if(i){var r=i.parentNode;r&&r.removeChild(i)}},clear:function(t,e,i,r){this.context.clearRect(t,e,i,r)},resize:function(t,e){var i=this.canvas,r=this.stage,n=i.style;i.width=t,i.height=e,n.width=r.width*r.scaleX+"px",n.height=r.height*r.scaleY+"px"}});return n},{requires:["hilo/core/Class","hilo/core/Hilo","hilo/renderer/Renderer"]}),KISSY.add("hilo/renderer/DOMRenderer",function(t,e,i,r,n){var a=function(){function t(t,e){var r=t.tagName||"div",n=e.image,a=t.width||n&&n.width,o=t.height||n&&n.height,s=i.createElement(r),h=s.style;if(t.id&&(s.id=t.id),h.position="absolute",h.left=(t.left||0)+"px",h.top=(t.top||0)+"px",h.width=a+"px",h.height=o+"px","canvas"==r){if(s.width=a,s.height=o,n){var l=s.getContext("2d"),c=e.rect||[0,0,a,o];l.drawImage(n,c[0],c[1],c[2],c[3],t.x||0,t.y||0,t.width||c[2],t.height||c[3])}}else if(h.opacity=void 0!=t.alpha?t.alpha:1,(t===this.stage||t.clipChildren)&&(h.overflow="hidden"),n&&n.src){h.backgroundImage="url("+n.src+")";var u=t.rectX||0,d=t.rectY||0;h.backgroundPosition=-u+"px "+-d+"px"}return s}return e.create({Extends:r,constructor:function(t){a.superclass.constructor.call(this,t)},renderType:"dom",startDraw:function(e){var i=e.drawable=e.drawable||new n;return i.domElement=i.domElement||t(e,i),!0},draw:function(t){var e=t.parent,i=t.drawable.domElement,r=i.parentNode;if(e){var n=e.drawable.domElement;if(n!=r&&n.appendChild(i),!t.width&&!t.height){var a=t.drawable.rect;a&&(a[2]||a[3])&&(t.width=a[2],t.height=a[3])}}else t!==this.stage||r||(i.style.overflow="hidden",this.canvas.appendChild(i))},transform:function(t){if(i.setElementStyleByView(t),t===this.stage){var e=this.canvas.style,r=t._scaleX,n=t._scaleY,a=t.scaleX,o=t.scaleY;(!r&&1!=a||r&&r!=a)&&(t._scaleX=a,e.width=a*t.width+"px"),(!n&&1!=o||n&&n!=o)&&(t._scaleY=o,e.height=o*t.height+"px")}},remove:function(t){var e=t.drawable,i=e&&e.domElement;if(i){var r=i.parentNode;r&&r.removeChild(i)}},hide:function(t){var e=t.drawable&&t.drawable.domElement;e&&(e.style.display="none")},resize:function(t,e){var i=this.canvas.style;i.width=t+"px",i.height=e+"px","absolute"!=i.position&&(i.position="relative")}})}();return a},{requires:["hilo/core/Class","hilo/core/Hilo","hilo/renderer/Renderer","hilo/view/Drawable"]}),KISSY.add("hilo/renderer/WebGLRenderer",function(t,e,i,r,n){var a=Math.PI/180,o=e.create({Extends:r,Statics:{MAX_BATCH_NUM:2e3,ATTRIBUTE_NUM:5,isSupport:function(){if(void 0==this._isSupported){var t=document.createElement("canvas");t.getContext&&(t.getContext("webgl")||t.getContext("experimental-webgl"))?this._isSupported=!0:this._isSupported=!1}return this._isSupported}},renderType:"webgl",gl:null,_isContextLost:!1,_cacheTexture:{},constructor:function(t){o.superclass.constructor.call(this,t);var e=this;this.gl=this.canvas.getContext("webgl")||this.canvas.getContext("experimental-webgl"),this.maxBatchNum=o.MAX_BATCH_NUM,this.positionStride=4*o.ATTRIBUTE_NUM;var i=this.maxBatchNum*o.ATTRIBUTE_NUM*4,r=6*this.maxBatchNum;this.arrayBuffer=new ArrayBuffer(4*i),this.float32Array=new Float32Array(this.arrayBuffer),this.uint32Array=new Uint32Array(this.arrayBuffer),this.indexs=new Uint16Array(r);for(var n=0,a=0;n0)&&(t===this.stage&&this.clear(),!0)},draw:function(t){var e=t.width,i=t.height,r=(t.background,t.drawable),n=r&&r.image;if(n){var a=r.rect,o=a[2],s=a[3];e||i||(e=t.width=o,i=t.height=s),this.batchIndex>=this.maxBatchNum&&this._renderBatches();var h=this._createVertexs(n,a[0],a[1],o,s,0,0,e,i),l=this.batchIndex*this.positionStride,c=this.float32Array,u=this.uint32Array,d=(t.tint>>16)+(65280&t.tint)+((255&t.tint)<<16)+(255*t.__webglRenderAlpha<<24);c[l+0]=h[0],c[l+1]=h[1],c[l+2]=h[2],c[l+3]=h[3],u[l+4]=d,c[l+5]=h[4],c[l+6]=h[5],c[l+7]=h[6],c[l+8]=h[7],u[l+9]=d,c[l+10]=h[8],c[l+11]=h[9],c[l+12]=h[10],c[l+13]=h[11],u[l+14]=d,c[l+15]=h[12],c[l+16]=h[13],c[l+17]=h[14],c[l+18]=h[15],u[l+19]=d;for(var f=t.__webglWorldMatrix,v=0;v<4;v++){var p=c[l+5*v],m=c[l+5*v+1];c[l+5*v]=f.a*p+f.c*m+f.tx,c[l+5*v+1]=f.b*p+f.d*m+f.ty}t.__textureImage=n,this.sprites[this.batchIndex++]=t}},endDraw:function(t){t===this.stage&&this._renderBatches()},transform:function(t){var e=t.drawable;if(e&&e.domElement)return void i.setElementStyleByView(t);var r=t.scaleX,a=t.scaleY;if(t===this.stage){var o=this.canvas.style,s=t._scaleX,h=t._scaleY,l=!1;(!s&&1!=r||s&&s!=r)&&(t._scaleX=r,o.width=r*t.width+"px",l=!0),(!h&&1!=a||h&&h!=a)&&(t._scaleY=a,o.height=a*t.height+"px",l=!0),l&&t.updateViewport(),t.__webglWorldMatrix=t.__webglWorldMatrix||new n(1,0,0,1,0,0)}else t.parent&&(t.__webglWorldMatrix=t.__webglWorldMatrix||new n(1,0,0,1,0,0),this._setConcatenatedMatrix(t,t.parent));t.alpha>0&&(t.parent&&t.parent.__webglRenderAlpha?t.__webglRenderAlpha=t.alpha*t.parent.__webglRenderAlpha:t.__webglRenderAlpha=t.alpha)},remove:function(t){var e=t.drawable,i=e&&e.domElement;if(i){var r=i.parentNode;r&&r.removeChild(i)}},clear:function(t,e,i,r){this.gl.clear(this.gl.COLOR_BUFFER_BIT)},resize:function(t,e){if(this.width!==t||this.height!==e){var i=this.canvas,r=this.stage,n=i.style;this.width=i.width=t,this.height=i.height=e,n.width=r.width*r.scaleX+"px",n.height=r.height*r.scaleY+"px",this.gl.viewport(0,0,t,e),this.canvasHalfWidth=.5*t,this.canvasHalfHeight=.5*e,this._uploadProjectionTransform(!0)}},_renderBatches:function(){var t=this.gl;t.bufferSubData(t.ARRAY_BUFFER,0,this.uint32Array.subarray(0,this.batchIndex*this.positionStride));for(var e=0,i=0,r=null,n=0;n0&&(i.bindTexture(i.TEXTURE_2D,this._getTexture(this.sprites[t])),i.drawElements(i.TRIANGLES,6*r,i.UNSIGNED_SHORT,6*t*2))},_uploadProjectionTransform:function(t){this._projectionTransformElements&&!t||(this._projectionTransformElements=new Float32Array([1/this.canvasHalfWidth,0,0,0,-1/this.canvasHalfHeight,0,-1,1,1])),this.gl.uniformMatrix3fv(this.u_projectionTransform,!1,this._projectionTransformElements)},_initShaders:function(){var t=" attribute vec2 a_position;\n attribute vec2 a_TexCoord;\n attribute vec4 a_tint;\n uniform mat3 u_projectionTransform;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_Position = vec4((u_projectionTransform * vec3(a_position, 1.0)).xy, 1.0, 1.0);\n v_TexCoord = a_TexCoord;\n v_tint = vec4(a_tint.rgb * a_tint.a, a_tint.a);\n }\n ",e="\n precision mediump float;\n uniform sampler2D u_Sampler;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_FragColor = texture2D(u_Sampler, v_TexCoord) * v_tint;\n }\n ";this.defaultShader=new s(this,{v:t,f:e},{attributes:["a_position","a_TexCoord","a_tint"],uniforms:["u_projectionTransform","u_Sampler"]})},_createVertexs:function(t,e,i,r,n,a,o,s,h){var l=this.__tempVertexs||[],c=t.width,u=t.height;r/=c,n/=u,e/=c,i/=u,s=s,h=h,a=a,o=o,r+e>1&&(r=1-e),n+i>1&&(n=1-i);var d=0;return l[d++]=a,l[d++]=o,l[d++]=e,l[d++]=i,l[d++]=a+s,l[d++]=o,l[d++]=e+r,l[d++]=i,l[d++]=a,l[d++]=o+h,l[d++]=e,l[d++]=i+n,l[d++]=a+s,l[d++]=o+h,l[d++]=e+r,l[d++]=i+n,l},_setConcatenatedMatrix:function(t,e){var i=t.__webglWorldMatrix,r=1,n=0,o=t.rotation%360,s=t.pivotX,h=t.pivotY,l=t.scaleX,c=t.scaleY;if(o){var u=o*a;r=Math.cos(u),n=Math.sin(u)}i.a=r*l,i.b=n*l,i.c=-n*c,i.d=r*c,i.tx=t.x-i.a*s-i.c*h,i.ty=t.y-i.b*s-i.d*h,i.concat(e.__webglWorldMatrix)},_getTexture:function(t){var e=t.__textureImage,i=this._cacheTexture[e.src];return i||(i=this.activeShader.uploadTexture(e)),i}}),s=function(t,e,i){this.renderer=t,this.gl=t.gl,this.program=this._createProgram(this.gl,e.v,e.f),i=i||{},this.attributes=i.attributes||[],this.uniforms=i.uniforms||[]};return s.prototype={active:function(){var t=this,e=t.renderer,i=t.gl,r=t.program;r&&i&&(e.activeShader=t,i.useProgram(r),t.attributes.forEach(function(t){e[t]=i.getAttribLocation(r,t),i.enableVertexAttribArray(e[t])}),t.uniforms.forEach(function(t){e[t]=i.getUniformLocation(r,t)}),t.width===e.width&&t.height===e.height||(t.width=e.width,t.height=e.height,e._uploadProjectionTransform()))},uploadTexture:function(t){var e=this.gl,i=this.renderer,r=e.createTexture(),n=i.u_Sampler;return e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,r),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,1),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.uniform1i(n,0),e.bindTexture(e.TEXTURE_2D,null),this.renderer._cacheTexture[t.src]=r,r},_createProgram:function(t,e,i){var r=this._createShader(t,t.VERTEX_SHADER,e),n=this._createShader(t,t.FRAGMENT_SHADER,i);if(!r||!n)return null;var a=t.createProgram();if(a){t.attachShader(a,r),t.attachShader(a,n),t.linkProgram(a),t.deleteShader(n),t.deleteShader(r);var o=t.getProgramParameter(a,t.LINK_STATUS);if(!o){var s=t.getProgramInfoLog(a);return console.log("Failed to link program: "+s),t.deleteProgram(a),null}}return a},_createShader:function(t,e,i){var r=t.createShader(e);if(r){t.shaderSource(r,i),t.compileShader(r);var n=t.getShaderParameter(r,t.COMPILE_STATUS);if(!n){var a=t.getShaderInfoLog(r);return console.log("Failed to compile shader: "+a),t.deleteShader(r),null}}return r}},o},{requires:["hilo/core/Class","hilo/core/Hilo","hilo/renderer/Renderer","hilo/geom/Matrix"]}),KISSY.add("hilo/view/View",function(t,e,i,r,n,a){var o=function(){function t(t,e,i){for(var r,n,a,o,s=0,h=!1,l=0,c=i.length;ld.x?(r=d.x,n=u.x):(r=u.x,n=d.x),t>=r&&t<=n))h=!0;else if(u.y>d.y?(a=d.y,o=u.y):(a=u.y,o=d.y),!(eo)){var f=(e-u.y)*(d.x-u.x)/(d.y-u.y)+u.x;if(f>t?s++:f==t&&(h=!0),u.x>t&&u.y==e){var v=i[(c+l-1)%c];(v.ye||v.y>e&&d.ys?s=c:cl?l=c:c=0)return!1;u>i.overlap&&(i.overlap=u,i.normal.x=v.x,i.normal.y=v.y)}return i}return i.create({Mixes:r,constructor:function(t){t=t||{},this.id=this.id||t.id||e.getUid("View"),a.copy(this,t,!0)},tint:16777215,id:null,x:0,y:0,width:0,height:0,alpha:1,rotation:0,visible:!0,pivotX:0,pivotY:0,scaleX:1,scaleY:1,pointerEnabled:!0,background:null,mask:null,align:null,drawable:null,boundsArea:null,parent:null,depth:-1,blendMode:"source-over",getStage:function(){for(var t,e=this;t=e.parent;)e=t;return e.canvas?e:null},getScaledWidth:function(){return this.width*this.scaleX},getScaledHeight:function(){return this.height*this.scaleY},addTo:function(t,e){return"number"==typeof e?t.addChildAt(this,e):t.addChild(this),this},removeFromParent:function(){var t=this.parent;return t&&t.removeChild(this),this},getBounds:function(){for(var t,e,i,r,n,a,o,s=this.width,h=this.height,l=this.getConcatenatedMatrix(),c=this.boundsArea||[{x:0,y:0},{x:s,y:0},{x:s,y:h},{x:0,y:h}],u=[],d=0,f=c.length;de?r=e:ni?a=i:o=n.x&&e<=n.x+n.width&&i>=n.y&&i<=n.y+n.height;return a&&r&&(a=t(e,i,n)),a},hitTestObject:function(t,e){var i=this.getBounds(),r=t.getBounds(),n=i.x<=r.x+r.width&&r.x<=i.x+i.width&&i.y<=r.y+r.height&&r.y<=i.y+i.height;return n&&e&&(n=o(i,r)),!!n},_render:function(t,e){this.onUpdate&&this.onUpdate(e)===!1||!t.startDraw(this)||(t.transform(this),this.render(t,e),t.endDraw(this))},_fireMouseEvent:function(t){if(t.eventCurrentTarget=this,this.fire(t),"mousemove"==t.type){if(!this.__mouseOver){this.__mouseOver=!0;var e=a.copy({},t);e.type="mouseover",this.fire(e)}}else"mouseout"==t.type&&(this.__mouseOver=!1);var i=this.parent;t._stopped||t._stopPropagationed||!i||("mouseout"==t.type||"touchout"==t.type?i.hitTestPoint(t.stageX,t.stageY,!0)||i._fireMouseEvent(t):i._fireMouseEvent(t))},onUpdate:null,render:function(t,e){t.draw(this)},toString:function(){return e.viewToString(this)}})}();return o},{requires:["hilo/core/Hilo","hilo/core/Class","hilo/event/EventMixin","hilo/geom/Matrix","hilo/util/util"]}),KISSY.add("hilo/view/CacheMixin",function(t,e,i){var r,n,a={_cacheDirty:!0,cache:function(t){(t||this._cacheDirty||!this.drawable)&&this.updateCache()},updateCache:function(){i.supportCanvas&&(r||(r=document.createElement("canvas"),n=r.getContext("2d")),r.width=this.width,r.height=this.height,this._draw(n),this.drawable=this.drawable||new e,this.drawable.init({image:r.toDataURL()}),this._cacheDirty=!1)},setCacheDirty:function(t){this._cacheDirty=t}};return a},{requires:["hilo/view/Drawable","hilo/util/browser"]}),KISSY.add("hilo/view/Container",function(t,e,i,r){var n=i.create({Extends:r,constructor:function(t){t=t||{},this.id=this.id||t.id||e.getUid("Container"),n.superclass.constructor.call(this,t),this.children?this._updateChildren():this.children=[]},children:null,pointerChildren:!0,clipChildren:!1,getNumChildren:function(){return this.children.length},addChildAt:function(t,e){var i=this.children,r=i.length,n=t.parent;e=e<0?0:e>r?r:e;var a=this.getChildIndex(t);if(a==e)return this;if(a>=0?(i.splice(a,1),e=e==r?r-1:e):n&&n.removeChild(t),i.splice(e,0,t),a<0)this._updateChildren(e);else{var o=a=e.length)return null;var i=e[t];if(i){if(!i.__renderer)for(var r=i;r=r.parent;){if(r.renderer){i.__renderer=r.renderer;break}if(r.__renderer){i.__renderer=r.__renderer;break}}i.__renderer&&i.__renderer.remove(i),i.parent=null,i.depth=-1}return e.splice(t,1),this._updateChildren(t),i},removeChild:function(t){return this.removeChildAt(this.getChildIndex(t))},removeChildById:function(t){for(var e,i=this.children,r=0,n=i.length;r=e.length?null:e[t]},getChildById:function(t){for(var e,i=this.children,r=0,n=i.length;r=0&&r!=e){var n=i.length;e=e<0?0:e>=n?n-1:e,i.splice(r,1),i.splice(e,0,t),this._updateChildren()}return this},swapChildren:function(t,e){var i=this.children,r=this.getChildIndex(t),n=this.getChildIndex(e);t.depth=n,i[n]=t,e.depth=r,i[r]=e},swapChildrenAt:function(t,e){var i=this.children,r=this.getChildAt(t),n=this.getChildAt(e);r.depth=e,i[e]=r,n.depth=t,i[t]=n},sortChildren:function(t){var e=t,i=this.children;if("string"==typeof e){var r=e;e=function(t,e){return e[r]-t[r]}}i.sort(e),this._updateChildren()},_updateChildren:function(t,e){var i,r=this.children;t=t||0,e=e||r.length;for(var n=t;n=0;l--)if(a=h[l],!(!a||!a.visible||a.alpha<=0||n&&!a.pointerEnabled))if(a.children&&a.children.length&&(!n||a.pointerChildren)&&(o=a.getViewAtPoint(t,e,i,r,n)),o){if(!r)return o;o.length&&(s=s.concat(o))}else if(a.hitTestPoint(t,e,i)){if(!r)return a;s.push(a)}return r&&s.length?s:null},render:function(t,e){n.superclass.render.call(this,t,e);var i,r,a,o=this.children.slice(0);for(i=0,r=o.length;ir?r:e,i[e]=t,t.name&&(this._frameNames[t.name]=t),(0!=e||this.width)&&this.height||(this.width=t.rect[2],this.height=t.rect[3]),this},getFrame:function(t){if("number"==typeof t){var e=this._frames;return t<0||t>=e.length?null:e[t]}return this._frameNames[t]},getFrameIndex:function(t){var e=this._frames,i=e.length,r=-1;if("number"==typeof t)r=t;else{var n="string"==typeof t?this._frameNames[t]:t;if(n)for(var a=0;a=i?i-1:r,this.paused=e,this._firstRender=!0,this},_render:function(t,e){var i,r=this.currentFrame;if(this._firstRender?(i=r,this._firstRender=!1):i=this._nextFrame(e),i!=r){this.currentFrame=i;var n=this._frames[i].callback;n&&n.call(this)}this.onEnterFrame&&this.onEnterFrame(i),this.drawable.init(this._frames[i]),a.superclass._render.call(this,t,e)},_nextFrame:function(t){var e=this._frames,i=e.length,r=this.currentFrame,n=e[r],a=n.duration||this.interval,o=this._frameElapsed,s=0!=r||this.drawable?o+(this.timeBased?t:1):0;return o=this._frameElapsed=s=i-1)&&this.stop(),this.paused||0!=o||(null!=n.next?r=this.getFrameIndex(n.next):r>=i-1?r=0:this.drawable&&r++),r},setFrameCallback:function(t,e){return t=this.getFrame(t),t&&(t.callback=e),this},onEnterFrame:null});return a},{requires:["hilo/core/Hilo","hilo/core/Class","hilo/view/View","hilo/view/Drawable"]}),KISSY.add("hilo/view/DOMElement",function(t,e,i,r,n){var a=i.create({Extends:r,constructor:function(t){t=t||{},this.id=this.id||t.id||e.getUid("DOMElement"),a.superclass.constructor.call(this,t),this.drawable=new n;var i=this.drawable.domElement=t.element||e.createElement("div");i.id=this.id,this.pointerEnabled&&(i.style.pointerEvents="visible")},_render:function(t,e){this.onUpdate&&this.onUpdate(e)===!1||(t.transform(this),this.visible&&this.alpha>0&&this.render(t,e))},render:function(t,e){if("dom"!==t.renderType){var i,r=t.canvas,n=this.drawable.domElement,a=this.depth,o=r.nextSibling;if(n.parentNode)return;for(;o&&3!=o.nodeType&&(i=parseInt(o.style.zIndex)||0,!(i<=0||i>a));)o=o.nextSibling;r.parentNode.insertBefore(this.drawable.domElement,o)}else t.draw(this)}});return a},{requires:["hilo/core/Hilo","hilo/core/Class","hilo/view/View","hilo/view/Drawable"]}),KISSY.add("hilo/view/Graphics",function(t,e,i,r,n){var a=function(){var t=document.createElement("canvas"),o=t.getContext&&t.getContext("2d");return i.create({Extends:r,Mixes:n,constructor:function(t){t=t||{},this.id=this.id||t.id||e.getUid("Graphics"),a.superclass.constructor.call(this,t),this._actions=[]},lineWidth:1,lineAlpha:1,lineCap:null,lineJoin:null,miterLimit:10,hasStroke:!1,strokeStyle:"0",hasFill:!1,fillStyle:"0",fillAlpha:0,lineStyle:function(t,e,i,r,n,a){var o=this,s=o._addAction;return s.call(o,["lineWidth",o.lineWidth=t||1]),s.call(o,["strokeStyle",o.strokeStyle=e||"0"]),s.call(o,["lineAlpha",o.lineAlpha=i||1]),void 0!=r&&s.call(o,["lineCap",o.lineCap=r]),void 0!=n&&s.call(o,["lineJoin",o.lineJoin=n]),void 0!=a&&s.call(o,["miterLimit",o.miterLimit=a]),o.hasStroke=!0,o},beginFill:function(t,e){var i=this,r=i._addAction;return r.call(i,["fillStyle",i.fillStyle=t]),r.call(i,["fillAlpha",i.fillAlpha=e||1]),i.hasFill=!0,i},endFill:function(){var t=this,e=t._addAction;return t.hasStroke&&e.call(t,["stroke"]),t.hasFill&&e.call(t,["fill"]),t.setCacheDirty(!0),t},beginLinearGradientFill:function(t,e,i,r,n,a){for(var s=this,h=o.createLinearGradient(t,e,i,r),l=0,c=n.length;l1?a.slice(1):null;"function"==typeof t[o]?t[o].apply(t,s):t[o]=a[1]}},render:function(t,e){var i=this;"canvas"===t.renderType?i._draw(t.context):(i.cache(),t.draw(i))},clear:function(){var t=this;return t._actions.length=0,t.lineWidth=1,t.lineAlpha=1,t.lineCap=null,t.lineJoin=null,t.miterLimit=10,t.hasStroke=!1,t.strokeStyle="0",t.hasFill=!1,t.fillStyle="0",t.fillAlpha=1,t.setCacheDirty(!0),t},_addAction:function(t){var e=this;return e._actions.push(t),e}})}();return a},{requires:["hilo/core/Hilo","hilo/core/Class","hilo/view/View","hilo/view/CacheMixin"]}),KISSY.add("hilo/view/Text",function(t,e,i,r,n){var a=e.create({Extends:r,Mixes:n,constructor:function(t){t=t||{},this.id=this.id||t.id||i.getUid("Text"),a.superclass.constructor.call(this,t),t.font||(this.font="12px arial"),this._fontHeight=a.measureFontHeight(this.font)},text:null,color:"#000",textAlign:null,textVAlign:null,outline:!1,lineSpacing:0,maxWidth:200,font:null,textWidth:0,textHeight:0,setFont:function(t){var e=this;return e.font!==t&&(e.font=t,e._fontHeight=a.measureFontHeight(t)),e},render:function(t,e){var i=this;if("canvas"===t.renderType)this.drawable?t.draw(i):i._draw(t.context);else if("dom"===t.renderType){var r=i.drawable,n=r.domElement,a=n.style;a.font=i.font,a.textAlign=i.textAlign,a.color=i.color,a.width=i.width+"px",a.height=i.height+"px",a.lineHeight=i._fontHeight+i.lineSpacing+"px",n.innerHTML=i.text,t.draw(this)}else i.cache(),t.draw(i)},_draw:function(t){var e=this,i=e.text.toString();if(i){t.font=e.font,t.textAlign=e.textAlign,t.textBaseline="top";var r,n,a,o,s,h=i.split(/\r\n|\r|\n|/),l=0,c=0,u=e._fontHeight+e.lineSpacing,d=[];for(r=0,o=h.length;re.maxWidth?(d.push({text:m,y:c}),l>1;break;case"bottom":_=e.height-e.textHeight}var x=e.background;for(x&&(t.fillStyle=x,t.fillRect(0,0,e.width,e.height)),e.outline?t.strokeStyle=e.color:t.fillStyle=e.color,r=0;r>1;break;case"right":case"end":n=a}r.outline?t.strokeText(e,n,i):t.fillText(e,n,i)},Statics:{measureFontHeight:function(t){var e,r=document.documentElement,n=i.createElement("div",{style:{font:t,position:"absolute"},innerHTML:"M"});return r.appendChild(n),e=n.offsetHeight,r.removeChild(n),e}}});return a},{requires:["hilo/core/Class","hilo/core/Hilo","hilo/view/View","hilo/view/CacheMixin"]}),KISSY.add("hilo/view/BitmapText",function(t,e,i,r,n){var a=e.create({Extends:r,constructor:function(t){t=t||{},this.id=this.id||t.id||i.getUid("BitmapText"),a.superclass.constructor.call(this,t);var e=t.text+"";e&&(this.text="",this.setText(e)),this.pointerChildren=!1},glyphs:null,letterSpacing:0,text:"",textAlign:"left",setText:function(t){var e=this,i=t.toString(),r=i.length;if(e.text!=i){e.text=i;var n,a,o,s,h=0,l=0,c=0;for(n=0;n0?e.letterSpacing:0),e.children[n]?(s=e.children[n],s.setImage(o.image,o.rect)):(s=e._createBitmap(o),e.addChild(s)),s.x=c,h=c+o.rect[2],l=Math.max(l,o.rect[3]));for(n=e.children.length-1;n>=r;n--)e._releaseBitmap(e.children[n]),e.children[n].removeFromParent();return e.width=h,e.height=l,this.setTextAlign(),e}},_createBitmap:function(t){var e;return a._pool.length?(e=a._pool.pop(),e.setImage(t.image,t.rect)):e=new n({image:t.image,rect:t.rect}),e},_releaseBitmap:function(t){a._pool.push(t)},setTextAlign:function(t){switch(this.textAlign=t||this.textAlign,this.textAlign){case"center":this.pivotX=.5*this.width;break;case"right":this.pivotX=this.width;break;case"left":default:this.pivotX=0}return this},hasGlyphs:function(t){var e=this.glyphs;if(!e)return!1;t=t.toString();var i,r=t.length;for(i=0;i=this._targetFPS?(this._measuredFPS=1e3/(this._tickTime/this._tickCount)+.5>>0,this._tickCount=0,this._tickTime=0):this._tickTime+=t-this._lastTime,this._lastTime=t;for(var r=i.slice(0),n=0,a=r.length;n=0&&e.splice(i,1)},nextTick:function(t){var e=this,i={tick:function(r){e.removeTick(i),t()}};return e.addTick(i),i},timeout:function(t,e){var i=this,r=(new Date).getTime()+e,n={tick:function(){var e=(new Date).getTime(),a=e-r;a>=0&&(i.removeTick(n),t())}};return i.addTick(n),n},interval:function(t,e){var i=this,r=(new Date).getTime()+e,n={tick:function(){var i=(new Date).getTime(),n=i-r;n>=0&&(n=r)return-1;for(e<0&&(e=r+e),i=e;i=1?1:s;var l=n.ease?n.ease(s):s;n.reverse&&(n._reverseFlag<0&&(s=1-s,l=1-l),s<1e-7&&(n.repeat>0&&n._repeatCount++>=n.repeat||0==n.repeat&&!n.loop?h=!0:(n._startTime=t(),n._pausedTime=0,n._reverseFlag*=-1))),0==n.time&&(o=n.onStart)&&o.call(n,n),n.time=a,n._render(l),(o=n.onUpdate)&&o.call(n,s,n),s>=1&&(n.reverse?(n._startTime=t(),n._pausedTime=0,n._reverseFlag*=-1):n.loop||n.repeat>0&&n._repeatCount++0&&u<=e?(c._render(s),c.time=a,i.add(c)):h&&(u<0||u>e)&&c.start()}return h?((o=n.onComplete)&&o.call(n,n),!0):void 0}}},Statics:{_tweens:[],tick:function(){var e,r,n=i._tweens,a=n.length;for(r=0;r-1&&n.splice(e,1);else for(e=0;e=i)return void t.fire("complete");if(t._currentIndexe.z})},tick:function(){this.sortZ()}});return o}();return r},{requires:["hilo/core/Class","hilo/util/util"]}),KISSY.add("hilo/game/ParticleSystem",function(t,e,i,r,n,a,o){var s=function(){function t(t,e){return e?t+2*(Math.random()-.5)*e:t}for(var s=["x","y","vx","vy","ax","ay","rotation","rotationV","scale","scaleV","alpha","alphaV","life"],h=[],l=0,c=s.length;l=this._emitTime&&(this._currentRunTime=0,this._emitTime=t(this.emitTime,this.emitTimeVar),this._emit()),this._totalRunTime>=this.totalTime&&this.stop())},_emit:function(){for(var e=t(this.emitNum,this.emitNumVar)>>0,i=0;i=0;e--)this.children[e].destroy()}}),p=i.create({Extends:r,constructor:function(t){this.id=this.id||t.id||e.getUid("Particle"),p.superclass.constructor.call(this,t),this.init(t)},onUpdate:function(t){if(t*=.001,this._died)return!1;var e=this.ax+this.system.gx,i=this.ay+this.system.gy;return this.vx+=e*t,this.vy+=i*t,this.x+=this.vx*t,this.y+=this.vy*t,this.rotation+=this.rotationV,this._time>.1&&(this.alpha+=this.alphaV),this.scale+=this.scaleV,this.scaleX=this.scaleY=this.scale,this._time+=t,this._time>=this.life||this.alpha<=0?(this.destroy(),!1):void 0},setImage:function(t,e){this.drawable=this.drawable||new a,e=e||[0,0,t.width,t.height],this.width=e[2],this.height=e[3],this.drawable.rect=e,this.drawable.image=t},destroy:function(){this._died=!0,this.alpha=0,this.removeFromParent(),f.push(this)},init:function(e){this.system=e.system,this._died=!1,this._time=0,this.alpha=1;for(var i=0,r=h.length;i>0]),this.setImage(e.image,o),void 0!==e.pivotX&&(this.pivotX=e.pivotX*o[2]),void 0!==e.pivotY&&(this.pivotY=e.pivotY*o[3])}},Statics:{create:function(t){if(f.length>0){var e=f.pop();return e.init(t),e}return new p(t)}}});return v}();return s},{requires:["hilo/core/Hilo","hilo/core/Class","hilo/view/View","hilo/view/Container","hilo/view/Drawable","hilo/util/util"]}); \ No newline at end of file +KISSY.add("hilo/util/browser",function(t){var e=function(){var t=navigator.userAgent,e=document,i=window,r=e.documentElement,n={iphone:/iphone/i.test(t),ipad:/ipad/i.test(t),ipod:/ipod/i.test(t),ios:/iphone|ipad|ipod/i.test(t),android:/android/i.test(t),webkit:/webkit/i.test(t),chrome:/chrome/i.test(t),safari:/safari/i.test(t),firefox:/firefox/i.test(t),ie:/msie/i.test(t),opera:/opera/i.test(t),supportTouch:"ontouchstart"in i,supportCanvas:null!=e.createElement("canvas").getContext,supportStorage:!1,supportOrientation:"orientation"in i||"orientation"in i.screen,supportDeviceMotion:"ondevicemotion"in i};try{var a="hilo";localStorage.setItem(a,a),localStorage.removeItem(a),n.supportStorage=!0}catch(o){}var s=n.jsVendor=n.webkit?"webkit":n.firefox?"webkit":n.opera?"o":n.ie?"ms":"",h=n.cssVendor="-"+s+"-",l=e.createElement("div"),c=l.style,u=void 0!=c[s+"Transform"],d=void 0!=c[s+"Perspective"];return d&&(l.id="test3d",c=e.createElement("style"),c.textContent="@media ("+h+"transform-3d){#test3d{height:3px}}",e.head.appendChild(c),r.appendChild(l),d=3==l.offsetHeight,e.head.removeChild(c),r.removeChild(l)),n.supportTransform=u,n.supportTransform3D=d,n}();return e}),KISSY.add("hilo/util/util",function(t){var e={copy:function(t,e,i){for(var r in e)i&&!t.hasOwnProperty(r)&&void 0===t[r]||(t[r]=e[r]);return t}};return e}),KISSY.add("hilo/core/Hilo",function(t,e,i){var r=window,n=document,a=n.documentElement,o=0,s={},h={version:"1.1.5",getUid:function(t){var e=++o;if(t){var i=t.charCodeAt(t.length-1);return i>=48&&i<=57&&(t+="_"),t+e}return e},viewToString:function(t){for(var e,i=t;i;)e=e?i.id+"."+e:i.id,i=i.parent;return e},copy:function(t,e,r){return i.copy(t,e,r),s.copy||(s.copy=!0,console.warn("Hilo.copy has been Deprecated! Use Hilo.util.copy instead.")),t},browser:e,event:function(){var t="ontouchstart"in r;return{POINTER_START:t?"touchstart":"mousedown",POINTER_MOVE:t?"touchmove":"mousemove",POINTER_END:t?"touchend":"mouseup"}}(),align:{TOP_LEFT:"TL",TOP:"T",TOP_RIGHT:"TR",LEFT:"L",CENTER:"C",RIGHT:"R",BOTTOM_LEFT:"BL",BOTTOM:"B",BOTTOM_RIGHT:"BR"},getElementRect:function(t){var e;try{e=t.getBoundingClientRect()}catch(i){e={top:t.offsetTop,left:t.offsetLeft,right:t.offsetLeft+t.offsetWidth,bottom:t.offsetTop+t.offsetHeight}}var n=(r.pageXOffset||a.scrollLeft)-(a.clientLeft||0)||0,o=(r.pageYOffset||a.scrollTop)-(a.clientTop||0)||0,s=r.getComputedStyle?getComputedStyle(t):t.currentStyle,h=parseInt,l=h(s.paddingLeft)+h(s.borderLeftWidth)||0,c=h(s.paddingTop)+h(s.borderTopWidth)||0,u=h(s.paddingRight)+h(s.borderRightWidth)||0,d=h(s.paddingBottom)+h(s.borderBottomWidth)||0,f=e.top||0,v=e.left||0,p=e.right||0,m=e.bottom||0;return{left:v+n+l,top:f+o+c,width:p-u-v-l,height:m-d-f-c}},createElement:function(t,e){var i,r,a,o=n.createElement(t);for(i in e)if(r=e[i],"style"===i)for(a in r)o.style[a]=r[a];else o[i]=r;return o},getElement:function(t){return n.getElementById(t)},setElementStyleByView:function(t){var e=t.drawable,i=e.domElement.style,r=t._stateCache||(t._stateCache={}),n=h.browser.jsVendor,a="px",o=!1;if(this.cacheStateIfChanged(t,["visible"],r)&&(i.display=t.visible?"":"none"),this.cacheStateIfChanged(t,["alpha"],r)&&(i.opacity=t.alpha),t.visible&&!(t.alpha<=0)){this.cacheStateIfChanged(t,["width"],r)&&(i.width=t.width+a),this.cacheStateIfChanged(t,["height"],r)&&(i.height=t.height+a),this.cacheStateIfChanged(t,["depth"],r)&&(i.zIndex=t.depth+1),(o=this.cacheStateIfChanged(t,["pivotX","pivotY"],r))&&(i[n+"TransformOrigin"]=t.pivotX+a+" "+t.pivotY+a),(this.cacheStateIfChanged(t,["x","y","rotation","scaleX","scaleY"],r)||o)&&(i[n+"Transform"]=this.getTransformCSS(t)),this.cacheStateIfChanged(t,["background"],r)&&(i.backgroundColor=t.background),i.pointerEvents||(i.pointerEvents="none");var s=e.image;if(s){var l=s.src;l!==r.image&&(r.image=l,i.backgroundImage="url("+l+")");var c=e.rect;if(c){var u=c[0],d=c[1];u!==r.sx&&(r.sx=u,i.backgroundPositionX=-u+a),d!==r.sy&&(r.sy=d,i.backgroundPositionY=-d+a)}}var f=t.mask;if(f){var v=f.drawable.domElement.style.backgroundImage;v!==r.maskImage&&(r.maskImage=v,i[n+"MaskImage"]=v,i[n+"MaskRepeat"]="no-repeat");var p=f.x,m=f.y;p===r.maskX&&m===r.maskY||(r.maskX=p,r.maskY=m,i[n+"MaskPosition"]=p+a+" "+m+a)}}},cacheStateIfChanged:function(t,e,i){var r,n,a,o,s=!1;for(r=0,n=e.length;r=6?(e=s[0],i=s[1],r=s[2],n=s[3],a=s[4],o=s[5]):(e=t.a,i=t.b,r=t.c,n=t.d,a=t.tx,o=t.ty),this.a=h*e+l*r,this.b=h*i+l*n,this.c=c*e+u*r,this.d=c*i+u*n,this.tx=d*e+f*r+a,this.ty=d*i+f*n+o,this},rotate:function(t){var e=Math.sin(t),i=Math.cos(t),r=this.a,n=this.b,a=this.c,o=this.d,s=this.tx,h=this.ty;return this.a=r*i-n*e,this.b=r*e+n*i,this.c=a*i-o*e,this.d=a*e+o*i,this.tx=s*i-h*e,this.ty=s*e+h*i,this},scale:function(t,e){return this.a*=t,this.d*=e,this.c*=t,this.b*=e,this.tx*=t,this.ty*=e,this},translate:function(t,e){return this.tx+=t,this.ty+=e,this},identity:function(){return this.a=this.d=1,this.b=this.c=this.tx=this.ty=0,this},invert:function(){var t=this.a,e=this.b,i=this.c,r=this.d,n=this.tx,a=t*r-e*i;return this.a=r/a,this.b=-e/a,this.c=-i/a,this.d=t/a,this.tx=(i*this.ty-r*n)/a,this.ty=-(t*this.ty-e*n)/a,this},transformPoint:function(t,e,i){var r=t.x*this.a+t.y*this.c+this.tx,n=t.x*this.b+t.y*this.d+this.ty;return e&&(r=r+.5>>0,n=n+.5>>0),i?{x:r,y:n}:(t.x=r,t.y=n,t)}});return i},{requires:["hilo/core/Class"]}),KISSY.add("hilo/event/EventMixin",function(t,e){var i={_listeners:null,on:function(t,e,i){for(var r=this._listeners=this._listeners||{},n=r[t]=r[t]||[],a=0,o=n.length;a-1&&o.splice(c,1)}}return 0==o.length&&delete a[n],!0}return!1}},r=e.create({constructor:function(t,e,i){this.type=t,this.target=e,this.detail=i,this.timeStamp=+new Date},type:null,target:null,detail:null,timeStamp:0,stopImmediatePropagation:function(){this._stopped=!0}}),n=window.Event;if(n){var a=n.prototype,o=a.stopImmediatePropagation;a.stopImmediatePropagation=function(){o&&o.call(this),this._stopped=!0}}return i},{requires:["hilo/core/Class"]}),KISSY.add("hilo/view/Drawable",function(t,e,i){var r=e.create({constructor:function(t){this.init(t)},image:null,rect:null,init:function(t){var e=this,n=e.image;r.isDrawable(t)?e.image=t:i.copy(e,t,!0);var a=e.image;if("string"==typeof a){if(!n||a!==n.getAttribute("src")){e.image=null;var o=new Image;return t.crossOrigin&&(o.crossOrigin=t.crossOrigin),o.onload=function(){o.onload=null,e.init(o)},void(o.src=a)}a=e.image=n}a&&!e.rect&&(e.rect=[0,0,a.width,a.height])},Statics:{isDrawable:function(t){if(!t||!t.tagName)return!1;var e=t.tagName.toLowerCase();return"img"===e||"canvas"===e||"video"===e}}});return r},{requires:["hilo/core/Class","hilo/util/util"]}),KISSY.add("hilo/renderer/Renderer",function(t,e,i){var r=e.create({constructor:function(t){t=t||{},i.copy(this,t,!0)},renderType:null,canvas:null,stage:null,blendMode:"source-over",startDraw:function(t){},draw:function(t){},endDraw:function(t){},transform:function(){},hide:function(){},remove:function(t){},clear:function(t,e,i,r){},resize:function(t,e){}});return r},{requires:["hilo/core/Class","hilo/util/util"]}),KISSY.add("hilo/renderer/CanvasRenderer",function(t,e,i,r){var n=e.create({Extends:r,constructor:function(t){n.superclass.constructor.call(this,t),this.context=this.canvas.getContext("2d")},renderType:"canvas",context:null,startDraw:function(t){return!!(t.visible&&t.alpha>0)&&(t===this.stage&&this.context.clearRect(0,0,t.width,t.height),t.blendMode!==this.blendMode&&(this.context.globalCompositeOperation=this.blendMode=t.blendMode),this.context.save(),!0)},draw:function(t){var e=this.context,i=t.width,r=t.height,n=t.background;n&&(e.fillStyle=n,e.fillRect(0,0,i,r));var a=t.drawable,o=a&&a.image;if(o){var s=a.rect,h=s[2],l=s[3],c=s[4],u=s[5];if(!h||!l)return;i||r||(i=t.width=h,r=t.height=l),(c||u)&&e.translate(c-.5*h,u-.5*l),e.drawImage(o,s[0],s[1],h,l,0,0,i,r)}},endDraw:function(t){this.context.restore()},transform:function(t){var e=t.drawable;if(e&&e.domElement)return void i.setElementStyleByView(t);var r=this.context,n=t.scaleX,a=t.scaleY;if(t===this.stage){var o=this.canvas.style,s=t._scaleX,h=t._scaleY,l=!1;(!s&&1!=n||s&&s!=n)&&(t._scaleX=n,o.width=n*t.width+"px",l=!0),(!h&&1!=a||h&&h!=a)&&(t._scaleY=a,o.height=a*t.height+"px",l=!0),l&&t.updateViewport()}else{var c=t.x,u=t.y,d=t.pivotX,f=t.pivotY,v=t.rotation%360,p=t.mask;p&&(p._render(this),r.clip());var m=t.align;if(m){var g=t.getAlignPosition();c=g.x,u=g.y}0==c&&0==u||r.translate(c,u),0!=v&&r.rotate(v*Math.PI/180),1==n&&1==a||r.scale(n,a),0==d&&0==f||r.translate(-d,-f)}t.alpha>0&&(r.globalAlpha*=t.alpha)},remove:function(t){var e=t.drawable,i=e&&e.domElement;if(i){var r=i.parentNode;r&&r.removeChild(i)}},clear:function(t,e,i,r){this.context.clearRect(t,e,i,r)},resize:function(t,e){var i=this.canvas,r=this.stage,n=i.style;i.width=t,i.height=e,n.width=r.width*r.scaleX+"px",n.height=r.height*r.scaleY+"px"}});return n},{requires:["hilo/core/Class","hilo/core/Hilo","hilo/renderer/Renderer"]}),KISSY.add("hilo/renderer/DOMRenderer",function(t,e,i,r,n){var a=function(){function t(t,e){var r=t.tagName||"div",n=e.image,a=t.width||n&&n.width,o=t.height||n&&n.height,s=i.createElement(r),h=s.style;if(t.id&&(s.id=t.id),h.position="absolute",h.left=(t.left||0)+"px",h.top=(t.top||0)+"px",h.width=a+"px",h.height=o+"px","canvas"==r){if(s.width=a,s.height=o,n){var l=s.getContext("2d"),c=e.rect||[0,0,a,o];l.drawImage(n,c[0],c[1],c[2],c[3],t.x||0,t.y||0,t.width||c[2],t.height||c[3])}}else if(h.opacity=void 0!=t.alpha?t.alpha:1,(t===this.stage||t.clipChildren)&&(h.overflow="hidden"),n&&n.src){h.backgroundImage="url("+n.src+")";var u=t.rectX||0,d=t.rectY||0;h.backgroundPosition=-u+"px "+-d+"px"}return s}return e.create({Extends:r,constructor:function(t){a.superclass.constructor.call(this,t)},renderType:"dom",startDraw:function(e){var i=e.drawable=e.drawable||new n;return i.domElement=i.domElement||t(e,i),!0},draw:function(t){var e=t.parent,i=t.drawable.domElement,r=i.parentNode;if(e){var n=e.drawable.domElement;if(n!=r&&n.appendChild(i),!t.width&&!t.height){var a=t.drawable.rect;a&&(a[2]||a[3])&&(t.width=a[2],t.height=a[3])}}else t!==this.stage||r||(i.style.overflow="hidden",this.canvas.appendChild(i))},transform:function(t){if(i.setElementStyleByView(t),t===this.stage){var e=this.canvas.style,r=t._scaleX,n=t._scaleY,a=t.scaleX,o=t.scaleY;(!r&&1!=a||r&&r!=a)&&(t._scaleX=a,e.width=a*t.width+"px"),(!n&&1!=o||n&&n!=o)&&(t._scaleY=o,e.height=o*t.height+"px")}},remove:function(t){var e=t.drawable,i=e&&e.domElement;if(i){var r=i.parentNode;r&&r.removeChild(i)}},hide:function(t){var e=t.drawable&&t.drawable.domElement;e&&(e.style.display="none")},resize:function(t,e){var i=this.canvas.style;i.width=t+"px",i.height=e+"px","absolute"!=i.position&&(i.position="relative")}})}();return a},{requires:["hilo/core/Class","hilo/core/Hilo","hilo/renderer/Renderer","hilo/view/Drawable"]}),KISSY.add("hilo/renderer/WebGLRenderer",function(t,e,i,r,n){var a=Math.PI/180,o=e.create({Extends:r,Statics:{MAX_BATCH_NUM:2e3,ATTRIBUTE_NUM:5,isSupport:function(){if(void 0==this._isSupported){var t=document.createElement("canvas");t.getContext&&(t.getContext("webgl")||t.getContext("experimental-webgl"))?this._isSupported=!0:this._isSupported=!1}return this._isSupported}},renderType:"webgl",gl:null,_isContextLost:!1,_cacheTexture:{},constructor:function(t){o.superclass.constructor.call(this,t);var e=this;this.gl=this.canvas.getContext("webgl")||this.canvas.getContext("experimental-webgl"),this.maxBatchNum=o.MAX_BATCH_NUM,this.positionStride=4*o.ATTRIBUTE_NUM;var i=this.maxBatchNum*o.ATTRIBUTE_NUM*4,r=6*this.maxBatchNum;this.arrayBuffer=new ArrayBuffer(4*i),this.float32Array=new Float32Array(this.arrayBuffer),this.uint32Array=new Uint32Array(this.arrayBuffer),this.indexs=new Uint16Array(r);for(var n=0,a=0;n0)&&(t===this.stage&&this.clear(),!0)},draw:function(t){var e=t.width,i=t.height,r=(t.background,t.drawable),n=r&&r.image;if(n){var a=r.rect,o=a[2],s=a[3];e||i||(e=t.width=o,i=t.height=s),this.batchIndex>=this.maxBatchNum&&this._renderBatches();var h=this._createVertexs(n,a[0],a[1],o,s,0,0,e,i),l=this.batchIndex*this.positionStride,c=this.float32Array,u=this.uint32Array,d=(t.tint>>16)+(65280&t.tint)+((255&t.tint)<<16)+(255*t.__webglRenderAlpha<<24);c[l+0]=h[0],c[l+1]=h[1],c[l+2]=h[2],c[l+3]=h[3],u[l+4]=d,c[l+5]=h[4],c[l+6]=h[5],c[l+7]=h[6],c[l+8]=h[7],u[l+9]=d,c[l+10]=h[8],c[l+11]=h[9],c[l+12]=h[10],c[l+13]=h[11],u[l+14]=d,c[l+15]=h[12],c[l+16]=h[13],c[l+17]=h[14],c[l+18]=h[15],u[l+19]=d;for(var f=t.__webglWorldMatrix,v=0;v<4;v++){var p=c[l+5*v],m=c[l+5*v+1];c[l+5*v]=f.a*p+f.c*m+f.tx,c[l+5*v+1]=f.b*p+f.d*m+f.ty}t.__textureImage=n,this.sprites[this.batchIndex++]=t}},endDraw:function(t){t===this.stage&&this._renderBatches()},transform:function(t){var e=t.drawable;if(e&&e.domElement)return void i.setElementStyleByView(t);var r=t.scaleX,a=t.scaleY;if(t===this.stage){var o=this.canvas.style,s=t._scaleX,h=t._scaleY,l=!1;(!s&&1!=r||s&&s!=r)&&(t._scaleX=r,o.width=r*t.width+"px",l=!0),(!h&&1!=a||h&&h!=a)&&(t._scaleY=a,o.height=a*t.height+"px",l=!0),l&&t.updateViewport(),t.__webglWorldMatrix=t.__webglWorldMatrix||new n(1,0,0,1,0,0)}else t.parent&&(t.__webglWorldMatrix=t.__webglWorldMatrix||new n(1,0,0,1,0,0),this._setConcatenatedMatrix(t,t.parent));t.alpha>0&&(t.parent&&t.parent.__webglRenderAlpha?t.__webglRenderAlpha=t.alpha*t.parent.__webglRenderAlpha:t.__webglRenderAlpha=t.alpha)},remove:function(t){var e=t.drawable,i=e&&e.domElement;if(i){var r=i.parentNode;r&&r.removeChild(i)}},clear:function(t,e,i,r){this.gl.clear(this.gl.COLOR_BUFFER_BIT)},resize:function(t,e){if(this.width!==t||this.height!==e){var i=this.canvas,r=this.stage,n=i.style;this.width=i.width=t,this.height=i.height=e,n.width=r.width*r.scaleX+"px",n.height=r.height*r.scaleY+"px",this.gl.viewport(0,0,t,e),this.canvasHalfWidth=.5*t,this.canvasHalfHeight=.5*e,this._uploadProjectionTransform(!0)}},_renderBatches:function(){var t=this.gl;t.bufferSubData(t.ARRAY_BUFFER,0,this.uint32Array.subarray(0,this.batchIndex*this.positionStride));for(var e=0,i=0,r=null,n=0;n0&&(i.bindTexture(i.TEXTURE_2D,this._getTexture(this.sprites[t])),i.drawElements(i.TRIANGLES,6*r,i.UNSIGNED_SHORT,6*t*2))},_uploadProjectionTransform:function(t){this._projectionTransformElements&&!t||(this._projectionTransformElements=new Float32Array([1/this.canvasHalfWidth,0,0,0,-1/this.canvasHalfHeight,0,-1,1,1])),this.gl.uniformMatrix3fv(this.u_projectionTransform,!1,this._projectionTransformElements)},_initShaders:function(){var t=" attribute vec2 a_position;\n attribute vec2 a_TexCoord;\n attribute vec4 a_tint;\n uniform mat3 u_projectionTransform;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_Position = vec4((u_projectionTransform * vec3(a_position, 1.0)).xy, 1.0, 1.0);\n v_TexCoord = a_TexCoord;\n v_tint = vec4(a_tint.rgb * a_tint.a, a_tint.a);\n }\n ",e="\n precision mediump float;\n uniform sampler2D u_Sampler;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_FragColor = texture2D(u_Sampler, v_TexCoord) * v_tint;\n }\n ";this.defaultShader=new s(this,{v:t,f:e},{attributes:["a_position","a_TexCoord","a_tint"],uniforms:["u_projectionTransform","u_Sampler"]})},_createVertexs:function(t,e,i,r,n,a,o,s,h){var l=this.__tempVertexs||[],c=t.width,u=t.height;r/=c,n/=u,e/=c,i/=u,s=s,h=h,a=a,o=o,r+e>1&&(r=1-e),n+i>1&&(n=1-i);var d=0;return l[d++]=a,l[d++]=o,l[d++]=e,l[d++]=i,l[d++]=a+s,l[d++]=o,l[d++]=e+r,l[d++]=i,l[d++]=a,l[d++]=o+h,l[d++]=e,l[d++]=i+n,l[d++]=a+s,l[d++]=o+h,l[d++]=e+r,l[d++]=i+n,l},_setConcatenatedMatrix:function(t,e){var i=t.__webglWorldMatrix,r=1,n=0,o=t.rotation%360,s=t.pivotX,h=t.pivotY,l=t.scaleX,c=t.scaleY;if(o){var u=o*a;r=Math.cos(u),n=Math.sin(u)}var d=t.getAlignPosition();i.a=r*l,i.b=n*l,i.c=-n*c,i.d=r*c,i.tx=d.x-i.a*s-i.c*h,i.ty=d.y-i.b*s-i.d*h,i.concat(e.__webglWorldMatrix)},_getTexture:function(t){var e=t.__textureImage,i=this._cacheTexture[e.src];return i||(i=this.activeShader.uploadTexture(e)),i}}),s=function(t,e,i){this.renderer=t,this.gl=t.gl,this.program=this._createProgram(this.gl,e.v,e.f),i=i||{},this.attributes=i.attributes||[],this.uniforms=i.uniforms||[]};return s.prototype={active:function(){var t=this,e=t.renderer,i=t.gl,r=t.program;r&&i&&(e.activeShader=t,i.useProgram(r),t.attributes.forEach(function(t){e[t]=i.getAttribLocation(r,t),i.enableVertexAttribArray(e[t])}),t.uniforms.forEach(function(t){e[t]=i.getUniformLocation(r,t)}),t.width===e.width&&t.height===e.height||(t.width=e.width,t.height=e.height,e._uploadProjectionTransform()))},uploadTexture:function(t){var e=this.gl,i=this.renderer,r=e.createTexture(),n=i.u_Sampler;return e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,r),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,1),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.uniform1i(n,0),e.bindTexture(e.TEXTURE_2D,null),this.renderer._cacheTexture[t.src]=r,r},_createProgram:function(t,e,i){var r=this._createShader(t,t.VERTEX_SHADER,e),n=this._createShader(t,t.FRAGMENT_SHADER,i);if(!r||!n)return null;var a=t.createProgram();if(a){t.attachShader(a,r),t.attachShader(a,n),t.linkProgram(a),t.deleteShader(n),t.deleteShader(r);var o=t.getProgramParameter(a,t.LINK_STATUS);if(!o){var s=t.getProgramInfoLog(a);return console.log("Failed to link program: "+s),t.deleteProgram(a),null}}return a},_createShader:function(t,e,i){var r=t.createShader(e);if(r){t.shaderSource(r,i),t.compileShader(r);var n=t.getShaderParameter(r,t.COMPILE_STATUS);if(!n){var a=t.getShaderInfoLog(r);return console.log("Failed to compile shader: "+a),t.deleteShader(r),null}}return r}},o},{requires:["hilo/core/Class","hilo/core/Hilo","hilo/renderer/Renderer","hilo/geom/Matrix"]}),KISSY.add("hilo/view/View",function(t,e,i,r,n,a){var o=function(){function t(t,e,i){for(var r,n,a,o,s=0,h=!1,l=0,c=i.length;ld.x?(r=d.x,n=u.x):(r=u.x,n=d.x),t>=r&&t<=n))h=!0;else if(u.y>d.y?(a=d.y,o=u.y):(a=u.y,o=d.y),!(eo)){var f=(e-u.y)*(d.x-u.x)/(d.y-u.y)+u.x;if(f>t?s++:f==t&&(h=!0),u.x>t&&u.y==e){var v=i[(c+l-1)%c];(v.ye||v.y>e&&d.ys?s=c:cl?l=c:c=0)return!1;u>i.overlap&&(i.overlap=u,i.normal.x=v.x,i.normal.y=v.y)}return i}return i.create({Mixes:r,constructor:function(t){t=t||{},this.id=this.id||t.id||e.getUid("View"),a.copy(this,t,!0)},tint:16777215,id:null,x:0,y:0,width:0,height:0,alpha:1,rotation:0,visible:!0,pivotX:0,pivotY:0,scaleX:1,scaleY:1,pointerEnabled:!0,background:null,mask:null,align:null,drawable:null,boundsArea:null,parent:null,depth:-1,blendMode:"source-over",getStage:function(){for(var t,e=this;t=e.parent;)e=t;return e.canvas?e:null},getScaledWidth:function(){return this.width*this.scaleX},getScaledHeight:function(){return this.height*this.scaleY},addTo:function(t,e){return"number"==typeof e?t.addChildAt(this,e):t.addChild(this),this},removeFromParent:function(){var t=this.parent;return t&&t.removeChild(this),this},getBounds:function(){for(var t,e,i,r,n,a,o,s=this.width,h=this.height,l=this.getConcatenatedMatrix(),c=this.boundsArea||[{x:0,y:0},{x:s,y:0},{x:s,y:h},{x:0,y:h}],u=[],d=0,f=c.length;de?r=e:ni?a=i:o>1,r=0;break;case"TR":i=o-n,r=0;break;case"L":i=0,r=s-a>>1;break;case"C":i=o-n>>1,r=s-a>>1;break;case"R":i=o-n,r=s-a>>1;break;case"BL":i=0,r=s-a;break;case"B":i=o-n>>1,r=s-a;break;case"BR":i=o-n,r=s-a}}return{x:i,y:r}},hitTestPoint:function(e,i,r){var n=this.getBounds(),a=e>=n.x&&e<=n.x+n.width&&i>=n.y&&i<=n.y+n.height;return a&&r&&(a=t(e,i,n)),a},hitTestObject:function(t,e){var i=this.getBounds(),r=t.getBounds(),n=i.x<=r.x+r.width&&r.x<=i.x+i.width&&i.y<=r.y+r.height&&r.y<=i.y+i.height;return n&&e&&(n=o(i,r)),!!n},_render:function(t,e){this.onUpdate&&this.onUpdate(e)===!1||!t.startDraw(this)||(t.transform(this),this.render(t,e),t.endDraw(this))},_fireMouseEvent:function(t){if(t.eventCurrentTarget=this,this.fire(t),"mousemove"==t.type){if(!this.__mouseOver){this.__mouseOver=!0;var e=a.copy({},t);e.type="mouseover",this.fire(e)}}else"mouseout"==t.type&&(this.__mouseOver=!1);var i=this.parent;t._stopped||t._stopPropagationed||!i||("mouseout"==t.type||"touchout"==t.type?i.hitTestPoint(t.stageX,t.stageY,!0)||i._fireMouseEvent(t):i._fireMouseEvent(t))},onUpdate:null,render:function(t,e){t.draw(this)},toString:function(){return e.viewToString(this)}})}();return o},{requires:["hilo/core/Hilo","hilo/core/Class","hilo/event/EventMixin","hilo/geom/Matrix","hilo/util/util"]}),KISSY.add("hilo/view/CacheMixin",function(t,e,i){var r,n,a={_cacheDirty:!0,cache:function(t){(t||this._cacheDirty||!this.drawable)&&this.updateCache()},updateCache:function(){i.supportCanvas&&(r||(r=document.createElement("canvas"),n=r.getContext("2d")),r.width=this.width,r.height=this.height,this._draw(n),this.drawable=this.drawable||new e,this.drawable.init({image:r.toDataURL()}),this._cacheDirty=!1)},setCacheDirty:function(t){this._cacheDirty=t}};return a},{requires:["hilo/view/Drawable","hilo/util/browser"]}),KISSY.add("hilo/view/Container",function(t,e,i,r){var n=i.create({Extends:r,constructor:function(t){t=t||{},this.id=this.id||t.id||e.getUid("Container"),n.superclass.constructor.call(this,t),this.children?this._updateChildren():this.children=[]},children:null,pointerChildren:!0,clipChildren:!1,getNumChildren:function(){return this.children.length},addChildAt:function(t,e){var i=this.children,r=i.length,n=t.parent;e=e<0?0:e>r?r:e;var a=this.getChildIndex(t);if(a==e)return this;if(a>=0?(i.splice(a,1),e=e==r?r-1:e):n&&n.removeChild(t),i.splice(e,0,t),a<0)this._updateChildren(e);else{var o=a=e.length)return null;var i=e[t];if(i){if(!i.__renderer)for(var r=i;r=r.parent;){if(r.renderer){i.__renderer=r.renderer;break}if(r.__renderer){i.__renderer=r.__renderer;break}}i.__renderer&&i.__renderer.remove(i),i.parent=null,i.depth=-1}return e.splice(t,1),this._updateChildren(t),i},removeChild:function(t){return this.removeChildAt(this.getChildIndex(t))},removeChildById:function(t){for(var e,i=this.children,r=0,n=i.length;r=e.length?null:e[t]},getChildById:function(t){for(var e,i=this.children,r=0,n=i.length;r=0&&r!=e){var n=i.length;e=e<0?0:e>=n?n-1:e,i.splice(r,1),i.splice(e,0,t),this._updateChildren()}return this},swapChildren:function(t,e){var i=this.children,r=this.getChildIndex(t),n=this.getChildIndex(e);t.depth=n,i[n]=t,e.depth=r,i[r]=e},swapChildrenAt:function(t,e){var i=this.children,r=this.getChildAt(t),n=this.getChildAt(e);r.depth=e,i[e]=r,n.depth=t,i[t]=n},sortChildren:function(t){var e=t,i=this.children;if("string"==typeof e){var r=e;e=function(t,e){return e[r]-t[r]}}i.sort(e),this._updateChildren()},_updateChildren:function(t,e){var i,r=this.children;t=t||0,e=e||r.length;for(var n=t;n=0;l--)if(a=h[l],!(!a||!a.visible||a.alpha<=0||n&&!a.pointerEnabled))if(a.children&&a.children.length&&(!n||a.pointerChildren)&&(o=a.getViewAtPoint(t,e,i,r,n)),o){if(!r)return o;o.length&&(s=s.concat(o))}else if(a.hitTestPoint(t,e,i)){if(!r)return a;s.push(a)}return r&&s.length?s:null},render:function(t,e){n.superclass.render.call(this,t,e);var i,r,a,o=this.children.slice(0);for(i=0,r=o.length;ir?r:e,i[e]=t,t.name&&(this._frameNames[t.name]=t),(0!=e||this.width)&&this.height||(this.width=t.rect[2],this.height=t.rect[3]),this},getFrame:function(t){if("number"==typeof t){var e=this._frames;return t<0||t>=e.length?null:e[t]}return this._frameNames[t]},getFrameIndex:function(t){var e=this._frames,i=e.length,r=-1;if("number"==typeof t)r=t;else{var n="string"==typeof t?this._frameNames[t]:t;if(n)for(var a=0;a=i?i-1:r,this.paused=e,this._firstRender=!0,this},_render:function(t,e){var i,r=this.currentFrame;if(this._firstRender?(i=r,this._firstRender=!1):i=this._nextFrame(e),i!=r){this.currentFrame=i;var n=this._frames[i].callback;n&&n.call(this)}this.onEnterFrame&&this.onEnterFrame(i),this.drawable.init(this._frames[i]),a.superclass._render.call(this,t,e)},_nextFrame:function(t){var e=this._frames,i=e.length,r=this.currentFrame,n=e[r],a=n.duration||this.interval,o=this._frameElapsed,s=0!=r||this.drawable?o+(this.timeBased?t:1):0;return o=this._frameElapsed=s=i-1)&&this.stop(),this.paused||0!=o||(null!=n.next?r=this.getFrameIndex(n.next):r>=i-1?r=0:this.drawable&&r++),r},setFrameCallback:function(t,e){return t=this.getFrame(t),t&&(t.callback=e),this},onEnterFrame:null});return a},{requires:["hilo/core/Hilo","hilo/core/Class","hilo/view/View","hilo/view/Drawable"]}),KISSY.add("hilo/view/DOMElement",function(t,e,i,r,n){var a=i.create({Extends:r,constructor:function(t){t=t||{},this.id=this.id||t.id||e.getUid("DOMElement"),a.superclass.constructor.call(this,t),this.drawable=new n;var i=this.drawable.domElement=t.element||e.createElement("div");i.id=this.id,this.pointerEnabled&&(i.style.pointerEvents="visible")},_render:function(t,e){this.onUpdate&&this.onUpdate(e)===!1||(t.transform(this),this.visible&&this.alpha>0&&this.render(t,e))},render:function(t,e){if("dom"!==t.renderType){var i,r=t.canvas,n=this.drawable.domElement,a=this.depth,o=r.nextSibling;if(n.parentNode)return;for(;o&&3!=o.nodeType&&(i=parseInt(o.style.zIndex)||0,!(i<=0||i>a));)o=o.nextSibling;r.parentNode.insertBefore(this.drawable.domElement,o)}else t.draw(this)}});return a},{requires:["hilo/core/Hilo","hilo/core/Class","hilo/view/View","hilo/view/Drawable"]}),KISSY.add("hilo/view/Graphics",function(t,e,i,r,n){var a=function(){var t=document.createElement("canvas"),o=t.getContext&&t.getContext("2d");return i.create({Extends:r,Mixes:n,constructor:function(t){t=t||{},this.id=this.id||t.id||e.getUid("Graphics"),a.superclass.constructor.call(this,t),this._actions=[]},lineWidth:1,lineAlpha:1,lineCap:null,lineJoin:null,miterLimit:10,hasStroke:!1,strokeStyle:"0",hasFill:!1,fillStyle:"0",fillAlpha:0,lineStyle:function(t,e,i,r,n,a){var o=this,s=o._addAction;return s.call(o,["lineWidth",o.lineWidth=t||1]),s.call(o,["strokeStyle",o.strokeStyle=e||"0"]),s.call(o,["lineAlpha",o.lineAlpha=i||1]),void 0!=r&&s.call(o,["lineCap",o.lineCap=r]),void 0!=n&&s.call(o,["lineJoin",o.lineJoin=n]),void 0!=a&&s.call(o,["miterLimit",o.miterLimit=a]),o.hasStroke=!0,o},beginFill:function(t,e){var i=this,r=i._addAction;return r.call(i,["fillStyle",i.fillStyle=t]),r.call(i,["fillAlpha",i.fillAlpha=e||1]),i.hasFill=!0,i},endFill:function(){var t=this,e=t._addAction;return t.hasStroke&&e.call(t,["stroke"]),t.hasFill&&e.call(t,["fill"]),t.setCacheDirty(!0),t},beginLinearGradientFill:function(t,e,i,r,n,a){for(var s=this,h=o.createLinearGradient(t,e,i,r),l=0,c=n.length;l1?a.slice(1):null;"function"==typeof t[o]?t[o].apply(t,s):t[o]=a[1]}},render:function(t,e){var i=this;"canvas"===t.renderType?i._draw(t.context):(i.cache(),t.draw(i))},clear:function(){var t=this;return t._actions.length=0,t.lineWidth=1,t.lineAlpha=1,t.lineCap=null,t.lineJoin=null,t.miterLimit=10,t.hasStroke=!1,t.strokeStyle="0",t.hasFill=!1,t.fillStyle="0",t.fillAlpha=1,t.setCacheDirty(!0),t},_addAction:function(t){var e=this;return e._actions.push(t),e}})}();return a},{requires:["hilo/core/Hilo","hilo/core/Class","hilo/view/View","hilo/view/CacheMixin"]}),KISSY.add("hilo/view/Text",function(t,e,i,r,n){var a=e.create({Extends:r,Mixes:n,constructor:function(t){t=t||{},this.id=this.id||t.id||i.getUid("Text"),a.superclass.constructor.call(this,t),t.font||(this.font="12px arial"),this._fontHeight=a.measureFontHeight(this.font)},text:null,color:"#000",textAlign:null,textVAlign:null,outline:!1,lineSpacing:0,maxWidth:200,font:null,textWidth:0,textHeight:0,setFont:function(t){var e=this;return e.font!==t&&(e.font=t,e._fontHeight=a.measureFontHeight(t)),e},render:function(t,e){var i=this;if("canvas"===t.renderType)this.drawable?t.draw(i):i._draw(t.context);else if("dom"===t.renderType){var r=i.drawable,n=r.domElement,a=n.style;a.font=i.font,a.textAlign=i.textAlign,a.color=i.color,a.width=i.width+"px",a.height=i.height+"px",a.lineHeight=i._fontHeight+i.lineSpacing+"px",n.innerHTML=i.text,t.draw(this)}else i.cache(),t.draw(i)},_draw:function(t){var e=this,i=e.text.toString();if(i){t.font=e.font,t.textAlign=e.textAlign,t.textBaseline="top";var r,n,a,o,s,h=i.split(/\r\n|\r|\n|/),l=0,c=0,u=e._fontHeight+e.lineSpacing,d=[];for(r=0,o=h.length;re.maxWidth?(d.push({text:m,y:c}),l>1;break;case"bottom":_=e.height-e.textHeight}var x=e.background;for(x&&(t.fillStyle=x,t.fillRect(0,0,e.width,e.height)),e.outline?t.strokeStyle=e.color:t.fillStyle=e.color,r=0;r>1;break;case"right":case"end":n=a}r.outline?t.strokeText(e,n,i):t.fillText(e,n,i)},Statics:{measureFontHeight:function(t){var e,r=document.documentElement,n=i.createElement("div",{style:{font:t,position:"absolute"},innerHTML:"M"});return r.appendChild(n),e=n.offsetHeight,r.removeChild(n),e}}});return a},{requires:["hilo/core/Class","hilo/core/Hilo","hilo/view/View","hilo/view/CacheMixin"]}),KISSY.add("hilo/view/BitmapText",function(t,e,i,r,n){var a=e.create({Extends:r,constructor:function(t){t=t||{},this.id=this.id||t.id||i.getUid("BitmapText"),a.superclass.constructor.call(this,t);var e=t.text+"";e&&(this.text="",this.setText(e)),this.pointerChildren=!1},glyphs:null,letterSpacing:0,text:"",textAlign:"left",setText:function(t){var e=this,i=t.toString(),r=i.length;if(e.text!=i){e.text=i;var n,a,o,s,h=0,l=0,c=0;for(n=0;n0?e.letterSpacing:0),e.children[n]?(s=e.children[n],s.setImage(o.image,o.rect)):(s=e._createBitmap(o),e.addChild(s)),s.x=c,h=c+o.rect[2],l=Math.max(l,o.rect[3]));for(n=e.children.length-1;n>=r;n--)e._releaseBitmap(e.children[n]),e.children[n].removeFromParent();return e.width=h,e.height=l,this.setTextAlign(),e}},_createBitmap:function(t){var e;return a._pool.length?(e=a._pool.pop(),e.setImage(t.image,t.rect)):e=new n({image:t.image,rect:t.rect}),e},_releaseBitmap:function(t){a._pool.push(t)},setTextAlign:function(t){switch(this.textAlign=t||this.textAlign,this.textAlign){case"center":this.pivotX=.5*this.width;break;case"right":this.pivotX=this.width;break;case"left":default:this.pivotX=0}return this},hasGlyphs:function(t){var e=this.glyphs;if(!e)return!1;t=t.toString();var i,r=t.length;for(i=0;i=this._targetFPS?(this._measuredFPS=1e3/(this._tickTime/this._tickCount)+.5>>0,this._tickCount=0,this._tickTime=0):this._tickTime+=t-this._lastTime,this._lastTime=t;for(var r=i.slice(0),n=0,a=r.length;n=0&&e.splice(i,1)},nextTick:function(t){var e=this,i={tick:function(r){e.removeTick(i),t()}};return e.addTick(i),i},timeout:function(t,e){var i=this,r=(new Date).getTime()+e,n={tick:function(){var e=(new Date).getTime(),a=e-r;a>=0&&(i.removeTick(n),t())}};return i.addTick(n),n},interval:function(t,e){var i=this,r=(new Date).getTime()+e,n={tick:function(){var i=(new Date).getTime(),n=i-r;n>=0&&(n=r)return-1;for(e<0&&(e=r+e),i=e;i=1?1:s;var l=n.ease?n.ease(s):s;n.reverse&&(n._reverseFlag<0&&(s=1-s,l=1-l),s<1e-7&&(n.repeat>0&&n._repeatCount++>=n.repeat||0==n.repeat&&!n.loop?h=!0:(n._startTime=t(),n._pausedTime=0,n._reverseFlag*=-1))),0==n.time&&(o=n.onStart)&&o.call(n,n),n.time=a,n._render(l),(o=n.onUpdate)&&o.call(n,s,n),s>=1&&(n.reverse?(n._startTime=t(),n._pausedTime=0,n._reverseFlag*=-1):n.loop||n.repeat>0&&n._repeatCount++0&&u<=e?(c._render(s),c.time=a,i.add(c)):h&&(u<0||u>e)&&c.start()}return h?((o=n.onComplete)&&o.call(n,n),!0):void 0}}},Statics:{_tweens:[],tick:function(){var e,r,n=i._tweens,a=n.length;for(r=0;r-1&&n.splice(e,1);else for(e=0;e=i)return void t.fire("complete");if(t._currentIndexe.z})},tick:function(){this.sortZ()}});return o}();return r},{requires:["hilo/core/Class","hilo/util/util"]}),KISSY.add("hilo/game/ParticleSystem",function(t,e,i,r,n,a,o){var s=function(){function t(t,e){return e?t+2*(Math.random()-.5)*e:t}for(var s=["x","y","vx","vy","ax","ay","rotation","rotationV","scale","scaleV","alpha","alphaV","life"],h=[],l=0,c=s.length;l=this._emitTime&&(this._currentRunTime=0,this._emitTime=t(this.emitTime,this.emitTimeVar),this._emit()),this._totalRunTime>=this.totalTime&&this.stop())},_emit:function(){for(var e=t(this.emitNum,this.emitNumVar)>>0,i=0;i=0;e--)this.children[e].destroy()}}),p=i.create({Extends:r,constructor:function(t){this.id=this.id||t.id||e.getUid("Particle"),p.superclass.constructor.call(this,t),this.init(t)},onUpdate:function(t){if(t*=.001,this._died)return!1;var e=this.ax+this.system.gx,i=this.ay+this.system.gy;return this.vx+=e*t,this.vy+=i*t,this.x+=this.vx*t,this.y+=this.vy*t,this.rotation+=this.rotationV,this._time>.1&&(this.alpha+=this.alphaV),this.scale+=this.scaleV,this.scaleX=this.scaleY=this.scale,this._time+=t,this._time>=this.life||this.alpha<=0?(this.destroy(),!1):void 0},setImage:function(t,e){this.drawable=this.drawable||new a,e=e||[0,0,t.width,t.height],this.width=e[2],this.height=e[3],this.drawable.rect=e,this.drawable.image=t},destroy:function(){this._died=!0,this.alpha=0,this.removeFromParent(),f.push(this)},init:function(e){this.system=e.system,this._died=!1,this._time=0,this.alpha=1;for(var i=0,r=h.length;i>0]),this.setImage(e.image,o),void 0!==e.pivotX&&(this.pivotX=e.pivotX*o[2]),void 0!==e.pivotY&&(this.pivotY=e.pivotY*o[3])}},Statics:{create:function(t){if(f.length>0){var e=f.pop();return e.init(t),e}return new p(t)}}});return v}();return s},{requires:["hilo/core/Hilo","hilo/core/Class","hilo/view/View","hilo/view/Container","hilo/view/Drawable","hilo/util/util"]}); \ No newline at end of file diff --git a/build/kissy/hilo-kissy.zip b/build/kissy/hilo-kissy.zip index 50d4cc45eff4e06fdb685a891347f724275580de..c36b94144c16f1a45219c769ba4bc72562fb59d7 100644 GIT binary patch delta 125067 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�`R5CUjAZk*YYP38GtRT)FDj zDA3nGcqe5rYg<)gBCu|^uB#-wj1s)%MG3e3fSN?KQB;cwr_L&X!XmncHO+|Mz)(j{ zsDJX)iI{twn=30~aqMltC?)DNi<5+I8-Y*fkQp@2zhQ^$l_TtmJ3Emj-iG;!h}6L; zl}_vlpV%jSVqejTow%quP_sl)u@NvxIo{>y{tCCpBJl%na(};q*#h#W&x+op7rxk? z2P^!6ERy<0WZ%mI5+0D~U>+oa9>=ge{>b z%kYB9gyOSu)V^4H3V#=LmmFWE2+jrG@LK_?;W-w*$^@II>DLu@fVGpL)D;8&!mO?v zySi@0m5TfVUmQ6qzQic`T=;hr*ngE#4`(a|u9t91fL0Vj*e&JO%t!3uZRZm@y_-nO{j*~xi6 zrFXqcGO>?u_6FYos=y%>XcHbqu_z&!htf*r_XuNl zjVeLwZrr9+QC-#QfXs_ltE;^SGCj&^7>*`mjHG7M?!IA%(dipDf9D*}>s?Eph#t^s zn+U+j=r{yMUjdR;WX`|4xw-Dc#hL1ix%$xQpDEqpJJKid9gcG2CT8$KhUE2!cbmD9 zz?{+?21|c#l@?mL<%)sRMSs0pdrTqXN}zzV`Oc044~dEy0xDW9>jI!#)fUQq+~PFI zfjoyXs^S)?ii_Wn94^&Ww&+BcMV7#+r3103(6h&^?et#7JKcgO;)HdhToDQ2gw}0f@ucRq7Drg@?s#A1G34Z##vU zRW65j>x~;o_LL1|Wa-L?x^|Up6tGypY{<|CBBqRs=;kG=b-Z6KL>5-2Ug;Yt^hd*x zsT9w5v#^2=?){WgSv}kCb0COc?bfsL&?3}Ddbyg-WKOc*BOCUf@5ZXDK-Z)4**+yw zwr`yXuYX>VDzu8zN|_&QcvBI&bSX^k!B?C+w@OkeoU9@^$fXDQDD8@`f~YH=`%dAr zwA()irmr7VBL^5cs73B$)iXh(@^rjNBX2*_-3 zwIp&!3ZzHr^pj*!aHZXcvu#e@pfGTijFdRu z?|)zGyC#>mpt+c$R%u+G%p;&th3D(rIhqWP4I{EP)MeLDJl@$!dnzdiocsD(<=*XyW^9xnydFFZLtI(_r%;`OJae>56x z7ORe{(O$EFv*;o7>(B3x-Z`zI0*Sogn}4d0temcB#f5GufK?cN`}V`pDWF~(q2#H5 zpeC5hS6P-%AFt_~M`|h|6g-DKKfFJA^WFR7*B388pB@L>{npwBU-|35Q0|T^;4u-m zI;+Q4>Xzfd*`C`1%MIc!FEN!yP;FS6oCVbx9~BBZBaGlY5W{)Ev;yp}ZAa*&h}lIoNg}z-B$6QQ;9&o` zKbo8+xJk`fK9JzvG-okEf?Lv@rGEtp?nHAG8m!%V4*(&P$L~HW`AL{yX?-w z$?gLFmN$XT1ZkI)Hs!S2HMUtY31`tpTG^w|YRJ;F;wywWg2*tQ9Qh$s6b{{A>e5m06FU0p(iQ21l=+%d}A3iB2;o{|+(@g>f zZBR*=hLR|C>SD~cpRQ0}$w8UTYkt`|v=s_sri^^sQC{NGNw`;s{}RvdgUmm6(189t&R{7Iz9gB^oLK!7yGZ(Y@&Ib zO08~7=RWE?;=)ubv46ngpWYn3|L*PaN$}Nf4#|f3Jo)~^r&EY5clS}mx*18DSNLe_ zQ_rQFL}4K3#(_9#@H4U*Jrb9?#`;M zKZcussIv$k=M2~4lw!;IFVebmTi0^3zhzG&qo30U^Xaq3Lx1_6Z}CZ@mPd_vYXR`w zY8_~;0QCDdPOrG>>rG8Nxt>F=mWGM*SVS?xqMCyLT_qR#a%W3yQ8k{|+P$q^Onv4# zXSc0E*!TVL=9a!VIBK?GI}c541S03e0YEP52g5PUuP&i&6^H`!Rc~r-gB_q2ooXt& zIEm3K%ob{>u74KGEjlM`n580GEEAdUzlNzg;qU*g>G?K~u1FLDU{OSG|Fvhj6*!Ii zI7e-bxS$y|r5m)=3l^B(T@TA(Hk9k&&Y(34(0c^1Y#{&i)=5ECx$ZNWd z(s)?2mGfV#(H0#9=lbTB2>}rQ#Zna_ON5Cz3$M%>b$^uaiAj*|iB%x+E5@%vpmEk5 z%@5(cn+17S9uCNWW6;ARayO=63c;9}@~O~1IJT0rDIO)FKz(HTL+X!Me?;A)nX8*O z^O;=Td9$`|+E$;F)2R{j0zg~2*Y>Tg?cfG*z^$Av)GFFVg;heDTP38#o>(T86HBI@ z0c5+;D1Wy$UMmzs82hi4zmCaXi@Xhplzu0om+nq*pM(VbMcbtCrUyB93-~+Pons{W z!?=auB}GmtlCAVS*)lRjHoGskGR#$;LfbV}1cql4FVBt3v6xl$NP0x_K_x8Yom%q% z5_f%6vo9LxFk)wOk=te`4a=S|M7q-#Z>(JLieEU}h8~B_fWg)SX9OFQyAf7fPg-vntGJ zNZe@q8A6AS0rXx)qK)=Pu~mP6n@tEsy&QFDV-Ul2t6SO0bK@ze3UAKsq6`S|uT z%knS&as2YTw`jv8(cvB~EZDp%)%79m(|>m_kL*uX{93BQA0xmLS;{=FmbZa-Z{A;g z`{wN_oOERP_Rag_qfbvSd-UD!F8hy9M;|XvAmY{Aqjw)KPCr~6zy9v{w-rBaE3S}r z5PNCx@SNZoOmWv54{DUFB+4ZKJ&T{xT^y+&C1+JD-! zne*FEN8i!)gvuL}5!iNqf4`k-v6!({iOdy=rU#T8ZMKmpz(`chQJ@Kh8<%2S5~siD z(&Q$IEx1&sv=Nj0%1nl?!Bt5!Ur=j_nDAfduI}`Q6Yjmy?sm((NoU#H>aUd*uyPF6^C1$Zhv9>_)F?7%4ouZVovz# zE=OrP`u|ugp-)vfq&y~$v|zxComU^;eSGuwxB`jPsv?YX1OIOmvKCl{w?a(A+npUL#0q~Q>gI47-i(2Vg&$as5aACYw4xBi z0b~#H?x#EusqaJ6{gKv1gesu$?bwU3R$%)e0t!d?3n7T}gKbY9MECddF!Q-@GvUb| zX596l_8zvk2Vb`o*M%TCV}Cj<$3?e0oC$%F**VF8v9A!KQAq8r2}U^SCOsabcOBjy z$ekUi?oi&}U*ivj4y3=c0~K2P*7^N?@wa^;25STJ%w=#3nt(ghWJ{vuu;&f-pbIGw z)F>I=-3Yq(S-y2987zI@v=J@_RoWBG!X|VrU3eDG!zHe<{=u8yXQa?vMcG-A7j7>pLslLhnySoX7p&AU)}gUMkrF2rOw zImpmNP)u0rHy4SJwtsSIDi65QnW|LUN~K$AGES({IibUZs7Q7&AA2h??-exs9{i!P z_i%7SI6m}}V09?^*2-^n7>8;~**hM8lV>rWTc`)CF~M7bm0815>o--YZn1-(&3dZZ z>W**LmEVqdit1DNSBC6g*6R?V@Pnvnorfpn;oz&Uzy5lE@P8tRr+i_o@I(1=>}wB> z{XnY$>mwLMsk`Ihc0b^A*ie0ZM#En^gFyj4fx(CN1xF0=6ieA#VQw64Mfi*Tqq1eO zwz*_uLCjqo0hl<y`n@TECzb*QC9l$PdnzcIO=%lN~C5+M7%1Bh* zp0YwLdJd*T5&A9Fk&d~uzO?x^&yd+@b)m~gzls-Nx?pmzX51RJ|JY&!uq$qAEU2^x z6?G&@jQ7Hp3ou__uUn*m)1oDD@Ksd4=JeI4FEn^N!++fjJ)lnXhBpP0F$I!QiX^Q1 z>+mLLQ#88A#Y3md8#-3rlF1A1bg4kYg-pb_(;dn&oOy;R?i(JYzzRH!$B~GK*+EPc zEQTZa3aYdiwjzHVxDiG0S6O=XFh;BR_8@^E`=9_*K&-z!#qsJaTCNoNY&MFwaT7F- zovn{&&AttkGmU?^E_I2m)Frl3m)J^O;&!Qvqo!JuzeE-JOMhDwbTlt-dZ^U_;W>wI zdt#1f4kc7UAx#ATdeQDAV8IO1SW8$XswbDHvM6gVS1OjX8p9Y}(K)k_hq%=NM{|I` z-Bh2fV~oEgZ`<(OO^sYnF~&PPIV!yi(%FX-0Muo=z&?Mp9=OtRdXPH~mneH^Bh*BvZ#i^ydpk9kPqj``_p7>u5ztfgr)I2fg3q}J5DPwb{pk;%_i>e+0(ci zH-;&9kl!o$hWe*KeSAhrc7Gp-HE^SM>$XUk7(IXK+WABquFzc~PbC1Y;d9>XaWZtB z(yIa$)%%SHEB6@HJZUvu5w&=2dx{A@9kj?DbBjx(iaS$r$AXR5abDgcV?&_|-g;V> zz{!bghAuv|KAc)xtdT-3dn9x-!HQ0PSb0ALZw%0V>!W)3sC3sbHbZk)ag4ed4FFhCoId1$A^r_!W>03{ZM*9AjVF3-P)2!Ut;<0eq#`|k zSjhxz&^pio#Z@z_u1gR~JGOpk5dl4XzgmBom<>#uoDamo`EBeOmsSypgM}0VYU~Y$ zz$cT{VuiOwVZO>QQEdhG_Jh9P3SjA&r)MHMkmG2Gs&M!vhta6D5b(j>fnW8MrJ;Yd zfxBx1F}j~MP9Hb8`r^wNdpJO!UxDme5t(}^XiitvE>1O1N`VJ`K;c6paA=5BV<9Wf z%(h{pxzLg@-#RFZfkDj8DGYPwMu?1*&lVCkK{*?v%ucQK>^7jilerm?i?Shw0ciNB z*<;o%irGuN=nbrusX~r2(Dn-T8Ag8;sz9~v*#X5LIgs~SQQNQ7gbx&Ke%Ph9s9JFX z^+W|D0#YR4BK*xg!uytyGr77iM@iB~5wJ6(He?<7EtU6cXsAd21RT`mYIr!tJ`NG} zY;Auf#A>jqOx?ygH=xmu;naH*twkTAn6^9#+=0}QUYoQVl^Td8q#_-sNcVq&s+Yey z!E4`5swAuU5-poJ@IZ%Ku{%iH;w9?2^1@5eDLovX(X|XkuybD_t37z)HdATqsBGx~ zL_+JiY778{E{=iuQxPRZl;;ADPz7>i&G8$2tz%cKb2Z~60X=lL`dvlm_&t2s3dt9? z>B)`r6V#&G-(9J7i&&IC?uvit$wOg`HIgew>479=%2?#+j!;v?v^%i0l2Ky9Oia;O zZrF&S@{Uru7OiSEm+b*9B9vtw)sOOyHLUI(%aro***SAF^V)nTVs75i8YQqkMoF*d z6RR-C8;)&nI|AN3(#A3PZjgS_gbcAEsVdC$skCVUoiEiW9kA!*D=&Ynu~t3_gQBoH zJZDsXknvWTYwD7XtV2kz5QP?pWWH}4Iz+XzA01d~^+cnBU7bc|3B&fMU0aTep{DFD z$Gi$J$~jy%G*C`D^>aQ|0%sg>(vv=j@%_NsJf>SmQ+~kp5GgpFDh8 zw6|#+d4Ccaw_mnZHNk)Wk`n;8j_yOB%>9$vslHa!mK<^AWLG)TDNoO`b*$J*Y*8MIUOMb^Pv}4*XynUDDX)K$4+UrFaNZuL@tHe8 zK0%x_z?@_7VSq9Dx*6IIH6DbV2X|yZFuc>+jYI3f03{@jO0xjaqL8oZ{9?rDc&ES} zD`$&DjJ3b3LixMGehsTSUwCYf&@HXwJ&NthhgoQB=sjhIUn!PBv6kA>T5W3ZL#6S# zp~Sj*-_hcc!`^?-Sfi0`y5KDUyBEnbm<+Zf`N6^_+$PmGr9(Sg4E zwZ5mm4IQiko6PwdUKy%b zyW!qeAx6xOnC%-nhGNndSXmU6jgEcb`AUA#u$)6-xEHHs^nmf4z6oiwhLbf_LB%^* zGq!*F@^qQMRa}Y5W0-?3F*^-I0ST$_KJYq8>)k`i zzSHq}A31hglJ%A(wls8y;H0uUf=2fPS?zy*d!>paSwHS<>Zxa#Cp($qgAEx0{#khS z^b-v?`C?4zp$;RY^JLB}NtP`!1|L3n8L3F3@z+r@90cmAU}_&K;;WNyx$O-XC#q{>H=uvm z9#m-2qiN+pvG>~ouNqoPlbpWsSezq!@6%mN+l>LNH3dQxdd7HPz}D{7MBL1)B0-h3 zSrn(b=v??1w!V7V!*VxNr})bZp6eKsBqIZYYl~68v^jdIBC*j;|tK zNu#AFL-im>_0$p5aRU>OTY=*S>XkW?ls%_Lr{za?c5Wr=|@tbhGF;w&@jFbwWjG3<3p}!&rnmB9OWQEqF zIy^Zgsf=ixb$L97%8$z-0N;PuVzyN!ii2oe0L}MOItgn22X~B}9mJ*HKvN}5H{QII zIHFI!KRu@CX^4Osw<0d5`9rP}@+gOh)(a<+akRA2)cBQ}?+u(&wGncTO0GpTng}CM zaq)mp4N4~X!18ZrYMiG30Jl79zP%Z+qV z1uH+NHFE;pf-R4BH0MODpTD4cs%&TH8LY%Gg@jX9>5B#AEnxMP_{0zalwXkd@!D+L zi|Mi`K8$>PSr^MXZRLMXLqLn*JXpSzvrK#EXzP1sTnjl0cK>TD?Ylf$&f`h(L=W&! z^AH;-vp3@-wruFBS%2BhHOw{>=^tOqW^ljlh!Rmt1*ucPEK9Zv7|{2TvYx>2SJ9FW z7#R3}VG%0h2RIbvZ)5lw4*J17Do)Bg`$ghWqM$Ew&o%7yJD7j?Z43+}B$>xyC;>y< zRG(_+l!wg3XbAW!-UZC?5oNQ+)-=d0IO~|520fgrOHgzYX(^Jgq1nEVqey5t< zfJWEL&ZJ_lSNo!;Tggh9S11nQ67VTol6Q$OW7y^!MOQh?%I3@FKfq8E>`AK0&$ zyvkL3)i8~3cB!i{kYSHdQTUId=ySDp(jv%F_#TZd3SwR?!p>C6iaHywL~NEZ$gE zy)0FVWf+vd#xmbjE3dQ%AnO!1)ncJ@<@WVc-HhdtzM=%B(m$#MO9)D* z75<%d&Ptj)P12PxHJS&`{B%0M<1;+pYC(UYn#=b*s9J zy*{PROw#{q=3m9YPBrh3HlmM)CiFRm>iWUH?rqT5*mRsEF&wvBu+qvp__<$U)SuGO z_C|koLaCCcP6yBc4xmzq9R8y3#25Sf-#q{N`QN{J*8lqN&z>Pl?q)#N=et(A*Tsi9 zx}rd{TLgVt!OV=1&q=B;In2?Uz;6P-Boyft50~hvoIO>t_h=i0n-ebCr8c^cw9!>L zyQ-ubN6IsB^5b_^0$hE976mm9P;)xOEt7v}BE7v}?<(kQb$lDsqnI8izTF-@`*L^->1ajlilWqDhW11I?Uoc64C$8H)q>XPf zqr4K6u*`l~F7^AZfjUB<6DJye9xVzl@q?LI!7+8BRc%&E)#hDiIMd#I;V6M#zfXU& zBc<8nMZpvqIWsVgFH>xLdNw#ecfG-~l#3MtBAdsry+8LG+S63y_qX>wwdY}CS48OJ zVN>-{cuTl;BQWUJ@nf})+txauAk{;4+&1d?XJ_aXa(DaM6MVk`I<>`M004jX@y|2- z^Bn)YIH#im4h>Q=>ff{T2SBMxRXQSf@_6U21q?w5d@T~PDp>H8MGZ_x{K z`#T6h<@C>TA+o!4^ytgb>|GvOpY=!bARS5To;W{~=kx+XpI$&vWe*4ANNG?Hd{(Jy zc`3C#%g)F62X!EmTNq8@4>2t8C4=<_A*(&;jhv^*U3u#`R<@s|ek9W$dWh|0tE%31 z;P=;RF1mkR5rmaFXyB;9;mbCTd}*LUEbP!Bl=zUutaL;=9Cjo&gMLuD0-FKZJzH@U zipxrSR>fp{BIQIYXBlh~Z&;pY1LtGaQ_WCG=N?_iJ@KWn-y^|w%$7IGaM2ChL-O0U zhs6G%j5RhgR%-mo^3`ybrRKgKzeQ)Tzr5Ls@;HAo&s|+$f^uXYg$o%Kt6Y9-;%s3w zOgAs2Oi-LM?EIg8ALksRkF4t%4F2eZvsH;0M=BpEUBx#u(<|UD7tsw%d-wbO0GqJo z|Dhb|;P?01nGW8;W$hZY6`aAUSee=502w?zI#3^x>(M2SS1RqR+^=4InpHh)u72aT zOKX3)H*aT<2pZ4-NCYc4GO2QxAMyBN`T@K!Qvp%toBSBTeBm7){zACoVW0isM|BVT zIvOYKd!6J!u^WfZd}^orahl5f`_p%CRS$y7)eDciN%=PJ3HBgFZwqVJ2<%jlwk84q z&ok6#0U#X!a6Dc=V~*u|5fA?@t zi%#(w=?X@5r3(u<tGoyM5hy6!465hfj}oTM&x^aP|%w$uqS_< zU7yo){a@)F#Wiqeq3=spy4I#Z&zX#EV}RsOt&a{=#9Cx^a7UZ za%U$wm{BD&t^`meG=xAT?1ED---&+u6BP*+E+>BAxNS8Ld`_4jy#O$%gC*C*1WKJT z7x8qO$j

cy;Z$?bTiqzs$-K?LU7urA3A_j5h;7+EQMk7u^*7|ENW% z(;sjr8t{96%KL?eY;ISa0_;Sx%62NE8W3|FVP{C+K=~-kI&Tb@uo37VG_QXK>%^?> z3!M#e-ojlvPCoR9CaBgAMMW{d*c8#`R0eIPMS&rB!_K>oy;`oC7xA+fVK$q=CZ?WK zs6Nn=5^M8>tLcXwWd44}hA%RH4}0^6*&3(mCo(tsEl|R^Zl^OcT8$WigiotiGQQ{+ zD{6M6f^1}y+vQwouO<@jXDokIXXym0=FJT{?^75)}8U$GlJeCENK-<1wUwJ zJz9W4WsuG3HOn)+SZ0|Pd5%4Fdc`qI(npgPn56<{se!4L{IycON+;EN&a@_0v^x6Q zi|eW}J{7G4cO;dZiZ*|nwZY7hHZyTpq)MukerZjq3yF{t*tf-`sTII|9{@%4hREWA4)52y{-9x)vAfkUv6wDar2gzuzr5<>f zuR1^XN5$FXTqxX9SalZddh@@k^A@xM z&Z^-utg3qRm*^p?hEY8F2P}3pNuif?frkF@ku1$9sE)$dK#*;4nte&#AU}UQb)pLU zDXjEETdQv7gF%p zt#lqKtj*P`>XgFmk-)RMZH#wz%~F<3h_?1BUtx)bRVFY|#Q{ExvfK(kANI=-rVds>DCLMxnVDO=%F`?rS z$lvK|@ezOR(I+CJ(PVg&qg$}B7(p)m zY$~_G|vTe_N+L!BEg~^&U3Wli|N>HjnWPxVqmCe(_kjh zTx67bGk=^=y|Z&*-KS#4=9Q^8MPuTrfCP#`H5bSSC4t1x@d_$o37yj*tRY~jp(*$( zGirYha`rg-oLY%dpAPSH7AX*K zjZ^x{V}RJ+mh^!>4yuW8Mf(=vpqJ=yR36M&1$qV7+SesTUk2Jq!f0D*fSPR z?beejBZpe8ImLU^+hR!hR3@+D4z+}0r2{C^ey3o%aG)5&qaj9GiO+%TjSvac~RB@qXR~e9~8F5^!u{L z9u{3eH|=4Kr6_kzU$QG0OmOc_o&bVZEg2C4USnQ(SEajs-SbACQ9VXo&sS%(UmGI6 zNrRv6@ESQ_xvdrtWErd(_iBGI+IDkkAQ_ZGi-=yecjl=@h3}(o*MX(Vyb zomQe}3u4WCwR-$+_~P)eAJn3S8^iEY2M`m}ZT7kb;&Noo`eWmE&s=#ZQkw$rg#uZ0 z;}{b9(a{1%_0CzjP0e~1hsJ4h+(8XAK6~=2JKmy+xxcsSE8B)~p?-h(6Y~eH= z=Q)g|!{l?gbvl<@m}5)r+KW|DZpEl|j8`6TR8`3fShB>s>bVY9H6gq+(RCy4C=V6VrPzmbK40rqsE2qyobnuBNxPL@-P8w?jZvW zPouSuLLtNh&+p>J`(1y1VQ|OV^5YX2y?hkW7-6S&dYDoVoi4_viz#UXo9*LI>to#B z$5h17$CUfXFRjEqksJ@y`pUF88nL5jSKrvK>Q%Zh}t3Os)jIUb7RkuJSvv2rfH zRlTqsALaDABYJqGkBXx@a{!T^zEMjxqpQ>(jURHqdY7n}UH5dzB9|d>W&XNyIa{v^ z-4a(!ORdL$=WW>BfxdL&$+aOcbN(j&Y??<`?E;9qi@10VsVBt0kWnT-c5*dr1xrlq zTHXB{E-e(W&hdW&6;Ob@d4(T8ym^0m{0ZMO{B(-XAbiB?G#@tdFFp=6~Nau0EM*yz%${`BLJ|y z*qa1qQ=6hOIy7`^Q&%>1hVFDL-FS!6$x1)43wH^+Z2JlO5YXpmY(BsT;mmt1_#B*m zlf`{EQ1dnp-XSCSSAqKhd|Wp=;<&89IPJEg+Sk68AnAwIV6#6{Zyu^2_=Eq>waZfd z{2T&}e?EVs*~WyP5JbO?qy;YULRJVUIEH`2NtZ5YX96!|ZS<;(;n8E5q{kpKX0NMD zx_uIyedR&PY1=ul{32z#cZz?1i>OnxU50CYqHL$l5-JT#<>N3&(E%k4O0nb^l=2rF zVwSlcKB*Q#r-Y>N4Nx3##1gus8QEvTK1pFcSHpiUjT;qelb}q?ULK-&G56E6=v?IJ zv@}KWIMPsj2{T4_i$-9EzHgBwLI%JJ)Hn`>X(@dPdhU=$tgffDWB~Z{U@FlcQPZ8* zAW*~NPaF{B;*Zy=4BlxgRZl+bW-0Fvd`DJ!E-6ddF3wztsX;w#JI>t>=$;$jmqWcp zR1AN>l6aYl*N7Koro+6*a^<$&z!dk|t<=v@h=P(7gbf-yi3tCc9OIyL?U24fq1hr% ziR@cQkVM@q2Zdw}g{0%+iFh(REz6CLo;2%Od0Mb>Ol<3&^$sPQSX+8ZL$-dJe5j^D zOHHJh>x{6ARri|t{I*{7Y2W}W_hGuqN=1LAN-K1#tktNpR%K(YY6l1CJ%JpX&>-*u zWBo#a7tvdWJPXXb<73cm`euRcj+*66xV=$5Y=|l&;z@yLjjSW!ZpUZmz)oDRLq`rk z+3|alVSAA>UGWCKzw62IVAvb@L!IcWmzg7cE3tIJLUm+aOAWfwFzXVqSil!pl%jtj zH+|i-*l?It=q^9zyLn~d6_H5cPuH{S5rRF8^LI=02E)dw<_D~e<0s=ES@v8&_bSue zbx?rHd-x=g(l0=pkv$6sdf$0eh~hw?8?)k23;?LbNPA93Qa0uvukeSsNhtb9_~X)e zI%*VR&_jdlK`#OR;$R?qUsFaVkm!Hfr@9YxyZCk@M*y)ACa|*u!$y)j#s`^)URon8 zZM%@unOy;h0r)^Qs=WY_Q&D0c-9;;#R>X1M5F)OGybeM4RRN~fZixcRAgI*PsMYcB z>f(?GiApn@L3E%Kn{9M;674s35^-1T|dP+aaVut3j47- z5HPHXfeDb>iG~!@hlvkO;M3mdxo~xeP@3?2kM;qW`PfsC)H_`b`q0B6)1|e0cYQ%D zQGtp`ts)AdKe((Y8`%sv`cJGS9Fcl3@DijRjDi_WQ89I%jGZ zLG}?pfHL`Auh^aA2Psi8iU&$TF|#^l<7AlO3zxNlID_YbqH;QEJwX}|{s|={mw^(0 z_}+=n8^@@15;SpqgI-0`%Y#xtBh8@@YkNb_8pkI5VO0v?&T}UNMj^*xqTXkzL)iJ&G=rq>y^EIzb(xxcg4PcFc_m6=x#ae!LQfTC4geD z=^fsOn%vN6kCM8BC$tLfVzbaB#8Rn!Y&U(Z-3={!s_oqp`~Q^Y^}uZpb_rlUv7V3g zp}iMa)xg&|o(P5(P*`weB!eM0Wgp*=7mi(IJu-YTnmsCIMX-N@-(~hCm}30@+JISmFfZ620+LhP zP>1!@`dxzE0(yUQhfeX9!|-`f48sAczs};T+KG4(0xAZJa0#cJMOX;A=k4znK41Pv z_-OcGuSBnl>-IGP6O#EwHLRsC>iR=)ycNtpy*!a016u`!ICddno5_ z_yXGXgDV7LHXMXs_XjV&0VwW=FaG}g?=7J8@2_*0*n^7=RxK! zuHqhiY?yGh%x&H-=6!s@d%A@}w@@goHH+V-b}^OF_u_%YHt1dGT?jF6BZ?0EgYel` z&%Sy-{yKc|)jpH{@*wI*p2YTbNC-S5PtmvbNsyz|5tK+Gl2go$KRhp9yjUl zP?ih-{hNR1kk}6BgYX5y<3eqhFuNte!474gD0w%0VJ@uh*cIMT2LHW^ro%XRwYrQa z!yJPsc!FQ_V-N)=WcU^w-z>A?b%1`3hRfg>?}j1!B6x|ef3E_3Vtyir7i)*fkS$z9 zl0|SZ*dsfTxAfgEytL9tEV20>6xlJVY=rJWv!Z|akjGbXO1F(pSX5F`SdpbzvCFqe zh{Gr+9gL8eJji0SRO@?f9r8=URNu+j0EKILfD=KZxjh zwOFCSgmumS6pY8g{r5_)Havz>z0$K9=X*czjnDq?&wJKxNd*dpLG_*kt15!XSIl;a4VlgALLVS4d8lI4vi3KCRQ0 z0C&-R8J$@6Re@JCbyFPkyoAyHrILRE8@yS^Kw482mI5k`)BE529y7jNi%Y>#e8{!1 z%0A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 AsQ>@~ diff --git a/build/kissy/hilo/core/Class.js b/build/kissy/hilo/core/Class.js index b147ec37..6d736da6 100644 --- a/build/kissy/hilo/core/Class.js +++ b/build/kissy/hilo/core/Class.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/core/Class.min.js b/build/kissy/hilo/core/Class.min.js index 9a0defa1..1f441e34 100644 --- a/build/kissy/hilo/core/Class.min.js +++ b/build/kissy/hilo/core/Class.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/core/Hilo.js b/build/kissy/hilo/core/Hilo.js index 62763ed9..6e010376 100644 --- a/build/kissy/hilo/core/Hilo.js +++ b/build/kissy/hilo/core/Hilo.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -25,7 +25,7 @@ var Hilo = { * Hilo version * @type String */ - version:'1.1.4', + version:'1.1.5', /** * @language=en * Gets a globally unique id. Such as Stage1, Bitmap2 etc. diff --git a/build/kissy/hilo/core/Hilo.min.js b/build/kissy/hilo/core/Hilo.min.js index d3d8d9f2..115f34cd 100644 --- a/build/kissy/hilo/core/Hilo.min.js +++ b/build/kissy/hilo/core/Hilo.min.js @@ -1,6 +1,6 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ -KISSY.add("hilo/core/Hilo",function(t,e,o){var a=window,r=document,n=r.documentElement,i=0,s={},c={version:"1.1.4",getUid:function(t){var e=++i;if(t){var o=t.charCodeAt(t.length-1);return o>=48&&o<=57&&(t+="_"),t+e}return e},viewToString:function(t){for(var e,o=t;o;)e=e?o.id+"."+e:o.id,o=o.parent;return e},copy:function(t,e,a){return o.copy(t,e,a),s.copy||(s.copy=!0,console.warn("Hilo.copy has been Deprecated! Use Hilo.util.copy instead.")),t},browser:e,event:function(){var t="ontouchstart"in a;return{POINTER_START:t?"touchstart":"mousedown",POINTER_MOVE:t?"touchmove":"mousemove",POINTER_END:t?"touchend":"mouseup"}}(),align:{TOP_LEFT:"TL",TOP:"T",TOP_RIGHT:"TR",LEFT:"L",CENTER:"C",RIGHT:"R",BOTTOM_LEFT:"BL",BOTTOM:"B",BOTTOM_RIGHT:"BR"},getElementRect:function(t){var e;try{e=t.getBoundingClientRect()}catch(o){e={top:t.offsetTop,left:t.offsetLeft,right:t.offsetLeft+t.offsetWidth,bottom:t.offsetTop+t.offsetHeight}}var r=(a.pageXOffset||n.scrollLeft)-(n.clientLeft||0)||0,i=(a.pageYOffset||n.scrollTop)-(n.clientTop||0)||0,s=a.getComputedStyle?getComputedStyle(t):t.currentStyle,c=parseInt,h=c(s.paddingLeft)+c(s.borderLeftWidth)||0,d=c(s.paddingTop)+c(s.borderTopWidth)||0,f=c(s.paddingRight)+c(s.borderRightWidth)||0,l=c(s.paddingBottom)+c(s.borderBottomWidth)||0,g=e.top||0,p=e.left||0,u=e.right||0,m=e.bottom||0;return{left:p+r+h,top:g+i+d,width:u-f-p-h,height:m-l-g-d}},createElement:function(t,e){var o,a,n,i=r.createElement(t);for(o in e)if(a=e[o],"style"===o)for(n in a)i.style[n]=a[n];else i[o]=a;return i},getElement:function(t){return r.getElementById(t)},setElementStyleByView:function(t){var e=t.drawable,o=e.domElement.style,a=t._stateCache||(t._stateCache={}),r=c.browser.jsVendor,n="px",i=!1;if(this.cacheStateIfChanged(t,["visible"],a)&&(o.display=t.visible?"":"none"),this.cacheStateIfChanged(t,["alpha"],a)&&(o.opacity=t.alpha),t.visible&&!(t.alpha<=0)){this.cacheStateIfChanged(t,["width"],a)&&(o.width=t.width+n),this.cacheStateIfChanged(t,["height"],a)&&(o.height=t.height+n),this.cacheStateIfChanged(t,["depth"],a)&&(o.zIndex=t.depth+1),(i=this.cacheStateIfChanged(t,["pivotX","pivotY"],a))&&(o[r+"TransformOrigin"]=t.pivotX+n+" "+t.pivotY+n),(this.cacheStateIfChanged(t,["x","y","rotation","scaleX","scaleY"],a)||i)&&(o[r+"Transform"]=this.getTransformCSS(t)),this.cacheStateIfChanged(t,["background"],a)&&(o.backgroundColor=t.background),o.pointerEvents||(o.pointerEvents="none");var s=e.image;if(s){var h=s.src;h!==a.image&&(a.image=h,o.backgroundImage="url("+h+")");var d=e.rect;if(d){var f=d[0],l=d[1];f!==a.sx&&(a.sx=f,o.backgroundPositionX=-f+n),l!==a.sy&&(a.sy=l,o.backgroundPositionY=-l+n)}}var g=t.mask;if(g){var p=g.drawable.domElement.style.backgroundImage;p!==a.maskImage&&(a.maskImage=p,o[r+"MaskImage"]=p,o[r+"MaskRepeat"]="no-repeat");var u=g.x,m=g.y;u===a.maskX&&m===a.maskY||(a.maskX=u,a.maskY=m,o[r+"MaskPosition"]=u+n+" "+m+n)}}},cacheStateIfChanged:function(t,e,o){var a,r,n,i,s=!1;for(a=0,r=e.length;a=48&&o<=57&&(t+="_"),t+e}return e},viewToString:function(t){for(var e,o=t;o;)e=e?o.id+"."+e:o.id,o=o.parent;return e},copy:function(t,e,a){return o.copy(t,e,a),s.copy||(s.copy=!0,console.warn("Hilo.copy has been Deprecated! Use Hilo.util.copy instead.")),t},browser:e,event:function(){var t="ontouchstart"in a;return{POINTER_START:t?"touchstart":"mousedown",POINTER_MOVE:t?"touchmove":"mousemove",POINTER_END:t?"touchend":"mouseup"}}(),align:{TOP_LEFT:"TL",TOP:"T",TOP_RIGHT:"TR",LEFT:"L",CENTER:"C",RIGHT:"R",BOTTOM_LEFT:"BL",BOTTOM:"B",BOTTOM_RIGHT:"BR"},getElementRect:function(t){var e;try{e=t.getBoundingClientRect()}catch(o){e={top:t.offsetTop,left:t.offsetLeft,right:t.offsetLeft+t.offsetWidth,bottom:t.offsetTop+t.offsetHeight}}var r=(a.pageXOffset||n.scrollLeft)-(n.clientLeft||0)||0,i=(a.pageYOffset||n.scrollTop)-(n.clientTop||0)||0,s=a.getComputedStyle?getComputedStyle(t):t.currentStyle,c=parseInt,h=c(s.paddingLeft)+c(s.borderLeftWidth)||0,d=c(s.paddingTop)+c(s.borderTopWidth)||0,f=c(s.paddingRight)+c(s.borderRightWidth)||0,l=c(s.paddingBottom)+c(s.borderBottomWidth)||0,g=e.top||0,p=e.left||0,u=e.right||0,m=e.bottom||0;return{left:p+r+h,top:g+i+d,width:u-f-p-h,height:m-l-g-d}},createElement:function(t,e){var o,a,n,i=r.createElement(t);for(o in e)if(a=e[o],"style"===o)for(n in a)i.style[n]=a[n];else i[o]=a;return i},getElement:function(t){return r.getElementById(t)},setElementStyleByView:function(t){var e=t.drawable,o=e.domElement.style,a=t._stateCache||(t._stateCache={}),r=c.browser.jsVendor,n="px",i=!1;if(this.cacheStateIfChanged(t,["visible"],a)&&(o.display=t.visible?"":"none"),this.cacheStateIfChanged(t,["alpha"],a)&&(o.opacity=t.alpha),t.visible&&!(t.alpha<=0)){this.cacheStateIfChanged(t,["width"],a)&&(o.width=t.width+n),this.cacheStateIfChanged(t,["height"],a)&&(o.height=t.height+n),this.cacheStateIfChanged(t,["depth"],a)&&(o.zIndex=t.depth+1),(i=this.cacheStateIfChanged(t,["pivotX","pivotY"],a))&&(o[r+"TransformOrigin"]=t.pivotX+n+" "+t.pivotY+n),(this.cacheStateIfChanged(t,["x","y","rotation","scaleX","scaleY"],a)||i)&&(o[r+"Transform"]=this.getTransformCSS(t)),this.cacheStateIfChanged(t,["background"],a)&&(o.backgroundColor=t.background),o.pointerEvents||(o.pointerEvents="none");var s=e.image;if(s){var h=s.src;h!==a.image&&(a.image=h,o.backgroundImage="url("+h+")");var d=e.rect;if(d){var f=d[0],l=d[1];f!==a.sx&&(a.sx=f,o.backgroundPositionX=-f+n),l!==a.sy&&(a.sy=l,o.backgroundPositionY=-l+n)}}var g=t.mask;if(g){var p=g.drawable.domElement.style.backgroundImage;p!==a.maskImage&&(a.maskImage=p,o[r+"MaskImage"]=p,o[r+"MaskRepeat"]="no-repeat");var u=g.x,m=g.y;u===a.maskX&&m===a.maskY||(a.maskX=u,a.maskY=m,o[r+"MaskPosition"]=u+n+" "+m+n)}}},cacheStateIfChanged:function(t,e,o){var a,r,n,i,s=!1;for(a=0,r=e.length;a> 1; - y = 0; - break; - case 'TR': - x = pw - w; - y = 0; - break; - case 'L': - x = 0; - y = ph - h >> 1; - break; - case 'C': - x = pw - w >> 1; - y = ph - h >> 1; - break; - case 'R': - x = pw - w; - y = ph - h >> 1; - break; - case 'BL': - x = 0; - y = ph - h; - break; - case 'B': - x = pw - w >> 1; - y = ph - h; - break; - case 'BR': - x = pw - w; - y = ph - h; - break; - } - } - } + var pos = target.getAlignPosition(); + x = pos.x; + y = pos.y; } if(x != 0 || y != 0) ctx.translate(x, y); diff --git a/build/kissy/hilo/renderer/CanvasRenderer.min.js b/build/kissy/hilo/renderer/CanvasRenderer.min.js index 00d54cfe..c7058421 100644 --- a/build/kissy/hilo/renderer/CanvasRenderer.min.js +++ b/build/kissy/hilo/renderer/CanvasRenderer.min.js @@ -1,6 +1,6 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ -KISSY.add("hilo/renderer/CanvasRenderer",function(e,t,a,r){var i=t.create({Extends:r,constructor:function(e){i.superclass.constructor.call(this,e),this.context=this.canvas.getContext("2d")},renderType:"canvas",context:null,startDraw:function(e){return!!(e.visible&&e.alpha>0)&&(e===this.stage&&this.context.clearRect(0,0,e.width,e.height),e.blendMode!==this.blendMode&&(this.context.globalCompositeOperation=this.blendMode=e.blendMode),this.context.save(),!0)},draw:function(e){var t=this.context,a=e.width,r=e.height,i=e.background;i&&(t.fillStyle=i,t.fillRect(0,0,a,r));var s=e.drawable,n=s&&s.image;if(n){var c=s.rect,h=c[2],l=c[3],o=c[4],d=c[5];if(!h||!l)return;a||r||(a=e.width=h,r=e.height=l),(o||d)&&t.translate(o-.5*h,d-.5*l),t.drawImage(n,c[0],c[1],h,l,0,0,a,r)}},endDraw:function(e){this.context.restore()},transform:function(e){var t=e.drawable;if(t&&t.domElement)return void a.setElementStyleByView(e);var r=this.context,i=e.scaleX,s=e.scaleY;if(e===this.stage){var n=this.canvas.style,c=e._scaleX,h=e._scaleY,l=!1;(!c&&1!=i||c&&c!=i)&&(e._scaleX=i,n.width=i*e.width+"px",l=!0),(!h&&1!=s||h&&h!=s)&&(e._scaleY=s,n.height=s*e.height+"px",l=!0),l&&e.updateViewport()}else{var o=e.x,d=e.y,v=e.pivotX,f=e.pivotY,g=e.rotation%360,u=e.mask;u&&(u._render(this),r.clip());var p=e.align;if(p)if("function"==typeof p)e.align();else{var w=e.parent;if(w){var b=e.width,x=e.height,m=w.width,k=w.height;switch(p){case"TL":o=0,d=0;break;case"T":o=m-b>>1,d=0;break;case"TR":o=m-b,d=0;break;case"L":o=0,d=k-x>>1;break;case"C":o=m-b>>1,d=k-x>>1;break;case"R":o=m-b,d=k-x>>1;break;case"BL":o=0,d=k-x;break;case"B":o=m-b>>1,d=k-x;break;case"BR":o=m-b,d=k-x}}}0==o&&0==d||r.translate(o,d),0!=g&&r.rotate(g*Math.PI/180),1==i&&1==s||r.scale(i,s),0==v&&0==f||r.translate(-v,-f)}e.alpha>0&&(r.globalAlpha*=e.alpha)},remove:function(e){var t=e.drawable,a=t&&t.domElement;if(a){var r=a.parentNode;r&&r.removeChild(a)}},clear:function(e,t,a,r){this.context.clearRect(e,t,a,r)},resize:function(e,t){var a=this.canvas,r=this.stage,i=a.style;a.width=e,a.height=t,i.width=r.width*r.scaleX+"px",i.height=r.height*r.scaleY+"px"}});return i},{requires:["hilo/core/Class","hilo/core/Hilo","hilo/renderer/Renderer"]}); \ No newline at end of file +KISSY.add("hilo/renderer/CanvasRenderer",function(e,t,a,i){var r=t.create({Extends:i,constructor:function(e){r.superclass.constructor.call(this,e),this.context=this.canvas.getContext("2d")},renderType:"canvas",context:null,startDraw:function(e){return!!(e.visible&&e.alpha>0)&&(e===this.stage&&this.context.clearRect(0,0,e.width,e.height),e.blendMode!==this.blendMode&&(this.context.globalCompositeOperation=this.blendMode=e.blendMode),this.context.save(),!0)},draw:function(e){var t=this.context,a=e.width,i=e.height,r=e.background;r&&(t.fillStyle=r,t.fillRect(0,0,a,i));var n=e.drawable,s=n&&n.image;if(s){var l=n.rect,o=l[2],h=l[3],c=l[4],d=l[5];if(!o||!h)return;a||i||(a=e.width=o,i=e.height=h),(c||d)&&t.translate(c-.5*o,d-.5*h),t.drawImage(s,l[0],l[1],o,h,0,0,a,i)}},endDraw:function(e){this.context.restore()},transform:function(e){var t=e.drawable;if(t&&t.domElement)return void a.setElementStyleByView(e);var i=this.context,r=e.scaleX,n=e.scaleY;if(e===this.stage){var s=this.canvas.style,l=e._scaleX,o=e._scaleY,h=!1;(!l&&1!=r||l&&l!=r)&&(e._scaleX=r,s.width=r*e.width+"px",h=!0),(!o&&1!=n||o&&o!=n)&&(e._scaleY=n,s.height=n*e.height+"px",h=!0),h&&e.updateViewport()}else{var c=e.x,d=e.y,v=e.pivotX,g=e.pivotY,u=e.rotation%360,f=e.mask;f&&(f._render(this),i.clip());var p=e.align;if(p){var w=e.getAlignPosition();c=w.x,d=w.y}0==c&&0==d||i.translate(c,d),0!=u&&i.rotate(u*Math.PI/180),1==r&&1==n||i.scale(r,n),0==v&&0==g||i.translate(-v,-g)}e.alpha>0&&(i.globalAlpha*=e.alpha)},remove:function(e){var t=e.drawable,a=t&&t.domElement;if(a){var i=a.parentNode;i&&i.removeChild(a)}},clear:function(e,t,a,i){this.context.clearRect(e,t,a,i)},resize:function(e,t){var a=this.canvas,i=this.stage,r=a.style;a.width=e,a.height=t,r.width=i.width*i.scaleX+"px",r.height=i.height*i.scaleY+"px"}});return r},{requires:["hilo/core/Class","hilo/core/Hilo","hilo/renderer/Renderer"]}); \ No newline at end of file diff --git a/build/kissy/hilo/renderer/DOMRenderer.js b/build/kissy/hilo/renderer/DOMRenderer.js index e4b358bb..a56fc0ba 100644 --- a/build/kissy/hilo/renderer/DOMRenderer.js +++ b/build/kissy/hilo/renderer/DOMRenderer.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/renderer/DOMRenderer.min.js b/build/kissy/hilo/renderer/DOMRenderer.min.js index 6772705e..5c237dbf 100644 --- a/build/kissy/hilo/renderer/DOMRenderer.min.js +++ b/build/kissy/hilo/renderer/DOMRenderer.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/renderer/Renderer.js b/build/kissy/hilo/renderer/Renderer.js index 6f216a2c..1c4a1fac 100644 --- a/build/kissy/hilo/renderer/Renderer.js +++ b/build/kissy/hilo/renderer/Renderer.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/renderer/Renderer.min.js b/build/kissy/hilo/renderer/Renderer.min.js index 58a9ab91..718cec06 100644 --- a/build/kissy/hilo/renderer/Renderer.min.js +++ b/build/kissy/hilo/renderer/Renderer.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/renderer/WebGLRenderer.js b/build/kissy/hilo/renderer/WebGLRenderer.js index 5d6d878a..c93eb6cf 100644 --- a/build/kissy/hilo/renderer/WebGLRenderer.js +++ b/build/kissy/hilo/renderer/WebGLRenderer.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -431,12 +431,13 @@ var WebGLRenderer = Class.create(/** @lends WebGLRenderer.prototype */{ sin = Math.sin(r); } + var pos = view.getAlignPosition(); mtx.a = cos*scaleX; mtx.b = sin*scaleX; mtx.c = -sin*scaleY; mtx.d = cos*scaleY; - mtx.tx = view.x - mtx.a * pivotX - mtx.c * pivotY; - mtx.ty = view.y - mtx.b * pivotX - mtx.d * pivotY; + mtx.tx = pos.x - mtx.a * pivotX - mtx.c * pivotY; + mtx.ty = pos.y - mtx.b * pivotX - mtx.d * pivotY; mtx.concat(ancestor.__webglWorldMatrix); }, diff --git a/build/kissy/hilo/renderer/WebGLRenderer.min.js b/build/kissy/hilo/renderer/WebGLRenderer.min.js index 25526d9c..39d969ba 100644 --- a/build/kissy/hilo/renderer/WebGLRenderer.min.js +++ b/build/kissy/hilo/renderer/WebGLRenderer.min.js @@ -1,6 +1,6 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ -KISSY.add("hilo/renderer/WebGLRenderer",function(t,e,r,i,a){var n=Math.PI/180,s=e.create({Extends:i,Statics:{MAX_BATCH_NUM:2e3,ATTRIBUTE_NUM:5,isSupport:function(){if(void 0==this._isSupported){var t=document.createElement("canvas");t.getContext&&(t.getContext("webgl")||t.getContext("experimental-webgl"))?this._isSupported=!0:this._isSupported=!1}return this._isSupported}},renderType:"webgl",gl:null,_isContextLost:!1,_cacheTexture:{},constructor:function(t){s.superclass.constructor.call(this,t);var e=this;this.gl=this.canvas.getContext("webgl")||this.canvas.getContext("experimental-webgl"),this.maxBatchNum=s.MAX_BATCH_NUM,this.positionStride=4*s.ATTRIBUTE_NUM;var r=this.maxBatchNum*s.ATTRIBUTE_NUM*4,i=6*this.maxBatchNum;this.arrayBuffer=new ArrayBuffer(4*r),this.float32Array=new Float32Array(this.arrayBuffer),this.uint32Array=new Uint32Array(this.arrayBuffer),this.indexs=new Uint16Array(i);for(var a=0,n=0;a0)&&(t===this.stage&&this.clear(),!0)},draw:function(t){var e=t.width,r=t.height,i=(t.background,t.drawable),a=i&&i.image;if(a){var n=i.rect,s=n[2],o=n[3];e||r||(e=t.width=s,r=t.height=o),this.batchIndex>=this.maxBatchNum&&this._renderBatches();var h=this._createVertexs(a,n[0],n[1],s,o,0,0,e,r),_=this.batchIndex*this.positionStride,c=this.float32Array,d=this.uint32Array,l=(t.tint>>16)+(65280&t.tint)+((255&t.tint)<<16)+(255*t.__webglRenderAlpha<<24);c[_+0]=h[0],c[_+1]=h[1],c[_+2]=h[2],c[_+3]=h[3],d[_+4]=l,c[_+5]=h[4],c[_+6]=h[5],c[_+7]=h[6],c[_+8]=h[7],d[_+9]=l,c[_+10]=h[8],c[_+11]=h[9],c[_+12]=h[10],c[_+13]=h[11],d[_+14]=l,c[_+15]=h[12],c[_+16]=h[13],c[_+17]=h[14],c[_+18]=h[15],d[_+19]=l;for(var u=t.__webglWorldMatrix,f=0;f<4;f++){var g=c[_+5*f],T=c[_+5*f+1];c[_+5*f]=u.a*g+u.c*T+u.tx,c[_+5*f+1]=u.b*g+u.d*T+u.ty}t.__textureImage=a,this.sprites[this.batchIndex++]=t}},endDraw:function(t){t===this.stage&&this._renderBatches()},transform:function(t){var e=t.drawable;if(e&&e.domElement)return void r.setElementStyleByView(t);var i=t.scaleX,n=t.scaleY;if(t===this.stage){var s=this.canvas.style,o=t._scaleX,h=t._scaleY,_=!1;(!o&&1!=i||o&&o!=i)&&(t._scaleX=i,s.width=i*t.width+"px",_=!0),(!h&&1!=n||h&&h!=n)&&(t._scaleY=n,s.height=n*t.height+"px",_=!0),_&&t.updateViewport(),t.__webglWorldMatrix=t.__webglWorldMatrix||new a(1,0,0,1,0,0)}else t.parent&&(t.__webglWorldMatrix=t.__webglWorldMatrix||new a(1,0,0,1,0,0),this._setConcatenatedMatrix(t,t.parent));t.alpha>0&&(t.parent&&t.parent.__webglRenderAlpha?t.__webglRenderAlpha=t.alpha*t.parent.__webglRenderAlpha:t.__webglRenderAlpha=t.alpha)},remove:function(t){var e=t.drawable,r=e&&e.domElement;if(r){var i=r.parentNode;i&&i.removeChild(r)}},clear:function(t,e,r,i){this.gl.clear(this.gl.COLOR_BUFFER_BIT)},resize:function(t,e){if(this.width!==t||this.height!==e){var r=this.canvas,i=this.stage,a=r.style;this.width=r.width=t,this.height=r.height=e,a.width=i.width*i.scaleX+"px",a.height=i.height*i.scaleY+"px",this.gl.viewport(0,0,t,e),this.canvasHalfWidth=.5*t,this.canvasHalfHeight=.5*e,this._uploadProjectionTransform(!0)}},_renderBatches:function(){var t=this.gl;t.bufferSubData(t.ARRAY_BUFFER,0,this.uint32Array.subarray(0,this.batchIndex*this.positionStride));for(var e=0,r=0,i=null,a=0;a0&&(r.bindTexture(r.TEXTURE_2D,this._getTexture(this.sprites[t])),r.drawElements(r.TRIANGLES,6*i,r.UNSIGNED_SHORT,6*t*2))},_uploadProjectionTransform:function(t){this._projectionTransformElements&&!t||(this._projectionTransformElements=new Float32Array([1/this.canvasHalfWidth,0,0,0,-1/this.canvasHalfHeight,0,-1,1,1])),this.gl.uniformMatrix3fv(this.u_projectionTransform,!1,this._projectionTransformElements)},_initShaders:function(){var t=" attribute vec2 a_position;\n attribute vec2 a_TexCoord;\n attribute vec4 a_tint;\n uniform mat3 u_projectionTransform;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_Position = vec4((u_projectionTransform * vec3(a_position, 1.0)).xy, 1.0, 1.0);\n v_TexCoord = a_TexCoord;\n v_tint = vec4(a_tint.rgb * a_tint.a, a_tint.a);\n }\n ",e="\n precision mediump float;\n uniform sampler2D u_Sampler;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_FragColor = texture2D(u_Sampler, v_TexCoord) * v_tint;\n }\n ";this.defaultShader=new o(this,{v:t,f:e},{attributes:["a_position","a_TexCoord","a_tint"],uniforms:["u_projectionTransform","u_Sampler"]})},_createVertexs:function(t,e,r,i,a,n,s,o,h){var _=this.__tempVertexs||[],c=t.width,d=t.height;i/=c,a/=d,e/=c,r/=d,o=o,h=h,n=n,s=s,i+e>1&&(i=1-e),a+r>1&&(a=1-r);var l=0;return _[l++]=n,_[l++]=s,_[l++]=e,_[l++]=r,_[l++]=n+o,_[l++]=s,_[l++]=e+i,_[l++]=r,_[l++]=n,_[l++]=s+h,_[l++]=e,_[l++]=r+a,_[l++]=n+o,_[l++]=s+h,_[l++]=e+i,_[l++]=r+a,_},_setConcatenatedMatrix:function(t,e){var r=t.__webglWorldMatrix,i=1,a=0,s=t.rotation%360,o=t.pivotX,h=t.pivotY,_=t.scaleX,c=t.scaleY;if(s){var d=s*n;i=Math.cos(d),a=Math.sin(d)}r.a=i*_,r.b=a*_,r.c=-a*c,r.d=i*c,r.tx=t.x-r.a*o-r.c*h,r.ty=t.y-r.b*o-r.d*h,r.concat(e.__webglWorldMatrix)},_getTexture:function(t){var e=t.__textureImage,r=this._cacheTexture[e.src];return r||(r=this.activeShader.uploadTexture(e)),r}}),o=function(t,e,r){this.renderer=t,this.gl=t.gl,this.program=this._createProgram(this.gl,e.v,e.f),r=r||{},this.attributes=r.attributes||[],this.uniforms=r.uniforms||[]};return o.prototype={active:function(){var t=this,e=t.renderer,r=t.gl,i=t.program;i&&r&&(e.activeShader=t,r.useProgram(i),t.attributes.forEach(function(t){e[t]=r.getAttribLocation(i,t),r.enableVertexAttribArray(e[t])}),t.uniforms.forEach(function(t){e[t]=r.getUniformLocation(i,t)}),t.width===e.width&&t.height===e.height||(t.width=e.width,t.height=e.height,e._uploadProjectionTransform()))},uploadTexture:function(t){var e=this.gl,r=this.renderer,i=e.createTexture(),a=r.u_Sampler;return e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,i),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,1),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.uniform1i(a,0),e.bindTexture(e.TEXTURE_2D,null),this.renderer._cacheTexture[t.src]=i,i},_createProgram:function(t,e,r){var i=this._createShader(t,t.VERTEX_SHADER,e),a=this._createShader(t,t.FRAGMENT_SHADER,r);if(!i||!a)return null;var n=t.createProgram();if(n){t.attachShader(n,i),t.attachShader(n,a),t.linkProgram(n),t.deleteShader(a),t.deleteShader(i);var s=t.getProgramParameter(n,t.LINK_STATUS);if(!s){var o=t.getProgramInfoLog(n);return console.log("Failed to link program: "+o),t.deleteProgram(n),null}}return n},_createShader:function(t,e,r){var i=t.createShader(e);if(i){t.shaderSource(i,r),t.compileShader(i);var a=t.getShaderParameter(i,t.COMPILE_STATUS);if(!a){var n=t.getShaderInfoLog(i);return console.log("Failed to compile shader: "+n),t.deleteShader(i),null}}return i}},s},{requires:["hilo/core/Class","hilo/core/Hilo","hilo/renderer/Renderer","hilo/geom/Matrix"]}); \ No newline at end of file +KISSY.add("hilo/renderer/WebGLRenderer",function(t,e,r,i,a){var n=Math.PI/180,s=e.create({Extends:i,Statics:{MAX_BATCH_NUM:2e3,ATTRIBUTE_NUM:5,isSupport:function(){if(void 0==this._isSupported){var t=document.createElement("canvas");t.getContext&&(t.getContext("webgl")||t.getContext("experimental-webgl"))?this._isSupported=!0:this._isSupported=!1}return this._isSupported}},renderType:"webgl",gl:null,_isContextLost:!1,_cacheTexture:{},constructor:function(t){s.superclass.constructor.call(this,t);var e=this;this.gl=this.canvas.getContext("webgl")||this.canvas.getContext("experimental-webgl"),this.maxBatchNum=s.MAX_BATCH_NUM,this.positionStride=4*s.ATTRIBUTE_NUM;var r=this.maxBatchNum*s.ATTRIBUTE_NUM*4,i=6*this.maxBatchNum;this.arrayBuffer=new ArrayBuffer(4*r),this.float32Array=new Float32Array(this.arrayBuffer),this.uint32Array=new Uint32Array(this.arrayBuffer),this.indexs=new Uint16Array(i);for(var a=0,n=0;a0)&&(t===this.stage&&this.clear(),!0)},draw:function(t){var e=t.width,r=t.height,i=(t.background,t.drawable),a=i&&i.image;if(a){var n=i.rect,s=n[2],o=n[3];e||r||(e=t.width=s,r=t.height=o),this.batchIndex>=this.maxBatchNum&&this._renderBatches();var h=this._createVertexs(a,n[0],n[1],s,o,0,0,e,r),_=this.batchIndex*this.positionStride,c=this.float32Array,d=this.uint32Array,l=(t.tint>>16)+(65280&t.tint)+((255&t.tint)<<16)+(255*t.__webglRenderAlpha<<24);c[_+0]=h[0],c[_+1]=h[1],c[_+2]=h[2],c[_+3]=h[3],d[_+4]=l,c[_+5]=h[4],c[_+6]=h[5],c[_+7]=h[6],c[_+8]=h[7],d[_+9]=l,c[_+10]=h[8],c[_+11]=h[9],c[_+12]=h[10],c[_+13]=h[11],d[_+14]=l,c[_+15]=h[12],c[_+16]=h[13],c[_+17]=h[14],c[_+18]=h[15],d[_+19]=l;for(var u=t.__webglWorldMatrix,f=0;f<4;f++){var g=c[_+5*f],T=c[_+5*f+1];c[_+5*f]=u.a*g+u.c*T+u.tx,c[_+5*f+1]=u.b*g+u.d*T+u.ty}t.__textureImage=a,this.sprites[this.batchIndex++]=t}},endDraw:function(t){t===this.stage&&this._renderBatches()},transform:function(t){var e=t.drawable;if(e&&e.domElement)return void r.setElementStyleByView(t);var i=t.scaleX,n=t.scaleY;if(t===this.stage){var s=this.canvas.style,o=t._scaleX,h=t._scaleY,_=!1;(!o&&1!=i||o&&o!=i)&&(t._scaleX=i,s.width=i*t.width+"px",_=!0),(!h&&1!=n||h&&h!=n)&&(t._scaleY=n,s.height=n*t.height+"px",_=!0),_&&t.updateViewport(),t.__webglWorldMatrix=t.__webglWorldMatrix||new a(1,0,0,1,0,0)}else t.parent&&(t.__webglWorldMatrix=t.__webglWorldMatrix||new a(1,0,0,1,0,0),this._setConcatenatedMatrix(t,t.parent));t.alpha>0&&(t.parent&&t.parent.__webglRenderAlpha?t.__webglRenderAlpha=t.alpha*t.parent.__webglRenderAlpha:t.__webglRenderAlpha=t.alpha)},remove:function(t){var e=t.drawable,r=e&&e.domElement;if(r){var i=r.parentNode;i&&i.removeChild(r)}},clear:function(t,e,r,i){this.gl.clear(this.gl.COLOR_BUFFER_BIT)},resize:function(t,e){if(this.width!==t||this.height!==e){var r=this.canvas,i=this.stage,a=r.style;this.width=r.width=t,this.height=r.height=e,a.width=i.width*i.scaleX+"px",a.height=i.height*i.scaleY+"px",this.gl.viewport(0,0,t,e),this.canvasHalfWidth=.5*t,this.canvasHalfHeight=.5*e,this._uploadProjectionTransform(!0)}},_renderBatches:function(){var t=this.gl;t.bufferSubData(t.ARRAY_BUFFER,0,this.uint32Array.subarray(0,this.batchIndex*this.positionStride));for(var e=0,r=0,i=null,a=0;a0&&(r.bindTexture(r.TEXTURE_2D,this._getTexture(this.sprites[t])),r.drawElements(r.TRIANGLES,6*i,r.UNSIGNED_SHORT,6*t*2))},_uploadProjectionTransform:function(t){this._projectionTransformElements&&!t||(this._projectionTransformElements=new Float32Array([1/this.canvasHalfWidth,0,0,0,-1/this.canvasHalfHeight,0,-1,1,1])),this.gl.uniformMatrix3fv(this.u_projectionTransform,!1,this._projectionTransformElements)},_initShaders:function(){var t=" attribute vec2 a_position;\n attribute vec2 a_TexCoord;\n attribute vec4 a_tint;\n uniform mat3 u_projectionTransform;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_Position = vec4((u_projectionTransform * vec3(a_position, 1.0)).xy, 1.0, 1.0);\n v_TexCoord = a_TexCoord;\n v_tint = vec4(a_tint.rgb * a_tint.a, a_tint.a);\n }\n ",e="\n precision mediump float;\n uniform sampler2D u_Sampler;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_FragColor = texture2D(u_Sampler, v_TexCoord) * v_tint;\n }\n ";this.defaultShader=new o(this,{v:t,f:e},{attributes:["a_position","a_TexCoord","a_tint"],uniforms:["u_projectionTransform","u_Sampler"]})},_createVertexs:function(t,e,r,i,a,n,s,o,h){var _=this.__tempVertexs||[],c=t.width,d=t.height;i/=c,a/=d,e/=c,r/=d,o=o,h=h,n=n,s=s,i+e>1&&(i=1-e),a+r>1&&(a=1-r);var l=0;return _[l++]=n,_[l++]=s,_[l++]=e,_[l++]=r,_[l++]=n+o,_[l++]=s,_[l++]=e+i,_[l++]=r,_[l++]=n,_[l++]=s+h,_[l++]=e,_[l++]=r+a,_[l++]=n+o,_[l++]=s+h,_[l++]=e+i,_[l++]=r+a,_},_setConcatenatedMatrix:function(t,e){var r=t.__webglWorldMatrix,i=1,a=0,s=t.rotation%360,o=t.pivotX,h=t.pivotY,_=t.scaleX,c=t.scaleY;if(s){var d=s*n;i=Math.cos(d),a=Math.sin(d)}var l=t.getAlignPosition();r.a=i*_,r.b=a*_,r.c=-a*c,r.d=i*c,r.tx=l.x-r.a*o-r.c*h,r.ty=l.y-r.b*o-r.d*h,r.concat(e.__webglWorldMatrix)},_getTexture:function(t){var e=t.__textureImage,r=this._cacheTexture[e.src];return r||(r=this.activeShader.uploadTexture(e)),r}}),o=function(t,e,r){this.renderer=t,this.gl=t.gl,this.program=this._createProgram(this.gl,e.v,e.f),r=r||{},this.attributes=r.attributes||[],this.uniforms=r.uniforms||[]};return o.prototype={active:function(){var t=this,e=t.renderer,r=t.gl,i=t.program;i&&r&&(e.activeShader=t,r.useProgram(i),t.attributes.forEach(function(t){e[t]=r.getAttribLocation(i,t),r.enableVertexAttribArray(e[t])}),t.uniforms.forEach(function(t){e[t]=r.getUniformLocation(i,t)}),t.width===e.width&&t.height===e.height||(t.width=e.width,t.height=e.height,e._uploadProjectionTransform()))},uploadTexture:function(t){var e=this.gl,r=this.renderer,i=e.createTexture(),a=r.u_Sampler;return e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,i),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,1),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.uniform1i(a,0),e.bindTexture(e.TEXTURE_2D,null),this.renderer._cacheTexture[t.src]=i,i},_createProgram:function(t,e,r){var i=this._createShader(t,t.VERTEX_SHADER,e),a=this._createShader(t,t.FRAGMENT_SHADER,r);if(!i||!a)return null;var n=t.createProgram();if(n){t.attachShader(n,i),t.attachShader(n,a),t.linkProgram(n),t.deleteShader(a),t.deleteShader(i);var s=t.getProgramParameter(n,t.LINK_STATUS);if(!s){var o=t.getProgramInfoLog(n);return console.log("Failed to link program: "+o),t.deleteProgram(n),null}}return n},_createShader:function(t,e,r){var i=t.createShader(e);if(i){t.shaderSource(i,r),t.compileShader(i);var a=t.getShaderParameter(i,t.COMPILE_STATUS);if(!a){var n=t.getShaderInfoLog(i);return console.log("Failed to compile shader: "+n),t.deleteShader(i),null}}return i}},s},{requires:["hilo/core/Class","hilo/core/Hilo","hilo/renderer/Renderer","hilo/geom/Matrix"]}); \ No newline at end of file diff --git a/build/kissy/hilo/tween/Ease.js b/build/kissy/hilo/tween/Ease.js index 5457c243..16ea1f7a 100644 --- a/build/kissy/hilo/tween/Ease.js +++ b/build/kissy/hilo/tween/Ease.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/tween/Ease.min.js b/build/kissy/hilo/tween/Ease.min.js index c7383c0e..b0404656 100644 --- a/build/kissy/hilo/tween/Ease.min.js +++ b/build/kissy/hilo/tween/Ease.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/tween/Tween.js b/build/kissy/hilo/tween/Tween.js index 4cde03e1..dc7924e7 100644 --- a/build/kissy/hilo/tween/Tween.js +++ b/build/kissy/hilo/tween/Tween.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/tween/Tween.min.js b/build/kissy/hilo/tween/Tween.min.js index 1bc3100c..9fadad30 100644 --- a/build/kissy/hilo/tween/Tween.min.js +++ b/build/kissy/hilo/tween/Tween.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/util/TextureAtlas.js b/build/kissy/hilo/util/TextureAtlas.js index b5f85eff..927b6deb 100644 --- a/build/kissy/hilo/util/TextureAtlas.js +++ b/build/kissy/hilo/util/TextureAtlas.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -73,7 +73,7 @@ return Class.create(/** @lends TextureAtlas.prototype */{ * @param {String} frames Frames message, eg:"0-5" means frame 0 to frame 5. * @param {Number} w The width of each frame. * @param {Number} h The height of each frame. - * @param {Bollean} loop Is play in loop. + * @param {Boolean} loop Is play in loop. * @param {Number} duration The time between each frame. default value is 1 (Frame), but if timeBased is true, default value will be duration(milli-second). * @example * //demo1 make one animation diff --git a/build/kissy/hilo/util/TextureAtlas.min.js b/build/kissy/hilo/util/TextureAtlas.min.js index ef576ead..1dd9d399 100644 --- a/build/kissy/hilo/util/TextureAtlas.min.js +++ b/build/kissy/hilo/util/TextureAtlas.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/util/Ticker.js b/build/kissy/hilo/util/Ticker.js index 8ee5ae4d..bed55d92 100644 --- a/build/kissy/hilo/util/Ticker.js +++ b/build/kissy/hilo/util/Ticker.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/util/Ticker.min.js b/build/kissy/hilo/util/Ticker.min.js index 9c650a34..fd38e711 100644 --- a/build/kissy/hilo/util/Ticker.min.js +++ b/build/kissy/hilo/util/Ticker.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/util/browser.js b/build/kissy/hilo/util/browser.js index 3fe4a663..21d887e8 100644 --- a/build/kissy/hilo/util/browser.js +++ b/build/kissy/hilo/util/browser.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/util/browser.min.js b/build/kissy/hilo/util/browser.min.js index 8355959c..fb23595f 100644 --- a/build/kissy/hilo/util/browser.min.js +++ b/build/kissy/hilo/util/browser.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/util/drag.js b/build/kissy/hilo/util/drag.js index 956d0bca..97bc787c 100644 --- a/build/kissy/hilo/util/drag.js +++ b/build/kissy/hilo/util/drag.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/util/drag.min.js b/build/kissy/hilo/util/drag.min.js index ddd23946..3e713408 100644 --- a/build/kissy/hilo/util/drag.min.js +++ b/build/kissy/hilo/util/drag.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/util/polyfill.js b/build/kissy/hilo/util/polyfill.js index 53ec9443..f078cbcd 100644 --- a/build/kissy/hilo/util/polyfill.js +++ b/build/kissy/hilo/util/polyfill.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/util/polyfill.min.js b/build/kissy/hilo/util/polyfill.min.js index 8d35f8d3..8ec0a98b 100644 --- a/build/kissy/hilo/util/polyfill.min.js +++ b/build/kissy/hilo/util/polyfill.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/util/util.js b/build/kissy/hilo/util/util.js index 88f81fb7..c2a2545b 100644 --- a/build/kissy/hilo/util/util.js +++ b/build/kissy/hilo/util/util.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/util/util.min.js b/build/kissy/hilo/util/util.min.js index a941e517..e9a971fb 100644 --- a/build/kissy/hilo/util/util.min.js +++ b/build/kissy/hilo/util/util.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/view/Bitmap.js b/build/kissy/hilo/view/Bitmap.js index 0462a4e1..279de4e1 100644 --- a/build/kissy/hilo/view/Bitmap.js +++ b/build/kissy/hilo/view/Bitmap.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/view/Bitmap.min.js b/build/kissy/hilo/view/Bitmap.min.js index f0f318a5..676acd11 100644 --- a/build/kissy/hilo/view/Bitmap.min.js +++ b/build/kissy/hilo/view/Bitmap.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/view/BitmapText.js b/build/kissy/hilo/view/BitmapText.js index 0c665ff7..f8de3326 100644 --- a/build/kissy/hilo/view/BitmapText.js +++ b/build/kissy/hilo/view/BitmapText.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/view/BitmapText.min.js b/build/kissy/hilo/view/BitmapText.min.js index 83509ba8..562c23da 100644 --- a/build/kissy/hilo/view/BitmapText.min.js +++ b/build/kissy/hilo/view/BitmapText.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/view/Button.js b/build/kissy/hilo/view/Button.js index eef86e1e..0b64e67a 100644 --- a/build/kissy/hilo/view/Button.js +++ b/build/kissy/hilo/view/Button.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/view/Button.min.js b/build/kissy/hilo/view/Button.min.js index b58e25dd..13f62bd5 100644 --- a/build/kissy/hilo/view/Button.min.js +++ b/build/kissy/hilo/view/Button.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/view/CacheMixin.js b/build/kissy/hilo/view/CacheMixin.js index ec92d3c8..a5b85763 100644 --- a/build/kissy/hilo/view/CacheMixin.js +++ b/build/kissy/hilo/view/CacheMixin.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/view/CacheMixin.min.js b/build/kissy/hilo/view/CacheMixin.min.js index b009f01b..03e830b7 100644 --- a/build/kissy/hilo/view/CacheMixin.min.js +++ b/build/kissy/hilo/view/CacheMixin.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/view/Container.js b/build/kissy/hilo/view/Container.js index 83b6063b..ea6a99e4 100644 --- a/build/kissy/hilo/view/Container.js +++ b/build/kissy/hilo/view/Container.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/view/Container.min.js b/build/kissy/hilo/view/Container.min.js index bfa7b87d..0a281baf 100644 --- a/build/kissy/hilo/view/Container.min.js +++ b/build/kissy/hilo/view/Container.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/view/DOMElement.js b/build/kissy/hilo/view/DOMElement.js index 78ad9103..5d7eea9b 100644 --- a/build/kissy/hilo/view/DOMElement.js +++ b/build/kissy/hilo/view/DOMElement.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/view/DOMElement.min.js b/build/kissy/hilo/view/DOMElement.min.js index 366635d9..2449d7d7 100644 --- a/build/kissy/hilo/view/DOMElement.min.js +++ b/build/kissy/hilo/view/DOMElement.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/view/Drawable.js b/build/kissy/hilo/view/Drawable.js index 0918f505..6161d2cd 100644 --- a/build/kissy/hilo/view/Drawable.js +++ b/build/kissy/hilo/view/Drawable.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/view/Drawable.min.js b/build/kissy/hilo/view/Drawable.min.js index dcdedbfe..b514a2ca 100644 --- a/build/kissy/hilo/view/Drawable.min.js +++ b/build/kissy/hilo/view/Drawable.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/view/Graphics.js b/build/kissy/hilo/view/Graphics.js index 36802f67..91f345d4 100644 --- a/build/kissy/hilo/view/Graphics.js +++ b/build/kissy/hilo/view/Graphics.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/view/Graphics.min.js b/build/kissy/hilo/view/Graphics.min.js index 55815120..4232b146 100644 --- a/build/kissy/hilo/view/Graphics.min.js +++ b/build/kissy/hilo/view/Graphics.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/view/Sprite.js b/build/kissy/hilo/view/Sprite.js index 21348669..04d507cd 100644 --- a/build/kissy/hilo/view/Sprite.js +++ b/build/kissy/hilo/view/Sprite.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/view/Sprite.min.js b/build/kissy/hilo/view/Sprite.min.js index f7d8e9e4..78d11044 100644 --- a/build/kissy/hilo/view/Sprite.min.js +++ b/build/kissy/hilo/view/Sprite.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/view/Stage.js b/build/kissy/hilo/view/Stage.js index 88b5290c..8d12488c 100644 --- a/build/kissy/hilo/view/Stage.js +++ b/build/kissy/hilo/view/Stage.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/view/Stage.min.js b/build/kissy/hilo/view/Stage.min.js index 472aa08e..d99cb577 100644 --- a/build/kissy/hilo/view/Stage.min.js +++ b/build/kissy/hilo/view/Stage.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/view/Text.js b/build/kissy/hilo/view/Text.js index bdf63c44..c1c00a19 100644 --- a/build/kissy/hilo/view/Text.js +++ b/build/kissy/hilo/view/Text.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/view/Text.min.js b/build/kissy/hilo/view/Text.min.js index 26750c97..b40b5f7c 100644 --- a/build/kissy/hilo/view/Text.min.js +++ b/build/kissy/hilo/view/Text.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/kissy/hilo/view/View.js b/build/kissy/hilo/view/View.js index 667e8e7e..95269ce4 100644 --- a/build/kissy/hilo/view/View.js +++ b/build/kissy/hilo/view/View.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -196,11 +196,72 @@ return Class.create(/** @lends View.prototype */{ if(pivotX != 0) mtx.tx -= pivotX; if(pivotY != 0) mtx.ty -= pivotY; - mtx.concat(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, o.x, o.y); + + var pos = o.getAlignPosition(); + mtx.concat(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, pos.x, pos.y); } return mtx; }, + getAlignPosition: function(){ + var parent = this.parent; + var align = this.align; + var x = this.x; + var y = this.y; + + if(parent && this.align){ + if(typeof align === 'function'){ + return this.align(); + } + + var w = this.width, h = this.height, + pw = parent.width, ph = parent.height; + switch(align){ + case 'TL': + x = 0; + y = 0; + break; + case 'T': + x = pw - w >> 1; + y = 0; + break; + case 'TR': + x = pw - w; + y = 0; + break; + case 'L': + x = 0; + y = ph - h >> 1; + break; + case 'C': + x = pw - w >> 1; + y = ph - h >> 1; + break; + case 'R': + x = pw - w; + y = ph - h >> 1; + break; + case 'BL': + x = 0; + y = ph - h; + break; + case 'B': + x = pw - w >> 1; + y = ph - h; + break; + case 'BR': + x = pw - w; + y = ph - h; + break; + } + } + + return { + x:x, + y:y + }; + }, + /** * @language=en * Determining whether a point is in the circumscribed rectangle of current view. diff --git a/build/kissy/hilo/view/View.min.js b/build/kissy/hilo/view/View.min.js index ad0f0ac0..2ead85c2 100644 --- a/build/kissy/hilo/view/View.min.js +++ b/build/kissy/hilo/view/View.min.js @@ -1,6 +1,6 @@ /** - * Hilo 1.1.4 for kissy + * Hilo 1.1.5 for kissy * Copyright 2016 alibaba.com * Licensed under the MIT License */ -KISSY.add("hilo/view/View",function(t,e,i,n,r,o){var a=function(){function t(t,e,i){for(var n,r,o,a,h=0,s=!1,u=0,y=i.length;ud.x?(n=d.x,r=l.x):(n=l.x,r=d.x),t>=n&&t<=r))s=!0;else if(l.y>d.y?(o=d.y,a=l.y):(o=l.y,a=d.y),!(ea)){var x=(e-l.y)*(d.x-l.x)/(d.y-l.y)+l.x;if(x>t?h++:x==t&&(s=!0),l.x>t&&l.y==e){var c=i[(y+u-1)%y];(c.ye||c.y>e&&d.yh?h=y:yu?u=y:y=0)return!1;l>i.overlap&&(i.overlap=l,i.normal.x=c.x,i.normal.y=c.y)}return i}return i.create({Mixes:n,constructor:function(t){t=t||{},this.id=this.id||t.id||e.getUid("View"),o.copy(this,t,!0)},tint:16777215,id:null,x:0,y:0,width:0,height:0,alpha:1,rotation:0,visible:!0,pivotX:0,pivotY:0,scaleX:1,scaleY:1,pointerEnabled:!0,background:null,mask:null,align:null,drawable:null,boundsArea:null,parent:null,depth:-1,blendMode:"source-over",getStage:function(){for(var t,e=this;t=e.parent;)e=t;return e.canvas?e:null},getScaledWidth:function(){return this.width*this.scaleX},getScaledHeight:function(){return this.height*this.scaleY},addTo:function(t,e){return"number"==typeof e?t.addChildAt(this,e):t.addChild(this),this},removeFromParent:function(){var t=this.parent;return t&&t.removeChild(this),this},getBounds:function(){for(var t,e,i,n,r,o,a,h=this.width,s=this.height,u=this.getConcatenatedMatrix(),y=this.boundsArea||[{x:0,y:0},{x:h,y:0},{x:h,y:s},{x:0,y:s}],l=[],d=0,x=y.length;de?n=e:ri?o=i:a=r.x&&e<=r.x+r.width&&i>=r.y&&i<=r.y+r.height;return o&&n&&(o=t(e,i,r)),o},hitTestObject:function(t,e){var i=this.getBounds(),n=t.getBounds(),r=i.x<=n.x+n.width&&n.x<=i.x+i.width&&i.y<=n.y+n.height&&n.y<=i.y+i.height;return r&&e&&(r=a(i,n)),!!r},_render:function(t,e){this.onUpdate&&this.onUpdate(e)===!1||!t.startDraw(this)||(t.transform(this),this.render(t,e),t.endDraw(this))},_fireMouseEvent:function(t){if(t.eventCurrentTarget=this,this.fire(t),"mousemove"==t.type){if(!this.__mouseOver){this.__mouseOver=!0;var e=o.copy({},t);e.type="mouseover",this.fire(e)}}else"mouseout"==t.type&&(this.__mouseOver=!1);var i=this.parent;t._stopped||t._stopPropagationed||!i||("mouseout"==t.type||"touchout"==t.type?i.hitTestPoint(t.stageX,t.stageY,!0)||i._fireMouseEvent(t):i._fireMouseEvent(t))},onUpdate:null,render:function(t,e){t.draw(this)},toString:function(){return e.viewToString(this)}})}();return a},{requires:["hilo/core/Hilo","hilo/core/Class","hilo/event/EventMixin","hilo/geom/Matrix","hilo/util/util"]}); \ No newline at end of file +KISSY.add("hilo/view/View",function(t,e,i,r,n,o){var a=function(){function t(t,e,i){for(var r,n,o,a,s=0,h=!1,u=0,y=i.length;uc.x?(r=c.x,n=l.x):(r=l.x,n=c.x),t>=r&&t<=n))h=!0;else if(l.y>c.y?(o=c.y,a=l.y):(o=l.y,a=c.y),!(ea)){var d=(e-l.y)*(c.x-l.x)/(c.y-l.y)+l.x;if(d>t?s++:d==t&&(h=!0),l.x>t&&l.y==e){var x=i[(y+u-1)%y];(x.ye||x.y>e&&c.ys?s=y:yu?u=y:y=0)return!1;l>i.overlap&&(i.overlap=l,i.normal.x=x.x,i.normal.y=x.y)}return i}return i.create({Mixes:r,constructor:function(t){t=t||{},this.id=this.id||t.id||e.getUid("View"),o.copy(this,t,!0)},tint:16777215,id:null,x:0,y:0,width:0,height:0,alpha:1,rotation:0,visible:!0,pivotX:0,pivotY:0,scaleX:1,scaleY:1,pointerEnabled:!0,background:null,mask:null,align:null,drawable:null,boundsArea:null,parent:null,depth:-1,blendMode:"source-over",getStage:function(){for(var t,e=this;t=e.parent;)e=t;return e.canvas?e:null},getScaledWidth:function(){return this.width*this.scaleX},getScaledHeight:function(){return this.height*this.scaleY},addTo:function(t,e){return"number"==typeof e?t.addChildAt(this,e):t.addChild(this),this},removeFromParent:function(){var t=this.parent;return t&&t.removeChild(this),this},getBounds:function(){for(var t,e,i,r,n,o,a,s=this.width,h=this.height,u=this.getConcatenatedMatrix(),y=this.boundsArea||[{x:0,y:0},{x:s,y:0},{x:s,y:h},{x:0,y:h}],l=[],c=0,d=y.length;ce?r=e:ni?o=i:a>1,r=0;break;case"TR":i=a-n,r=0;break;case"L":i=0,r=s-o>>1;break;case"C":i=a-n>>1,r=s-o>>1;break;case"R":i=a-n,r=s-o>>1;break;case"BL":i=0,r=s-o;break;case"B":i=a-n>>1,r=s-o;break;case"BR":i=a-n,r=s-o}}return{x:i,y:r}},hitTestPoint:function(e,i,r){var n=this.getBounds(),o=e>=n.x&&e<=n.x+n.width&&i>=n.y&&i<=n.y+n.height;return o&&r&&(o=t(e,i,n)),o},hitTestObject:function(t,e){var i=this.getBounds(),r=t.getBounds(),n=i.x<=r.x+r.width&&r.x<=i.x+i.width&&i.y<=r.y+r.height&&r.y<=i.y+i.height;return n&&e&&(n=a(i,r)),!!n},_render:function(t,e){this.onUpdate&&this.onUpdate(e)===!1||!t.startDraw(this)||(t.transform(this),this.render(t,e),t.endDraw(this))},_fireMouseEvent:function(t){if(t.eventCurrentTarget=this,this.fire(t),"mousemove"==t.type){if(!this.__mouseOver){this.__mouseOver=!0;var e=o.copy({},t);e.type="mouseover",this.fire(e)}}else"mouseout"==t.type&&(this.__mouseOver=!1);var i=this.parent;t._stopped||t._stopPropagationed||!i||("mouseout"==t.type||"touchout"==t.type?i.hitTestPoint(t.stageX,t.stageY,!0)||i._fireMouseEvent(t):i._fireMouseEvent(t))},onUpdate:null,render:function(t,e){t.draw(this)},toString:function(){return e.viewToString(this)}})}();return a},{requires:["hilo/core/Hilo","hilo/core/Class","hilo/event/EventMixin","hilo/geom/Matrix","hilo/util/util"]}); \ No newline at end of file diff --git a/build/standalone/hilo-standalone.js b/build/standalone/hilo-standalone.js index b849945b..4cb493ac 100644 --- a/build/standalone/hilo-standalone.js +++ b/build/standalone/hilo-standalone.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -166,7 +166,7 @@ var browser = (function(){ window.Hilo.browser = browser; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -201,7 +201,7 @@ var util = { window.Hilo.util = util; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -229,7 +229,7 @@ var Hilo = { * Hilo version * @type String */ - version:'1.1.4', + version:'1.1.5', /** * @language=en * Gets a globally unique id. Such as Stage1, Bitmap2 etc. @@ -517,7 +517,7 @@ var Hilo = { for(var i in Hilo){window.Hilo[i] = Hilo[i];} })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -698,7 +698,7 @@ return {create:create, mix:mix}; window.Hilo.Class = Class; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -877,7 +877,7 @@ var Matrix = Class.create(/** @lends Matrix.prototype */{ window.Hilo.Matrix = Matrix; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -1029,7 +1029,7 @@ if(RawEvent){ window.Hilo.EventMixin = EventMixin; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -1110,7 +1110,7 @@ var Drawable = Class.create(/** @lends Drawable.prototype */{ window.Hilo.Drawable = Drawable; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -1204,7 +1204,7 @@ var Renderer = Class.create(/** @lends Renderer.prototype */{ window.Hilo.Renderer = Renderer; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -1344,53 +1344,9 @@ var CanvasRenderer = Class.create(/** @lends CanvasRenderer.prototype */{ //alignment var align = target.align; if(align){ - if(typeof align === 'function'){ - target.align(); - }else{ - var parent = target.parent; - if(parent){ - var w = target.width, h = target.height, - pw = parent.width, ph = parent.height; - switch(align){ - case 'TL': - x = 0; - y = 0; - break; - case 'T': - x = pw - w >> 1; - y = 0; - break; - case 'TR': - x = pw - w; - y = 0; - break; - case 'L': - x = 0; - y = ph - h >> 1; - break; - case 'C': - x = pw - w >> 1; - y = ph - h >> 1; - break; - case 'R': - x = pw - w; - y = ph - h >> 1; - break; - case 'BL': - x = 0; - y = ph - h; - break; - case 'B': - x = pw - w >> 1; - y = ph - h; - break; - case 'BR': - x = pw - w; - y = ph - h; - break; - } - } - } + var pos = target.getAlignPosition(); + x = pos.x; + y = pos.y; } if(x != 0 || y != 0) ctx.translate(x, y); @@ -1446,7 +1402,7 @@ var CanvasRenderer = Class.create(/** @lends CanvasRenderer.prototype */{ window.Hilo.CanvasRenderer = CanvasRenderer; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -1629,7 +1585,7 @@ function createDOMDrawable(view, imageObj){ window.Hilo.DOMRenderer = DOMRenderer; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -2064,12 +2020,13 @@ var WebGLRenderer = Class.create(/** @lends WebGLRenderer.prototype */{ sin = Math.sin(r); } + var pos = view.getAlignPosition(); mtx.a = cos*scaleX; mtx.b = sin*scaleX; mtx.c = -sin*scaleY; mtx.d = cos*scaleY; - mtx.tx = view.x - mtx.a * pivotX - mtx.c * pivotY; - mtx.ty = view.y - mtx.b * pivotX - mtx.d * pivotY; + mtx.tx = pos.x - mtx.a * pivotX - mtx.c * pivotY; + mtx.ty = pos.y - mtx.b * pivotX - mtx.d * pivotY; mtx.concat(ancestor.__webglWorldMatrix); }, @@ -2199,7 +2156,7 @@ Shader.prototype = { window.Hilo.WebGLRenderer = WebGLRenderer; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -2400,11 +2357,72 @@ return Class.create(/** @lends View.prototype */{ if(pivotX != 0) mtx.tx -= pivotX; if(pivotY != 0) mtx.ty -= pivotY; - mtx.concat(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, o.x, o.y); + + var pos = o.getAlignPosition(); + mtx.concat(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, pos.x, pos.y); } return mtx; }, + getAlignPosition: function(){ + var parent = this.parent; + var align = this.align; + var x = this.x; + var y = this.y; + + if(parent && this.align){ + if(typeof align === 'function'){ + return this.align(); + } + + var w = this.width, h = this.height, + pw = parent.width, ph = parent.height; + switch(align){ + case 'TL': + x = 0; + y = 0; + break; + case 'T': + x = pw - w >> 1; + y = 0; + break; + case 'TR': + x = pw - w; + y = 0; + break; + case 'L': + x = 0; + y = ph - h >> 1; + break; + case 'C': + x = pw - w >> 1; + y = ph - h >> 1; + break; + case 'R': + x = pw - w; + y = ph - h >> 1; + break; + case 'BL': + x = 0; + y = ph - h; + break; + case 'B': + x = pw - w >> 1; + y = ph - h; + break; + case 'BR': + x = pw - w; + y = ph - h; + break; + } + } + + return { + x:x, + y:y + }; + }, + /** * @language=en * Determining whether a point is in the circumscribed rectangle of current view. @@ -2628,7 +2646,7 @@ function doSATCheck(poly1, poly2, result){ window.Hilo.View = View; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -2694,7 +2712,7 @@ var CacheMixin = /** @lends CacheMixin# */ { window.Hilo.CacheMixin = CacheMixin; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -3068,7 +3086,7 @@ var Container = Class.create(/** @lends Container.prototype */{ window.Hilo.Container = Container; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -3340,7 +3358,7 @@ var Stage = Class.create(/** @lends Stage.prototype */{ window.Hilo.Stage = Stage; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -3419,7 +3437,7 @@ var Drawable = window.Hilo.Drawable; window.Hilo.Bitmap = Bitmap; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -3691,7 +3709,7 @@ var Sprite = Class.create(/** @lends Sprite.prototype */{ window.Hilo.Sprite = Sprite; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -3793,7 +3811,7 @@ var DOMElement = Class.create(/** @lends DOMElement.prototype */{ window.Hilo.DOMElement = DOMElement; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -4347,7 +4365,7 @@ return Class.create(/** @lends Graphics.prototype */{ window.Hilo.Graphics = Graphics; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -4601,7 +4619,7 @@ var Text = Class.create(/** @lends Text.prototype */{ window.Hilo.Text = Text; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -4786,7 +4804,7 @@ var BitmapText = Class.create(/** @lends BitmapText.prototype */{ window.Hilo.BitmapText = BitmapText; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -4967,7 +4985,7 @@ var util = window.Hilo.util; window.Hilo.Button = Button; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -5042,7 +5060,7 @@ return Class.create(/** @lends TextureAtlas.prototype */{ * @param {String} frames Frames message, eg:"0-5" means frame 0 to frame 5. * @param {Number} w The width of each frame. * @param {Number} h The height of each frame. - * @param {Bollean} loop Is play in loop. + * @param {Boolean} loop Is play in loop. * @param {Number} duration The time between each frame. default value is 1 (Frame), but if timeBased is true, default value will be duration(milli-second). * @example * //demo1 make one animation @@ -5203,7 +5221,7 @@ function isNumber(value){ window.Hilo.TextureAtlas = TextureAtlas; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -5428,7 +5446,7 @@ var Ticker = Class.create(/** @lends Ticker.prototype */{ window.Hilo.Ticker = Ticker; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -5476,7 +5494,7 @@ if (!fnProto.bind) { window.Hilo.undefined = undefined; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -5592,7 +5610,7 @@ var drag = { window.Hilo.drag = drag; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -6033,7 +6051,7 @@ return Class.create(/** @lends Tween.prototype */{ window.Hilo.Tween = Tween; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -6303,7 +6321,7 @@ return { window.Hilo.Ease = Ease; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -6350,7 +6368,7 @@ var ImageLoader = Class.create({ window.Hilo.ImageLoader = ImageLoader; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -6416,7 +6434,7 @@ var ScriptLoader = Class.create({ window.Hilo.ScriptLoader = ScriptLoader; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -6667,7 +6685,7 @@ function getExtension(src){ window.Hilo.LoadQueue = LoadQueue; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -6871,7 +6889,7 @@ var HTMLAudio = Class.create(/** @lends HTMLAudio.prototype */{ window.Hilo.HTMLAudio = HTMLAudio; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -7189,7 +7207,7 @@ return Class.create(/** @lends WebAudio.prototype */{ window.Hilo.WebAudio = WebAudio; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -7293,7 +7311,7 @@ var WebSound = { window.Hilo.WebSound = WebSound; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -7386,7 +7404,7 @@ var Camera = Class.create(/** @lends Camera.prototype */{ window.Hilo.Camera = Camera; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -7573,7 +7591,7 @@ var Camera3d = (function(){ window.Hilo.Camera3d = Camera3d; })(window); /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo-standalone.min.js b/build/standalone/hilo-standalone.min.js index d7845a73..2106b044 100644 --- a/build/standalone/hilo-standalone.min.js +++ b/build/standalone/hilo-standalone.min.js @@ -1,8 +1,8 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ -!function(t){t.Hilo||(t.Hilo={});var e=function(){var e=navigator.userAgent,i=document,n=t,r=i.documentElement,a={iphone:/iphone/i.test(e),ipad:/ipad/i.test(e),ipod:/ipod/i.test(e),ios:/iphone|ipad|ipod/i.test(e),android:/android/i.test(e),webkit:/webkit/i.test(e),chrome:/chrome/i.test(e),safari:/safari/i.test(e),firefox:/firefox/i.test(e),ie:/msie/i.test(e),opera:/opera/i.test(e),supportTouch:"ontouchstart"in n,supportCanvas:null!=i.createElement("canvas").getContext,supportStorage:!1,supportOrientation:"orientation"in n||"orientation"in n.screen,supportDeviceMotion:"ondevicemotion"in n};try{var o="hilo";localStorage.setItem(o,o),localStorage.removeItem(o),a.supportStorage=!0}catch(s){}var l=a.jsVendor=a.webkit?"webkit":a.firefox?"webkit":a.opera?"o":a.ie?"ms":"",h=a.cssVendor="-"+l+"-",c=i.createElement("div"),u=c.style,d=void 0!=u[l+"Transform"],f=void 0!=u[l+"Perspective"];return f&&(c.id="test3d",u=i.createElement("style"),u.textContent="@media ("+h+"transform-3d){#test3d{height:3px}}",i.head.appendChild(u),r.appendChild(c),f=3==c.offsetHeight,i.head.removeChild(u),r.removeChild(c)),a.supportTransform=d,a.supportTransform3D=f,a}();t.Hilo.browser=e}(window),function(t){t.Hilo||(t.Hilo={});var e={copy:function(t,e,i){for(var n in e)i&&!t.hasOwnProperty(n)&&void 0===t[n]||(t[n]=e[n]);return t}};t.Hilo.util=e}(window),function(t){t.Hilo||(t.Hilo={});var e=t.Hilo.browser,i=t.Hilo.util,n=t,r=document,a=r.documentElement,o=0,s={},l={version:"1.1.4",getUid:function(t){var e=++o;if(t){var i=t.charCodeAt(t.length-1);return i>=48&&i<=57&&(t+="_"),t+e}return e},viewToString:function(t){for(var e,i=t;i;)e=e?i.id+"."+e:i.id,i=i.parent;return e},copy:function(t,e,n){return i.copy(t,e,n),s.copy||(s.copy=!0,console.warn("Hilo.copy has been Deprecated! Use Hilo.util.copy instead.")),t},browser:e,event:function(){var t="ontouchstart"in n;return{POINTER_START:t?"touchstart":"mousedown",POINTER_MOVE:t?"touchmove":"mousemove",POINTER_END:t?"touchend":"mouseup"}}(),align:{TOP_LEFT:"TL",TOP:"T",TOP_RIGHT:"TR",LEFT:"L",CENTER:"C",RIGHT:"R",BOTTOM_LEFT:"BL",BOTTOM:"B",BOTTOM_RIGHT:"BR"},getElementRect:function(t){var e;try{e=t.getBoundingClientRect()}catch(i){e={top:t.offsetTop,left:t.offsetLeft,right:t.offsetLeft+t.offsetWidth,bottom:t.offsetTop+t.offsetHeight}}var r=(n.pageXOffset||a.scrollLeft)-(a.clientLeft||0)||0,o=(n.pageYOffset||a.scrollTop)-(a.clientTop||0)||0,s=n.getComputedStyle?getComputedStyle(t):t.currentStyle,l=parseInt,h=l(s.paddingLeft)+l(s.borderLeftWidth)||0,c=l(s.paddingTop)+l(s.borderTopWidth)||0,u=l(s.paddingRight)+l(s.borderRightWidth)||0,d=l(s.paddingBottom)+l(s.borderBottomWidth)||0,f=e.top||0,p=e.left||0,v=e.right||0,m=e.bottom||0;return{left:p+r+h,top:f+o+c,width:v-u-p-h,height:m-d-f-c}},createElement:function(t,e){var i,n,a,o=r.createElement(t);for(i in e)if(n=e[i],"style"===i)for(a in n)o.style[a]=n[a];else o[i]=n;return o},getElement:function(t){return r.getElementById(t)},setElementStyleByView:function(t){var e=t.drawable,i=e.domElement.style,n=t._stateCache||(t._stateCache={}),r=l.browser.jsVendor,a="px",o=!1;if(this.cacheStateIfChanged(t,["visible"],n)&&(i.display=t.visible?"":"none"),this.cacheStateIfChanged(t,["alpha"],n)&&(i.opacity=t.alpha),t.visible&&!(t.alpha<=0)){this.cacheStateIfChanged(t,["width"],n)&&(i.width=t.width+a),this.cacheStateIfChanged(t,["height"],n)&&(i.height=t.height+a),this.cacheStateIfChanged(t,["depth"],n)&&(i.zIndex=t.depth+1),(o=this.cacheStateIfChanged(t,["pivotX","pivotY"],n))&&(i[r+"TransformOrigin"]=t.pivotX+a+" "+t.pivotY+a),(this.cacheStateIfChanged(t,["x","y","rotation","scaleX","scaleY"],n)||o)&&(i[r+"Transform"]=this.getTransformCSS(t)),this.cacheStateIfChanged(t,["background"],n)&&(i.backgroundColor=t.background),i.pointerEvents||(i.pointerEvents="none");var s=e.image;if(s){var h=s.src;h!==n.image&&(n.image=h,i.backgroundImage="url("+h+")");var c=e.rect;if(c){var u=c[0],d=c[1];u!==n.sx&&(n.sx=u,i.backgroundPositionX=-u+a),d!==n.sy&&(n.sy=d,i.backgroundPositionY=-d+a)}}var f=t.mask;if(f){var p=f.drawable.domElement.style.backgroundImage;p!==n.maskImage&&(n.maskImage=p,i[r+"MaskImage"]=p,i[r+"MaskRepeat"]="no-repeat");var v=f.x,m=f.y;v===n.maskX&&m===n.maskY||(n.maskX=v,n.maskY=m,i[r+"MaskPosition"]=v+a+" "+m+a)}}},cacheStateIfChanged:function(t,e,i){var n,r,a,o,s=!1;for(n=0,r=e.length;n=6?(e=s[0],i=s[1],n=s[2],r=s[3],a=s[4],o=s[5]):(e=t.a,i=t.b,n=t.c,r=t.d,a=t.tx,o=t.ty),this.a=l*e+h*n,this.b=l*i+h*r,this.c=c*e+u*n,this.d=c*i+u*r,this.tx=d*e+f*n+a,this.ty=d*i+f*r+o,this},rotate:function(t){var e=Math.sin(t),i=Math.cos(t),n=this.a,r=this.b,a=this.c,o=this.d,s=this.tx,l=this.ty;return this.a=n*i-r*e,this.b=n*e+r*i,this.c=a*i-o*e,this.d=a*e+o*i,this.tx=s*i-l*e,this.ty=s*e+l*i,this},scale:function(t,e){return this.a*=t,this.d*=e,this.c*=t,this.b*=e,this.tx*=t,this.ty*=e,this},translate:function(t,e){return this.tx+=t,this.ty+=e,this},identity:function(){return this.a=this.d=1,this.b=this.c=this.tx=this.ty=0,this},invert:function(){var t=this.a,e=this.b,i=this.c,n=this.d,r=this.tx,a=t*n-e*i;return this.a=n/a,this.b=-e/a,this.c=-i/a,this.d=t/a,this.tx=(i*this.ty-n*r)/a,this.ty=-(t*this.ty-e*r)/a,this},transformPoint:function(t,e,i){var n=t.x*this.a+t.y*this.c+this.tx,r=t.x*this.b+t.y*this.d+this.ty;return e&&(n=n+.5>>0,r=r+.5>>0),i?{x:n,y:r}:(t.x=n,t.y=r,t)}});t.Hilo.Matrix=i}(window),function(t){t.Hilo||(t.Hilo={});var e=t.Hilo.Class,i={_listeners:null,on:function(t,e,i){for(var n=this._listeners=this._listeners||{},r=n[t]=n[t]||[],a=0,o=r.length;a-1&&o.splice(c,1)}}return 0==o.length&&delete a[r],!0}return!1}},n=e.create({constructor:function(t,e,i){this.type=t,this.target=e,this.detail=i,this.timeStamp=+new Date},type:null,target:null,detail:null,timeStamp:0,stopImmediatePropagation:function(){this._stopped=!0}}),r=t.Event;if(r){var a=r.prototype,o=a.stopImmediatePropagation;a.stopImmediatePropagation=function(){o&&o.call(this),this._stopped=!0}}t.Hilo.EventMixin=i}(window),function(t){t.Hilo||(t.Hilo={});var e=t.Hilo.Class,i=t.Hilo.util,n=e.create({constructor:function(t){this.init(t)},image:null,rect:null,init:function(t){var e=this,r=e.image;n.isDrawable(t)?e.image=t:i.copy(e,t,!0);var a=e.image;if("string"==typeof a){if(!r||a!==r.getAttribute("src")){e.image=null;var o=new Image;return t.crossOrigin&&(o.crossOrigin=t.crossOrigin),o.onload=function(){o.onload=null,e.init(o)},void(o.src=a)}a=e.image=r}a&&!e.rect&&(e.rect=[0,0,a.width,a.height])},Statics:{isDrawable:function(t){if(!t||!t.tagName)return!1;var e=t.tagName.toLowerCase();return"img"===e||"canvas"===e||"video"===e}}});t.Hilo.Drawable=n}(window),function(t){t.Hilo||(t.Hilo={});var e=t.Hilo.Class,i=t.Hilo.util,n=e.create({constructor:function(t){t=t||{},i.copy(this,t,!0)},renderType:null,canvas:null,stage:null,blendMode:"source-over",startDraw:function(t){},draw:function(t){},endDraw:function(t){},transform:function(){},hide:function(){},remove:function(t){},clear:function(t,e,i,n){},resize:function(t,e){}});t.Hilo.Renderer=n}(window),function(t){t.Hilo||(t.Hilo={});var e=t.Hilo.Class,i=t.Hilo,n=t.Hilo.Renderer,r=e.create({Extends:n,constructor:function(t){r.superclass.constructor.call(this,t),this.context=this.canvas.getContext("2d")},renderType:"canvas",context:null,startDraw:function(t){return!!(t.visible&&t.alpha>0)&&(t===this.stage&&this.context.clearRect(0,0,t.width,t.height),t.blendMode!==this.blendMode&&(this.context.globalCompositeOperation=this.blendMode=t.blendMode),this.context.save(),!0)},draw:function(t){var e=this.context,i=t.width,n=t.height,r=t.background;r&&(e.fillStyle=r,e.fillRect(0,0,i,n));var a=t.drawable,o=a&&a.image;if(o){var s=a.rect,l=s[2],h=s[3],c=s[4],u=s[5];if(!l||!h)return;i||n||(i=t.width=l,n=t.height=h),(c||u)&&e.translate(c-.5*l,u-.5*h),e.drawImage(o,s[0],s[1],l,h,0,0,i,n)}},endDraw:function(t){this.context.restore()},transform:function(t){var e=t.drawable;if(e&&e.domElement)return void i.setElementStyleByView(t);var n=this.context,r=t.scaleX,a=t.scaleY;if(t===this.stage){var o=this.canvas.style,s=t._scaleX,l=t._scaleY,h=!1;(!s&&1!=r||s&&s!=r)&&(t._scaleX=r,o.width=r*t.width+"px",h=!0),(!l&&1!=a||l&&l!=a)&&(t._scaleY=a,o.height=a*t.height+"px",h=!0),h&&t.updateViewport()}else{var c=t.x,u=t.y,d=t.pivotX,f=t.pivotY,p=t.rotation%360,v=t.mask;v&&(v._render(this),n.clip());var m=t.align;if(m)if("function"==typeof m)t.align();else{var _=t.parent;if(_){var g=t.width,x=t.height,y=_.width,w=_.height;switch(m){case"TL":c=0,u=0;break;case"T":c=y-g>>1,u=0;break;case"TR":c=y-g,u=0;break;case"L":c=0,u=w-x>>1;break;case"C":c=y-g>>1,u=w-x>>1;break;case"R":c=y-g,u=w-x>>1;break;case"BL":c=0,u=w-x;break;case"B":c=y-g>>1,u=w-x;break;case"BR":c=y-g,u=w-x}}}0==c&&0==u||n.translate(c,u),0!=p&&n.rotate(p*Math.PI/180),1==r&&1==a||n.scale(r,a),0==d&&0==f||n.translate(-d,-f)}t.alpha>0&&(n.globalAlpha*=t.alpha)},remove:function(t){var e=t.drawable,i=e&&e.domElement;if(i){var n=i.parentNode;n&&n.removeChild(i)}},clear:function(t,e,i,n){this.context.clearRect(t,e,i,n)},resize:function(t,e){var i=this.canvas,n=this.stage,r=i.style;i.width=t,i.height=e,r.width=n.width*n.scaleX+"px",r.height=n.height*n.scaleY+"px"}});t.Hilo.CanvasRenderer=r}(window),function(t){t.Hilo||(t.Hilo={});var e=t.Hilo.Class,i=t.Hilo,n=t.Hilo.Renderer,r=t.Hilo.Drawable,a=function(){function t(t,e){var n=t.tagName||"div",r=e.image,a=t.width||r&&r.width,o=t.height||r&&r.height,s=i.createElement(n),l=s.style;if(t.id&&(s.id=t.id),l.position="absolute",l.left=(t.left||0)+"px",l.top=(t.top||0)+"px",l.width=a+"px",l.height=o+"px","canvas"==n){if(s.width=a,s.height=o,r){var h=s.getContext("2d"),c=e.rect||[0,0,a,o];h.drawImage(r,c[0],c[1],c[2],c[3],t.x||0,t.y||0,t.width||c[2],t.height||c[3])}}else if(l.opacity=void 0!=t.alpha?t.alpha:1,(t===this.stage||t.clipChildren)&&(l.overflow="hidden"),r&&r.src){l.backgroundImage="url("+r.src+")";var u=t.rectX||0,d=t.rectY||0;l.backgroundPosition=-u+"px "+-d+"px"}return s}return e.create({Extends:n,constructor:function(t){a.superclass.constructor.call(this,t)},renderType:"dom",startDraw:function(e){var i=e.drawable=e.drawable||new r;return i.domElement=i.domElement||t(e,i),!0},draw:function(t){var e=t.parent,i=t.drawable.domElement,n=i.parentNode;if(e){var r=e.drawable.domElement;if(r!=n&&r.appendChild(i),!t.width&&!t.height){var a=t.drawable.rect;a&&(a[2]||a[3])&&(t.width=a[2],t.height=a[3])}}else t!==this.stage||n||(i.style.overflow="hidden",this.canvas.appendChild(i))},transform:function(t){if(i.setElementStyleByView(t),t===this.stage){var e=this.canvas.style,n=t._scaleX,r=t._scaleY,a=t.scaleX,o=t.scaleY;(!n&&1!=a||n&&n!=a)&&(t._scaleX=a,e.width=a*t.width+"px"),(!r&&1!=o||r&&r!=o)&&(t._scaleY=o,e.height=o*t.height+"px")}},remove:function(t){var e=t.drawable,i=e&&e.domElement;if(i){var n=i.parentNode;n&&n.removeChild(i)}},hide:function(t){var e=t.drawable&&t.drawable.domElement;e&&(e.style.display="none")},resize:function(t,e){var i=this.canvas.style;i.width=t+"px",i.height=e+"px","absolute"!=i.position&&(i.position="relative")}})}();t.Hilo.DOMRenderer=a}(window),function(t){t.Hilo||(t.Hilo={});var e=t.Hilo.Class,i=t.Hilo,n=t.Hilo.Renderer,r=t.Hilo.Matrix,a=Math.PI/180,o=e.create({Extends:n,Statics:{MAX_BATCH_NUM:2e3,ATTRIBUTE_NUM:5,isSupport:function(){if(void 0==this._isSupported){var t=document.createElement("canvas");t.getContext&&(t.getContext("webgl")||t.getContext("experimental-webgl"))?this._isSupported=!0:this._isSupported=!1}return this._isSupported}},renderType:"webgl",gl:null,_isContextLost:!1,_cacheTexture:{},constructor:function(t){o.superclass.constructor.call(this,t);var e=this;this.gl=this.canvas.getContext("webgl")||this.canvas.getContext("experimental-webgl"),this.maxBatchNum=o.MAX_BATCH_NUM,this.positionStride=4*o.ATTRIBUTE_NUM;var i=this.maxBatchNum*o.ATTRIBUTE_NUM*4,n=6*this.maxBatchNum;this.arrayBuffer=new ArrayBuffer(4*i),this.float32Array=new Float32Array(this.arrayBuffer),this.uint32Array=new Uint32Array(this.arrayBuffer),this.indexs=new Uint16Array(n);for(var r=0,a=0;r0)&&(t===this.stage&&this.clear(),!0)},draw:function(t){var e=t.width,i=t.height,n=(t.background,t.drawable),r=n&&n.image;if(r){var a=n.rect,o=a[2],s=a[3];e||i||(e=t.width=o,i=t.height=s),this.batchIndex>=this.maxBatchNum&&this._renderBatches();var l=this._createVertexs(r,a[0],a[1],o,s,0,0,e,i),h=this.batchIndex*this.positionStride,c=this.float32Array,u=this.uint32Array,d=(t.tint>>16)+(65280&t.tint)+((255&t.tint)<<16)+(255*t.__webglRenderAlpha<<24);c[h+0]=l[0],c[h+1]=l[1],c[h+2]=l[2],c[h+3]=l[3],u[h+4]=d,c[h+5]=l[4],c[h+6]=l[5],c[h+7]=l[6],c[h+8]=l[7],u[h+9]=d,c[h+10]=l[8],c[h+11]=l[9],c[h+12]=l[10],c[h+13]=l[11],u[h+14]=d,c[h+15]=l[12],c[h+16]=l[13],c[h+17]=l[14],c[h+18]=l[15],u[h+19]=d;for(var f=t.__webglWorldMatrix,p=0;p<4;p++){var v=c[h+5*p],m=c[h+5*p+1];c[h+5*p]=f.a*v+f.c*m+f.tx,c[h+5*p+1]=f.b*v+f.d*m+f.ty}t.__textureImage=r,this.sprites[this.batchIndex++]=t}},endDraw:function(t){t===this.stage&&this._renderBatches()},transform:function(t){var e=t.drawable;if(e&&e.domElement)return void i.setElementStyleByView(t);var n=t.scaleX,a=t.scaleY;if(t===this.stage){var o=this.canvas.style,s=t._scaleX,l=t._scaleY,h=!1;(!s&&1!=n||s&&s!=n)&&(t._scaleX=n,o.width=n*t.width+"px",h=!0),(!l&&1!=a||l&&l!=a)&&(t._scaleY=a,o.height=a*t.height+"px",h=!0),h&&t.updateViewport(),t.__webglWorldMatrix=t.__webglWorldMatrix||new r(1,0,0,1,0,0)}else t.parent&&(t.__webglWorldMatrix=t.__webglWorldMatrix||new r(1,0,0,1,0,0),this._setConcatenatedMatrix(t,t.parent));t.alpha>0&&(t.parent&&t.parent.__webglRenderAlpha?t.__webglRenderAlpha=t.alpha*t.parent.__webglRenderAlpha:t.__webglRenderAlpha=t.alpha)},remove:function(t){var e=t.drawable,i=e&&e.domElement;if(i){var n=i.parentNode;n&&n.removeChild(i)}},clear:function(t,e,i,n){this.gl.clear(this.gl.COLOR_BUFFER_BIT)},resize:function(t,e){if(this.width!==t||this.height!==e){var i=this.canvas,n=this.stage,r=i.style;this.width=i.width=t,this.height=i.height=e,r.width=n.width*n.scaleX+"px",r.height=n.height*n.scaleY+"px",this.gl.viewport(0,0,t,e),this.canvasHalfWidth=.5*t,this.canvasHalfHeight=.5*e,this._uploadProjectionTransform(!0)}},_renderBatches:function(){var t=this.gl;t.bufferSubData(t.ARRAY_BUFFER,0,this.uint32Array.subarray(0,this.batchIndex*this.positionStride));for(var e=0,i=0,n=null,r=0;r0&&(i.bindTexture(i.TEXTURE_2D,this._getTexture(this.sprites[t])),i.drawElements(i.TRIANGLES,6*n,i.UNSIGNED_SHORT,6*t*2))},_uploadProjectionTransform:function(t){this._projectionTransformElements&&!t||(this._projectionTransformElements=new Float32Array([1/this.canvasHalfWidth,0,0,0,-1/this.canvasHalfHeight,0,-1,1,1])),this.gl.uniformMatrix3fv(this.u_projectionTransform,!1,this._projectionTransformElements)},_initShaders:function(){var t=" attribute vec2 a_position;\n attribute vec2 a_TexCoord;\n attribute vec4 a_tint;\n uniform mat3 u_projectionTransform;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_Position = vec4((u_projectionTransform * vec3(a_position, 1.0)).xy, 1.0, 1.0);\n v_TexCoord = a_TexCoord;\n v_tint = vec4(a_tint.rgb * a_tint.a, a_tint.a);\n }\n ",e="\n precision mediump float;\n uniform sampler2D u_Sampler;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_FragColor = texture2D(u_Sampler, v_TexCoord) * v_tint;\n }\n ";this.defaultShader=new s(this,{v:t,f:e},{attributes:["a_position","a_TexCoord","a_tint"],uniforms:["u_projectionTransform","u_Sampler"]})},_createVertexs:function(t,e,i,n,r,a,o,s,l){var h=this.__tempVertexs||[],c=t.width,u=t.height;n/=c,r/=u,e/=c,i/=u,s=s,l=l,a=a,o=o,n+e>1&&(n=1-e),r+i>1&&(r=1-i);var d=0;return h[d++]=a,h[d++]=o,h[d++]=e,h[d++]=i,h[d++]=a+s,h[d++]=o,h[d++]=e+n,h[d++]=i,h[d++]=a,h[d++]=o+l,h[d++]=e,h[d++]=i+r,h[d++]=a+s,h[d++]=o+l,h[d++]=e+n,h[d++]=i+r,h},_setConcatenatedMatrix:function(t,e){var i=t.__webglWorldMatrix,n=1,r=0,o=t.rotation%360,s=t.pivotX,l=t.pivotY,h=t.scaleX,c=t.scaleY;if(o){var u=o*a;n=Math.cos(u),r=Math.sin(u)}i.a=n*h,i.b=r*h,i.c=-r*c,i.d=n*c,i.tx=t.x-i.a*s-i.c*l,i.ty=t.y-i.b*s-i.d*l,i.concat(e.__webglWorldMatrix)},_getTexture:function(t){var e=t.__textureImage,i=this._cacheTexture[e.src];return i||(i=this.activeShader.uploadTexture(e)),i}}),s=function(t,e,i){this.renderer=t,this.gl=t.gl,this.program=this._createProgram(this.gl,e.v,e.f),i=i||{},this.attributes=i.attributes||[],this.uniforms=i.uniforms||[]};s.prototype={active:function(){var t=this,e=t.renderer,i=t.gl,n=t.program;n&&i&&(e.activeShader=t,i.useProgram(n),t.attributes.forEach(function(t){e[t]=i.getAttribLocation(n,t),i.enableVertexAttribArray(e[t])}),t.uniforms.forEach(function(t){e[t]=i.getUniformLocation(n,t)}),t.width===e.width&&t.height===e.height||(t.width=e.width,t.height=e.height,e._uploadProjectionTransform()))},uploadTexture:function(t){var e=this.gl,i=this.renderer,n=e.createTexture(),r=i.u_Sampler;return e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,n),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,1),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.uniform1i(r,0),e.bindTexture(e.TEXTURE_2D,null),this.renderer._cacheTexture[t.src]=n,n},_createProgram:function(t,e,i){var n=this._createShader(t,t.VERTEX_SHADER,e),r=this._createShader(t,t.FRAGMENT_SHADER,i);if(!n||!r)return null;var a=t.createProgram();if(a){t.attachShader(a,n),t.attachShader(a,r),t.linkProgram(a),t.deleteShader(r),t.deleteShader(n);var o=t.getProgramParameter(a,t.LINK_STATUS);if(!o){var s=t.getProgramInfoLog(a);return console.log("Failed to link program: "+s),t.deleteProgram(a),null}}return a},_createShader:function(t,e,i){var n=t.createShader(e);if(n){t.shaderSource(n,i),t.compileShader(n);var r=t.getShaderParameter(n,t.COMPILE_STATUS);if(!r){var a=t.getShaderInfoLog(n);return console.log("Failed to compile shader: "+a),t.deleteShader(n),null}}return n}},t.Hilo.WebGLRenderer=o}(window),function(t){t.Hilo||(t.Hilo={});var e=t.Hilo,i=t.Hilo.Class,n=t.Hilo.EventMixin,r=t.Hilo.Matrix,a=t.Hilo.util,o=function(){function t(t,e,i){for(var n,r,a,o,s=0,l=!1,h=0,c=i.length;hd.x?(n=d.x,r=u.x):(n=u.x,r=d.x),t>=n&&t<=r))l=!0;else if(u.y>d.y?(a=d.y,o=u.y):(a=u.y,o=d.y),!(eo)){var f=(e-u.y)*(d.x-u.x)/(d.y-u.y)+u.x;if(f>t?s++:f==t&&(l=!0),u.x>t&&u.y==e){var p=i[(c+h-1)%c];(p.ye||p.y>e&&d.ys?s=c:ch?h=c:c=0)return!1;u>i.overlap&&(i.overlap=u,i.normal.x=p.x,i.normal.y=p.y)}return i}return i.create({Mixes:n,constructor:function(t){t=t||{},this.id=this.id||t.id||e.getUid("View"),a.copy(this,t,!0)},tint:16777215,id:null,x:0,y:0,width:0,height:0,alpha:1,rotation:0,visible:!0,pivotX:0,pivotY:0,scaleX:1,scaleY:1,pointerEnabled:!0,background:null,mask:null,align:null,drawable:null,boundsArea:null,parent:null,depth:-1,blendMode:"source-over",getStage:function(){for(var t,e=this;t=e.parent;)e=t;return e.canvas?e:null},getScaledWidth:function(){return this.width*this.scaleX},getScaledHeight:function(){return this.height*this.scaleY},addTo:function(t,e){return"number"==typeof e?t.addChildAt(this,e):t.addChild(this),this},removeFromParent:function(){var t=this.parent;return t&&t.removeChild(this),this},getBounds:function(){for(var t,e,i,n,r,a,o,s=this.width,l=this.height,h=this.getConcatenatedMatrix(),c=this.boundsArea||[{x:0,y:0},{x:s,y:0},{x:s,y:l},{x:0,y:l}],u=[],d=0,f=c.length;de?n=e:ri?a=i:o=r.x&&e<=r.x+r.width&&i>=r.y&&i<=r.y+r.height;return a&&n&&(a=t(e,i,r)),a},hitTestObject:function(t,e){var i=this.getBounds(),n=t.getBounds(),r=i.x<=n.x+n.width&&n.x<=i.x+i.width&&i.y<=n.y+n.height&&n.y<=i.y+i.height;return r&&e&&(r=o(i,n)),!!r},_render:function(t,e){this.onUpdate&&this.onUpdate(e)===!1||!t.startDraw(this)||(t.transform(this),this.render(t,e),t.endDraw(this))},_fireMouseEvent:function(t){if(t.eventCurrentTarget=this,this.fire(t),"mousemove"==t.type){if(!this.__mouseOver){this.__mouseOver=!0;var e=a.copy({},t);e.type="mouseover",this.fire(e)}}else"mouseout"==t.type&&(this.__mouseOver=!1);var i=this.parent;t._stopped||t._stopPropagationed||!i||("mouseout"==t.type||"touchout"==t.type?i.hitTestPoint(t.stageX,t.stageY,!0)||i._fireMouseEvent(t):i._fireMouseEvent(t))},onUpdate:null,render:function(t,e){t.draw(this)},toString:function(){return e.viewToString(this)}})}();t.Hilo.View=o}(window),function(t){t.Hilo||(t.Hilo={});var e,i,n=t.Hilo.Drawable,r=t.Hilo.browser,a={_cacheDirty:!0,cache:function(t){(t||this._cacheDirty||!this.drawable)&&this.updateCache()},updateCache:function(){r.supportCanvas&&(e||(e=document.createElement("canvas"),i=e.getContext("2d")),e.width=this.width,e.height=this.height,this._draw(i),this.drawable=this.drawable||new n,this.drawable.init({image:e.toDataURL()}),this._cacheDirty=!1)},setCacheDirty:function(t){this._cacheDirty=t}};t.Hilo.CacheMixin=a}(window),function(t){t.Hilo||(t.Hilo={});var e=t.Hilo,i=t.Hilo.Class,n=t.Hilo.View,r=i.create({Extends:n,constructor:function(t){t=t||{},this.id=this.id||t.id||e.getUid("Container"),r.superclass.constructor.call(this,t),this.children?this._updateChildren():this.children=[]},children:null,pointerChildren:!0,clipChildren:!1,getNumChildren:function(){return this.children.length},addChildAt:function(t,e){var i=this.children,n=i.length,r=t.parent;e=e<0?0:e>n?n:e;var a=this.getChildIndex(t);if(a==e)return this;if(a>=0?(i.splice(a,1),e=e==n?n-1:e):r&&r.removeChild(t),i.splice(e,0,t),a<0)this._updateChildren(e);else{var o=a=e.length)return null;var i=e[t];if(i){if(!i.__renderer)for(var n=i;n=n.parent;){if(n.renderer){i.__renderer=n.renderer;break}if(n.__renderer){i.__renderer=n.__renderer;break}}i.__renderer&&i.__renderer.remove(i),i.parent=null,i.depth=-1}return e.splice(t,1),this._updateChildren(t),i},removeChild:function(t){return this.removeChildAt(this.getChildIndex(t))},removeChildById:function(t){for(var e,i=this.children,n=0,r=i.length;n=e.length?null:e[t]},getChildById:function(t){for(var e,i=this.children,n=0,r=i.length;n=0&&n!=e){var r=i.length;e=e<0?0:e>=r?r-1:e,i.splice(n,1),i.splice(e,0,t),this._updateChildren()}return this},swapChildren:function(t,e){var i=this.children,n=this.getChildIndex(t),r=this.getChildIndex(e);t.depth=r,i[r]=t,e.depth=n,i[n]=e},swapChildrenAt:function(t,e){var i=this.children,n=this.getChildAt(t),r=this.getChildAt(e);n.depth=e,i[e]=n,r.depth=t,i[t]=r},sortChildren:function(t){var e=t,i=this.children;if("string"==typeof e){var n=e;e=function(t,e){return e[n]-t[n]}}i.sort(e),this._updateChildren()},_updateChildren:function(t,e){var i,n=this.children;t=t||0,e=e||n.length;for(var r=t;r=0;h--)if(a=l[h],!(!a||!a.visible||a.alpha<=0||r&&!a.pointerEnabled))if(a.children&&a.children.length&&(!r||a.pointerChildren)&&(o=a.getViewAtPoint(t,e,i,n,r)),o){if(!n)return o;o.length&&(s=s.concat(o))}else if(a.hitTestPoint(t,e,i)){if(!n)return a;s.push(a)}return n&&s.length?s:null},render:function(t,e){r.superclass.render.call(this,t,e);var i,n,a,o=this.children.slice(0);for(i=0,n=o.length;in?n:e,i[e]=t,t.name&&(this._frameNames[t.name]=t),(0!=e||this.width)&&this.height||(this.width=t.rect[2],this.height=t.rect[3]),this},getFrame:function(t){if("number"==typeof t){var e=this._frames;return t<0||t>=e.length?null:e[t]}return this._frameNames[t]},getFrameIndex:function(t){var e=this._frames,i=e.length,n=-1;if("number"==typeof t)n=t;else{var r="string"==typeof t?this._frameNames[t]:t;if(r)for(var a=0;a=i?i-1:n,this.paused=e,this._firstRender=!0,this},_render:function(t,e){var i,n=this.currentFrame;if(this._firstRender?(i=n,this._firstRender=!1):i=this._nextFrame(e),i!=n){this.currentFrame=i;var r=this._frames[i].callback;r&&r.call(this)}this.onEnterFrame&&this.onEnterFrame(i),this.drawable.init(this._frames[i]),a.superclass._render.call(this,t,e)},_nextFrame:function(t){var e=this._frames,i=e.length,n=this.currentFrame,r=e[n],a=r.duration||this.interval,o=this._frameElapsed,s=0!=n||this.drawable?o+(this.timeBased?t:1):0;return o=this._frameElapsed=s=i-1)&&this.stop(),this.paused||0!=o||(null!=r.next?n=this.getFrameIndex(r.next):n>=i-1?n=0:this.drawable&&n++),n},setFrameCallback:function(t,e){return t=this.getFrame(t),t&&(t.callback=e),this},onEnterFrame:null});t.Hilo.Sprite=a}(window),function(t){t.Hilo||(t.Hilo={});var e=t.Hilo,i=t.Hilo.Class,n=t.Hilo.View,r=t.Hilo.Drawable,a=i.create({Extends:n,constructor:function(t){t=t||{},this.id=this.id||t.id||e.getUid("DOMElement"),a.superclass.constructor.call(this,t),this.drawable=new r;var i=this.drawable.domElement=t.element||e.createElement("div");i.id=this.id,this.pointerEnabled&&(i.style.pointerEvents="visible")},_render:function(t,e){this.onUpdate&&this.onUpdate(e)===!1||(t.transform(this),this.visible&&this.alpha>0&&this.render(t,e))},render:function(t,e){if("dom"!==t.renderType){var i,n=t.canvas,r=this.drawable.domElement,a=this.depth,o=n.nextSibling;if(r.parentNode)return;for(;o&&3!=o.nodeType&&(i=parseInt(o.style.zIndex)||0,!(i<=0||i>a));)o=o.nextSibling;n.parentNode.insertBefore(this.drawable.domElement,o)}else t.draw(this)}});t.Hilo.DOMElement=a}(window),function(t){t.Hilo||(t.Hilo={});var e=t.Hilo,i=t.Hilo.Class,n=t.Hilo.View,r=t.Hilo.CacheMixin,a=function(){var t=document.createElement("canvas"),o=t.getContext&&t.getContext("2d");return i.create({Extends:n,Mixes:r,constructor:function(t){t=t||{},this.id=this.id||t.id||e.getUid("Graphics"),a.superclass.constructor.call(this,t),this._actions=[]},lineWidth:1,lineAlpha:1,lineCap:null,lineJoin:null,miterLimit:10,hasStroke:!1,strokeStyle:"0",hasFill:!1,fillStyle:"0",fillAlpha:0,lineStyle:function(t,e,i,n,r,a){var o=this,s=o._addAction;return s.call(o,["lineWidth",o.lineWidth=t||1]),s.call(o,["strokeStyle",o.strokeStyle=e||"0"]),s.call(o,["lineAlpha",o.lineAlpha=i||1]),void 0!=n&&s.call(o,["lineCap",o.lineCap=n]),void 0!=r&&s.call(o,["lineJoin",o.lineJoin=r]),void 0!=a&&s.call(o,["miterLimit",o.miterLimit=a]),o.hasStroke=!0,o},beginFill:function(t,e){var i=this,n=i._addAction;return n.call(i,["fillStyle",i.fillStyle=t]),n.call(i,["fillAlpha",i.fillAlpha=e||1]),i.hasFill=!0,i},endFill:function(){var t=this,e=t._addAction;return t.hasStroke&&e.call(t,["stroke"]),t.hasFill&&e.call(t,["fill"]),t.setCacheDirty(!0),t},beginLinearGradientFill:function(t,e,i,n,r,a){for(var s=this,l=o.createLinearGradient(t,e,i,n),h=0,c=r.length;h1?a.slice(1):null;"function"==typeof t[o]?t[o].apply(t,s):t[o]=a[1]}},render:function(t,e){var i=this;"canvas"===t.renderType?i._draw(t.context):(i.cache(),t.draw(i))},clear:function(){var t=this;return t._actions.length=0,t.lineWidth=1,t.lineAlpha=1,t.lineCap=null,t.lineJoin=null,t.miterLimit=10,t.hasStroke=!1,t.strokeStyle="0",t.hasFill=!1,t.fillStyle="0",t.fillAlpha=1,t.setCacheDirty(!0),t},_addAction:function(t){var e=this;return e._actions.push(t),e}})}();t.Hilo.Graphics=a}(window),function(t){t.Hilo||(t.Hilo={});var e=t.Hilo.Class,i=t.Hilo,n=t.Hilo.View,r=t.Hilo.CacheMixin,a=e.create({Extends:n,Mixes:r,constructor:function(t){t=t||{},this.id=this.id||t.id||i.getUid("Text"),a.superclass.constructor.call(this,t),t.font||(this.font="12px arial"),this._fontHeight=a.measureFontHeight(this.font)},text:null,color:"#000",textAlign:null,textVAlign:null,outline:!1,lineSpacing:0,maxWidth:200,font:null,textWidth:0,textHeight:0,setFont:function(t){var e=this;return e.font!==t&&(e.font=t,e._fontHeight=a.measureFontHeight(t)),e},render:function(t,e){var i=this;if("canvas"===t.renderType)this.drawable?t.draw(i):i._draw(t.context);else if("dom"===t.renderType){var n=i.drawable,r=n.domElement,a=r.style;a.font=i.font,a.textAlign=i.textAlign,a.color=i.color,a.width=i.width+"px",a.height=i.height+"px",a.lineHeight=i._fontHeight+i.lineSpacing+"px",r.innerHTML=i.text,t.draw(this)}else i.cache(),t.draw(i)},_draw:function(t){var e=this,i=e.text.toString();if(i){t.font=e.font,t.textAlign=e.textAlign,t.textBaseline="top";var n,r,a,o,s,l=i.split(/\r\n|\r|\n|/),h=0,c=0,u=e._fontHeight+e.lineSpacing,d=[];for(n=0,o=l.length;ne.maxWidth?(d.push({text:m,y:c}),h<_&&(h=_),c+=u,m=v):(_=f,m+=v),p==s-1&&(d.push({text:m,y:c}),m!==v&&h>1;break;case"bottom":g=e.height-e.textHeight}var x=e.background;for(x&&(t.fillStyle=x,t.fillRect(0,0,e.width,e.height)),e.outline?t.strokeStyle=e.color:t.fillStyle=e.color,n=0;n>1;break;case"right":case"end":r=a}n.outline?t.strokeText(e,r,i):t.fillText(e,r,i)},Statics:{measureFontHeight:function(t){var e,n=document.documentElement,r=i.createElement("div",{style:{font:t,position:"absolute"},innerHTML:"M"});return n.appendChild(r),e=r.offsetHeight,n.removeChild(r),e}}});t.Hilo.Text=a}(window),function(t){t.Hilo||(t.Hilo={});var e=t.Hilo.Class,i=t.Hilo,n=t.Hilo.Container,r=t.Hilo.Bitmap,a=e.create({Extends:n,constructor:function(t){t=t||{},this.id=this.id||t.id||i.getUid("BitmapText"),a.superclass.constructor.call(this,t);var e=t.text+"";e&&(this.text="",this.setText(e)),this.pointerChildren=!1},glyphs:null,letterSpacing:0,text:"",textAlign:"left",setText:function(t){var e=this,i=t.toString(),n=i.length;if(e.text!=i){e.text=i;var r,a,o,s,l=0,h=0,c=0;for(r=0;r0?e.letterSpacing:0),e.children[r]?(s=e.children[r],s.setImage(o.image,o.rect)):(s=e._createBitmap(o),e.addChild(s)),s.x=c,l=c+o.rect[2],h=Math.max(h,o.rect[3]));for(r=e.children.length-1;r>=n;r--)e._releaseBitmap(e.children[r]),e.children[r].removeFromParent();return e.width=l,e.height=h,this.setTextAlign(),e}},_createBitmap:function(t){var e;return a._pool.length?(e=a._pool.pop(),e.setImage(t.image,t.rect)):e=new r({image:t.image,rect:t.rect}),e},_releaseBitmap:function(t){a._pool.push(t)},setTextAlign:function(t){switch(this.textAlign=t||this.textAlign,this.textAlign){case"center":this.pivotX=.5*this.width;break;case"right":this.pivotX=this.width;break;case"left":default:this.pivotX=0}return this},hasGlyphs:function(t){var e=this.glyphs;if(!e)return!1;t=t.toString();var i,n=t.length;for(i=0;i=this._targetFPS?(this._measuredFPS=1e3/(this._tickTime/this._tickCount)+.5>>0,this._tickCount=0,this._tickTime=0):this._tickTime+=t-this._lastTime,this._lastTime=t;for(var n=i.slice(0),r=0,a=n.length;r=0&&e.splice(i,1)},nextTick:function(t){var e=this,i={tick:function(n){e.removeTick(i),t()}};return e.addTick(i),i},timeout:function(t,e){var i=this,n=(new Date).getTime()+e,r={tick:function(){var e=(new Date).getTime(),a=e-n;a>=0&&(i.removeTick(r),t())}};return i.addTick(r),r},interval:function(t,e){var i=this,n=(new Date).getTime()+e,r={tick:function(){var i=(new Date).getTime(),r=i-n;r>=0&&(r=n)return-1;for(e<0&&(e=n+e),i=e;i=1?1:s;var h=r.ease?r.ease(s):s;r.reverse&&(r._reverseFlag<0&&(s=1-s,h=1-h),s<1e-7&&(r.repeat>0&&r._repeatCount++>=r.repeat||0==r.repeat&&!r.loop?l=!0:(r._startTime=t(),r._pausedTime=0,r._reverseFlag*=-1))),0==r.time&&(o=r.onStart)&&o.call(r,r),r.time=a,r._render(h),(o=r.onUpdate)&&o.call(r,s,r),s>=1&&(r.reverse?(r._startTime=t(),r._pausedTime=0,r._reverseFlag*=-1):r.loop||r.repeat>0&&r._repeatCount++0&&u<=e?(c._render(s),c.time=a,i.add(c)):l&&(u<0||u>e)&&c.start()}return l?((o=r.onComplete)&&o.call(r,r),!0):void 0}}},Statics:{_tweens:[],tick:function(){var e,n,r=i._tweens,a=r.length;for(n=0;n-1&&r.splice(e,1);else for(e=0;e=i)return void t.fire("complete");if(t._currentIndexe.z})},tick:function(){this.sortZ()}});return o}();t.Hilo.Camera3d=n}(window),function(t){t.Hilo||(t.Hilo={});var e=t.Hilo,i=t.Hilo.Class,n=t.Hilo.View,r=t.Hilo.Container,a=t.Hilo.Drawable,o=t.Hilo.util,s=function(){function t(t,e){return e?t+2*(Math.random()-.5)*e:t}for(var s=["x","y","vx","vy","ax","ay","rotation","rotationV","scale","scaleV","alpha","alphaV","life"],l=[],h=0,c=s.length;h=this._emitTime&&(this._currentRunTime=0,this._emitTime=t(this.emitTime,this.emitTimeVar),this._emit()),this._totalRunTime>=this.totalTime&&this.stop())},_emit:function(){for(var e=t(this.emitNum,this.emitNumVar)>>0,i=0;i=0;e--)this.children[e].destroy()}}),v=i.create({Extends:n,constructor:function(t){this.id=this.id||t.id||e.getUid("Particle"),v.superclass.constructor.call(this,t),this.init(t)},onUpdate:function(t){if(t*=.001,this._died)return!1;var e=this.ax+this.system.gx,i=this.ay+this.system.gy;return this.vx+=e*t,this.vy+=i*t,this.x+=this.vx*t,this.y+=this.vy*t,this.rotation+=this.rotationV,this._time>.1&&(this.alpha+=this.alphaV),this.scale+=this.scaleV,this.scaleX=this.scaleY=this.scale,this._time+=t,this._time>=this.life||this.alpha<=0?(this.destroy(),!1):void 0},setImage:function(t,e){this.drawable=this.drawable||new a,e=e||[0,0,t.width,t.height],this.width=e[2],this.height=e[3],this.drawable.rect=e,this.drawable.image=t},destroy:function(){this._died=!0,this.alpha=0,this.removeFromParent(),f.push(this)},init:function(e){this.system=e.system,this._died=!1,this._time=0,this.alpha=1;for(var i=0,n=l.length;i>0]),this.setImage(e.image,o),void 0!==e.pivotX&&(this.pivotX=e.pivotX*o[2]),void 0!==e.pivotY&&(this.pivotY=e.pivotY*o[3])}},Statics:{create:function(t){if(f.length>0){var e=f.pop();return e.init(t),e}return new v(t)}}});return p}();t.Hilo.ParticleSystem=s}(window); \ No newline at end of file +!function(t){t.Hilo||(t.Hilo={});var e=function(){var e=navigator.userAgent,i=document,n=t,r=i.documentElement,a={iphone:/iphone/i.test(e),ipad:/ipad/i.test(e),ipod:/ipod/i.test(e),ios:/iphone|ipad|ipod/i.test(e),android:/android/i.test(e),webkit:/webkit/i.test(e),chrome:/chrome/i.test(e),safari:/safari/i.test(e),firefox:/firefox/i.test(e),ie:/msie/i.test(e),opera:/opera/i.test(e),supportTouch:"ontouchstart"in n,supportCanvas:null!=i.createElement("canvas").getContext,supportStorage:!1,supportOrientation:"orientation"in n||"orientation"in n.screen,supportDeviceMotion:"ondevicemotion"in n};try{var o="hilo";localStorage.setItem(o,o),localStorage.removeItem(o),a.supportStorage=!0}catch(s){}var l=a.jsVendor=a.webkit?"webkit":a.firefox?"webkit":a.opera?"o":a.ie?"ms":"",h=a.cssVendor="-"+l+"-",c=i.createElement("div"),u=c.style,d=void 0!=u[l+"Transform"],f=void 0!=u[l+"Perspective"];return f&&(c.id="test3d",u=i.createElement("style"),u.textContent="@media ("+h+"transform-3d){#test3d{height:3px}}",i.head.appendChild(u),r.appendChild(c),f=3==c.offsetHeight,i.head.removeChild(u),r.removeChild(c)),a.supportTransform=d,a.supportTransform3D=f,a}();t.Hilo.browser=e}(window),function(t){t.Hilo||(t.Hilo={});var e={copy:function(t,e,i){for(var n in e)i&&!t.hasOwnProperty(n)&&void 0===t[n]||(t[n]=e[n]);return t}};t.Hilo.util=e}(window),function(t){t.Hilo||(t.Hilo={});var e=t.Hilo.browser,i=t.Hilo.util,n=t,r=document,a=r.documentElement,o=0,s={},l={version:"1.1.5",getUid:function(t){var e=++o;if(t){var i=t.charCodeAt(t.length-1);return i>=48&&i<=57&&(t+="_"),t+e}return e},viewToString:function(t){for(var e,i=t;i;)e=e?i.id+"."+e:i.id,i=i.parent;return e},copy:function(t,e,n){return i.copy(t,e,n),s.copy||(s.copy=!0,console.warn("Hilo.copy has been Deprecated! Use Hilo.util.copy instead.")),t},browser:e,event:function(){var t="ontouchstart"in n;return{POINTER_START:t?"touchstart":"mousedown",POINTER_MOVE:t?"touchmove":"mousemove",POINTER_END:t?"touchend":"mouseup"}}(),align:{TOP_LEFT:"TL",TOP:"T",TOP_RIGHT:"TR",LEFT:"L",CENTER:"C",RIGHT:"R",BOTTOM_LEFT:"BL",BOTTOM:"B",BOTTOM_RIGHT:"BR"},getElementRect:function(t){var e;try{e=t.getBoundingClientRect()}catch(i){e={top:t.offsetTop,left:t.offsetLeft,right:t.offsetLeft+t.offsetWidth,bottom:t.offsetTop+t.offsetHeight}}var r=(n.pageXOffset||a.scrollLeft)-(a.clientLeft||0)||0,o=(n.pageYOffset||a.scrollTop)-(a.clientTop||0)||0,s=n.getComputedStyle?getComputedStyle(t):t.currentStyle,l=parseInt,h=l(s.paddingLeft)+l(s.borderLeftWidth)||0,c=l(s.paddingTop)+l(s.borderTopWidth)||0,u=l(s.paddingRight)+l(s.borderRightWidth)||0,d=l(s.paddingBottom)+l(s.borderBottomWidth)||0,f=e.top||0,p=e.left||0,v=e.right||0,m=e.bottom||0;return{left:p+r+h,top:f+o+c,width:v-u-p-h,height:m-d-f-c}},createElement:function(t,e){var i,n,a,o=r.createElement(t);for(i in e)if(n=e[i],"style"===i)for(a in n)o.style[a]=n[a];else o[i]=n;return o},getElement:function(t){return r.getElementById(t)},setElementStyleByView:function(t){var e=t.drawable,i=e.domElement.style,n=t._stateCache||(t._stateCache={}),r=l.browser.jsVendor,a="px",o=!1;if(this.cacheStateIfChanged(t,["visible"],n)&&(i.display=t.visible?"":"none"),this.cacheStateIfChanged(t,["alpha"],n)&&(i.opacity=t.alpha),t.visible&&!(t.alpha<=0)){this.cacheStateIfChanged(t,["width"],n)&&(i.width=t.width+a),this.cacheStateIfChanged(t,["height"],n)&&(i.height=t.height+a),this.cacheStateIfChanged(t,["depth"],n)&&(i.zIndex=t.depth+1),(o=this.cacheStateIfChanged(t,["pivotX","pivotY"],n))&&(i[r+"TransformOrigin"]=t.pivotX+a+" "+t.pivotY+a),(this.cacheStateIfChanged(t,["x","y","rotation","scaleX","scaleY"],n)||o)&&(i[r+"Transform"]=this.getTransformCSS(t)),this.cacheStateIfChanged(t,["background"],n)&&(i.backgroundColor=t.background),i.pointerEvents||(i.pointerEvents="none");var s=e.image;if(s){var h=s.src;h!==n.image&&(n.image=h,i.backgroundImage="url("+h+")");var c=e.rect;if(c){var u=c[0],d=c[1];u!==n.sx&&(n.sx=u,i.backgroundPositionX=-u+a),d!==n.sy&&(n.sy=d,i.backgroundPositionY=-d+a)}}var f=t.mask;if(f){var p=f.drawable.domElement.style.backgroundImage;p!==n.maskImage&&(n.maskImage=p,i[r+"MaskImage"]=p,i[r+"MaskRepeat"]="no-repeat");var v=f.x,m=f.y;v===n.maskX&&m===n.maskY||(n.maskX=v,n.maskY=m,i[r+"MaskPosition"]=v+a+" "+m+a)}}},cacheStateIfChanged:function(t,e,i){var n,r,a,o,s=!1;for(n=0,r=e.length;n=6?(e=s[0],i=s[1],n=s[2],r=s[3],a=s[4],o=s[5]):(e=t.a,i=t.b,n=t.c,r=t.d,a=t.tx,o=t.ty),this.a=l*e+h*n,this.b=l*i+h*r,this.c=c*e+u*n,this.d=c*i+u*r,this.tx=d*e+f*n+a,this.ty=d*i+f*r+o,this},rotate:function(t){var e=Math.sin(t),i=Math.cos(t),n=this.a,r=this.b,a=this.c,o=this.d,s=this.tx,l=this.ty;return this.a=n*i-r*e,this.b=n*e+r*i,this.c=a*i-o*e,this.d=a*e+o*i,this.tx=s*i-l*e,this.ty=s*e+l*i,this},scale:function(t,e){return this.a*=t,this.d*=e,this.c*=t,this.b*=e,this.tx*=t,this.ty*=e,this},translate:function(t,e){return this.tx+=t,this.ty+=e,this},identity:function(){return this.a=this.d=1,this.b=this.c=this.tx=this.ty=0,this},invert:function(){var t=this.a,e=this.b,i=this.c,n=this.d,r=this.tx,a=t*n-e*i;return this.a=n/a,this.b=-e/a,this.c=-i/a,this.d=t/a,this.tx=(i*this.ty-n*r)/a,this.ty=-(t*this.ty-e*r)/a,this},transformPoint:function(t,e,i){var n=t.x*this.a+t.y*this.c+this.tx,r=t.x*this.b+t.y*this.d+this.ty;return e&&(n=n+.5>>0,r=r+.5>>0),i?{x:n,y:r}:(t.x=n,t.y=r,t)}});t.Hilo.Matrix=i}(window),function(t){t.Hilo||(t.Hilo={});var e=t.Hilo.Class,i={_listeners:null,on:function(t,e,i){for(var n=this._listeners=this._listeners||{},r=n[t]=n[t]||[],a=0,o=r.length;a-1&&o.splice(c,1)}}return 0==o.length&&delete a[r],!0}return!1}},n=e.create({constructor:function(t,e,i){this.type=t,this.target=e,this.detail=i,this.timeStamp=+new Date},type:null,target:null,detail:null,timeStamp:0,stopImmediatePropagation:function(){this._stopped=!0}}),r=t.Event;if(r){var a=r.prototype,o=a.stopImmediatePropagation;a.stopImmediatePropagation=function(){o&&o.call(this),this._stopped=!0}}t.Hilo.EventMixin=i}(window),function(t){t.Hilo||(t.Hilo={});var e=t.Hilo.Class,i=t.Hilo.util,n=e.create({constructor:function(t){this.init(t)},image:null,rect:null,init:function(t){var e=this,r=e.image;n.isDrawable(t)?e.image=t:i.copy(e,t,!0);var a=e.image;if("string"==typeof a){if(!r||a!==r.getAttribute("src")){e.image=null;var o=new Image;return t.crossOrigin&&(o.crossOrigin=t.crossOrigin),o.onload=function(){o.onload=null,e.init(o)},void(o.src=a)}a=e.image=r}a&&!e.rect&&(e.rect=[0,0,a.width,a.height])},Statics:{isDrawable:function(t){if(!t||!t.tagName)return!1;var e=t.tagName.toLowerCase();return"img"===e||"canvas"===e||"video"===e}}});t.Hilo.Drawable=n}(window),function(t){t.Hilo||(t.Hilo={});var e=t.Hilo.Class,i=t.Hilo.util,n=e.create({constructor:function(t){t=t||{},i.copy(this,t,!0)},renderType:null,canvas:null,stage:null,blendMode:"source-over",startDraw:function(t){},draw:function(t){},endDraw:function(t){},transform:function(){},hide:function(){},remove:function(t){},clear:function(t,e,i,n){},resize:function(t,e){}});t.Hilo.Renderer=n}(window),function(t){t.Hilo||(t.Hilo={});var e=t.Hilo.Class,i=t.Hilo,n=t.Hilo.Renderer,r=e.create({Extends:n,constructor:function(t){r.superclass.constructor.call(this,t),this.context=this.canvas.getContext("2d")},renderType:"canvas",context:null,startDraw:function(t){return!!(t.visible&&t.alpha>0)&&(t===this.stage&&this.context.clearRect(0,0,t.width,t.height),t.blendMode!==this.blendMode&&(this.context.globalCompositeOperation=this.blendMode=t.blendMode),this.context.save(),!0)},draw:function(t){var e=this.context,i=t.width,n=t.height,r=t.background;r&&(e.fillStyle=r,e.fillRect(0,0,i,n));var a=t.drawable,o=a&&a.image;if(o){var s=a.rect,l=s[2],h=s[3],c=s[4],u=s[5];if(!l||!h)return;i||n||(i=t.width=l,n=t.height=h),(c||u)&&e.translate(c-.5*l,u-.5*h),e.drawImage(o,s[0],s[1],l,h,0,0,i,n)}},endDraw:function(t){this.context.restore()},transform:function(t){var e=t.drawable;if(e&&e.domElement)return void i.setElementStyleByView(t);var n=this.context,r=t.scaleX,a=t.scaleY;if(t===this.stage){var o=this.canvas.style,s=t._scaleX,l=t._scaleY,h=!1;(!s&&1!=r||s&&s!=r)&&(t._scaleX=r,o.width=r*t.width+"px",h=!0),(!l&&1!=a||l&&l!=a)&&(t._scaleY=a,o.height=a*t.height+"px",h=!0),h&&t.updateViewport()}else{var c=t.x,u=t.y,d=t.pivotX,f=t.pivotY,p=t.rotation%360,v=t.mask;v&&(v._render(this),n.clip());var m=t.align;if(m){var g=t.getAlignPosition();c=g.x,u=g.y}0==c&&0==u||n.translate(c,u),0!=p&&n.rotate(p*Math.PI/180),1==r&&1==a||n.scale(r,a),0==d&&0==f||n.translate(-d,-f)}t.alpha>0&&(n.globalAlpha*=t.alpha)},remove:function(t){var e=t.drawable,i=e&&e.domElement;if(i){var n=i.parentNode;n&&n.removeChild(i)}},clear:function(t,e,i,n){this.context.clearRect(t,e,i,n)},resize:function(t,e){var i=this.canvas,n=this.stage,r=i.style;i.width=t,i.height=e,r.width=n.width*n.scaleX+"px",r.height=n.height*n.scaleY+"px"}});t.Hilo.CanvasRenderer=r}(window),function(t){t.Hilo||(t.Hilo={});var e=t.Hilo.Class,i=t.Hilo,n=t.Hilo.Renderer,r=t.Hilo.Drawable,a=function(){function t(t,e){var n=t.tagName||"div",r=e.image,a=t.width||r&&r.width,o=t.height||r&&r.height,s=i.createElement(n),l=s.style;if(t.id&&(s.id=t.id),l.position="absolute",l.left=(t.left||0)+"px",l.top=(t.top||0)+"px",l.width=a+"px",l.height=o+"px","canvas"==n){if(s.width=a,s.height=o,r){var h=s.getContext("2d"),c=e.rect||[0,0,a,o];h.drawImage(r,c[0],c[1],c[2],c[3],t.x||0,t.y||0,t.width||c[2],t.height||c[3])}}else if(l.opacity=void 0!=t.alpha?t.alpha:1,(t===this.stage||t.clipChildren)&&(l.overflow="hidden"),r&&r.src){l.backgroundImage="url("+r.src+")";var u=t.rectX||0,d=t.rectY||0;l.backgroundPosition=-u+"px "+-d+"px"}return s}return e.create({Extends:n,constructor:function(t){a.superclass.constructor.call(this,t)},renderType:"dom",startDraw:function(e){var i=e.drawable=e.drawable||new r;return i.domElement=i.domElement||t(e,i),!0},draw:function(t){var e=t.parent,i=t.drawable.domElement,n=i.parentNode;if(e){var r=e.drawable.domElement;if(r!=n&&r.appendChild(i),!t.width&&!t.height){var a=t.drawable.rect;a&&(a[2]||a[3])&&(t.width=a[2],t.height=a[3])}}else t!==this.stage||n||(i.style.overflow="hidden",this.canvas.appendChild(i))},transform:function(t){if(i.setElementStyleByView(t),t===this.stage){var e=this.canvas.style,n=t._scaleX,r=t._scaleY,a=t.scaleX,o=t.scaleY;(!n&&1!=a||n&&n!=a)&&(t._scaleX=a,e.width=a*t.width+"px"),(!r&&1!=o||r&&r!=o)&&(t._scaleY=o,e.height=o*t.height+"px")}},remove:function(t){var e=t.drawable,i=e&&e.domElement;if(i){var n=i.parentNode;n&&n.removeChild(i)}},hide:function(t){var e=t.drawable&&t.drawable.domElement;e&&(e.style.display="none")},resize:function(t,e){var i=this.canvas.style;i.width=t+"px",i.height=e+"px","absolute"!=i.position&&(i.position="relative")}})}();t.Hilo.DOMRenderer=a}(window),function(t){t.Hilo||(t.Hilo={});var e=t.Hilo.Class,i=t.Hilo,n=t.Hilo.Renderer,r=t.Hilo.Matrix,a=Math.PI/180,o=e.create({Extends:n,Statics:{MAX_BATCH_NUM:2e3,ATTRIBUTE_NUM:5,isSupport:function(){if(void 0==this._isSupported){var t=document.createElement("canvas");t.getContext&&(t.getContext("webgl")||t.getContext("experimental-webgl"))?this._isSupported=!0:this._isSupported=!1}return this._isSupported}},renderType:"webgl",gl:null,_isContextLost:!1,_cacheTexture:{},constructor:function(t){o.superclass.constructor.call(this,t);var e=this;this.gl=this.canvas.getContext("webgl")||this.canvas.getContext("experimental-webgl"),this.maxBatchNum=o.MAX_BATCH_NUM,this.positionStride=4*o.ATTRIBUTE_NUM;var i=this.maxBatchNum*o.ATTRIBUTE_NUM*4,n=6*this.maxBatchNum;this.arrayBuffer=new ArrayBuffer(4*i),this.float32Array=new Float32Array(this.arrayBuffer),this.uint32Array=new Uint32Array(this.arrayBuffer),this.indexs=new Uint16Array(n);for(var r=0,a=0;r0)&&(t===this.stage&&this.clear(),!0)},draw:function(t){var e=t.width,i=t.height,n=(t.background,t.drawable),r=n&&n.image;if(r){var a=n.rect,o=a[2],s=a[3];e||i||(e=t.width=o,i=t.height=s),this.batchIndex>=this.maxBatchNum&&this._renderBatches();var l=this._createVertexs(r,a[0],a[1],o,s,0,0,e,i),h=this.batchIndex*this.positionStride,c=this.float32Array,u=this.uint32Array,d=(t.tint>>16)+(65280&t.tint)+((255&t.tint)<<16)+(255*t.__webglRenderAlpha<<24);c[h+0]=l[0],c[h+1]=l[1],c[h+2]=l[2],c[h+3]=l[3],u[h+4]=d,c[h+5]=l[4],c[h+6]=l[5],c[h+7]=l[6],c[h+8]=l[7],u[h+9]=d,c[h+10]=l[8],c[h+11]=l[9],c[h+12]=l[10],c[h+13]=l[11],u[h+14]=d,c[h+15]=l[12],c[h+16]=l[13],c[h+17]=l[14],c[h+18]=l[15],u[h+19]=d;for(var f=t.__webglWorldMatrix,p=0;p<4;p++){var v=c[h+5*p],m=c[h+5*p+1];c[h+5*p]=f.a*v+f.c*m+f.tx,c[h+5*p+1]=f.b*v+f.d*m+f.ty}t.__textureImage=r,this.sprites[this.batchIndex++]=t}},endDraw:function(t){t===this.stage&&this._renderBatches()},transform:function(t){var e=t.drawable;if(e&&e.domElement)return void i.setElementStyleByView(t);var n=t.scaleX,a=t.scaleY;if(t===this.stage){var o=this.canvas.style,s=t._scaleX,l=t._scaleY,h=!1;(!s&&1!=n||s&&s!=n)&&(t._scaleX=n,o.width=n*t.width+"px",h=!0),(!l&&1!=a||l&&l!=a)&&(t._scaleY=a,o.height=a*t.height+"px",h=!0),h&&t.updateViewport(),t.__webglWorldMatrix=t.__webglWorldMatrix||new r(1,0,0,1,0,0)}else t.parent&&(t.__webglWorldMatrix=t.__webglWorldMatrix||new r(1,0,0,1,0,0),this._setConcatenatedMatrix(t,t.parent));t.alpha>0&&(t.parent&&t.parent.__webglRenderAlpha?t.__webglRenderAlpha=t.alpha*t.parent.__webglRenderAlpha:t.__webglRenderAlpha=t.alpha)},remove:function(t){var e=t.drawable,i=e&&e.domElement;if(i){var n=i.parentNode;n&&n.removeChild(i)}},clear:function(t,e,i,n){this.gl.clear(this.gl.COLOR_BUFFER_BIT)},resize:function(t,e){if(this.width!==t||this.height!==e){var i=this.canvas,n=this.stage,r=i.style;this.width=i.width=t,this.height=i.height=e,r.width=n.width*n.scaleX+"px",r.height=n.height*n.scaleY+"px",this.gl.viewport(0,0,t,e),this.canvasHalfWidth=.5*t,this.canvasHalfHeight=.5*e,this._uploadProjectionTransform(!0)}},_renderBatches:function(){var t=this.gl;t.bufferSubData(t.ARRAY_BUFFER,0,this.uint32Array.subarray(0,this.batchIndex*this.positionStride));for(var e=0,i=0,n=null,r=0;r0&&(i.bindTexture(i.TEXTURE_2D,this._getTexture(this.sprites[t])),i.drawElements(i.TRIANGLES,6*n,i.UNSIGNED_SHORT,6*t*2))},_uploadProjectionTransform:function(t){this._projectionTransformElements&&!t||(this._projectionTransformElements=new Float32Array([1/this.canvasHalfWidth,0,0,0,-1/this.canvasHalfHeight,0,-1,1,1])),this.gl.uniformMatrix3fv(this.u_projectionTransform,!1,this._projectionTransformElements)},_initShaders:function(){var t=" attribute vec2 a_position;\n attribute vec2 a_TexCoord;\n attribute vec4 a_tint;\n uniform mat3 u_projectionTransform;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_Position = vec4((u_projectionTransform * vec3(a_position, 1.0)).xy, 1.0, 1.0);\n v_TexCoord = a_TexCoord;\n v_tint = vec4(a_tint.rgb * a_tint.a, a_tint.a);\n }\n ",e="\n precision mediump float;\n uniform sampler2D u_Sampler;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_FragColor = texture2D(u_Sampler, v_TexCoord) * v_tint;\n }\n ";this.defaultShader=new s(this,{v:t,f:e},{attributes:["a_position","a_TexCoord","a_tint"],uniforms:["u_projectionTransform","u_Sampler"]})},_createVertexs:function(t,e,i,n,r,a,o,s,l){var h=this.__tempVertexs||[],c=t.width,u=t.height;n/=c,r/=u,e/=c,i/=u,s=s,l=l,a=a,o=o,n+e>1&&(n=1-e),r+i>1&&(r=1-i);var d=0;return h[d++]=a,h[d++]=o,h[d++]=e,h[d++]=i,h[d++]=a+s,h[d++]=o,h[d++]=e+n,h[d++]=i,h[d++]=a,h[d++]=o+l,h[d++]=e,h[d++]=i+r,h[d++]=a+s,h[d++]=o+l,h[d++]=e+n,h[d++]=i+r,h},_setConcatenatedMatrix:function(t,e){var i=t.__webglWorldMatrix,n=1,r=0,o=t.rotation%360,s=t.pivotX,l=t.pivotY,h=t.scaleX,c=t.scaleY;if(o){var u=o*a;n=Math.cos(u),r=Math.sin(u)}var d=t.getAlignPosition();i.a=n*h,i.b=r*h,i.c=-r*c,i.d=n*c,i.tx=d.x-i.a*s-i.c*l,i.ty=d.y-i.b*s-i.d*l,i.concat(e.__webglWorldMatrix)},_getTexture:function(t){var e=t.__textureImage,i=this._cacheTexture[e.src];return i||(i=this.activeShader.uploadTexture(e)),i}}),s=function(t,e,i){this.renderer=t,this.gl=t.gl,this.program=this._createProgram(this.gl,e.v,e.f),i=i||{},this.attributes=i.attributes||[],this.uniforms=i.uniforms||[]};s.prototype={active:function(){var t=this,e=t.renderer,i=t.gl,n=t.program;n&&i&&(e.activeShader=t,i.useProgram(n),t.attributes.forEach(function(t){e[t]=i.getAttribLocation(n,t),i.enableVertexAttribArray(e[t])}),t.uniforms.forEach(function(t){e[t]=i.getUniformLocation(n,t)}),t.width===e.width&&t.height===e.height||(t.width=e.width,t.height=e.height,e._uploadProjectionTransform()))},uploadTexture:function(t){var e=this.gl,i=this.renderer,n=e.createTexture(),r=i.u_Sampler;return e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,n),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,1),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.uniform1i(r,0),e.bindTexture(e.TEXTURE_2D,null),this.renderer._cacheTexture[t.src]=n,n},_createProgram:function(t,e,i){var n=this._createShader(t,t.VERTEX_SHADER,e),r=this._createShader(t,t.FRAGMENT_SHADER,i);if(!n||!r)return null;var a=t.createProgram();if(a){t.attachShader(a,n),t.attachShader(a,r),t.linkProgram(a),t.deleteShader(r),t.deleteShader(n);var o=t.getProgramParameter(a,t.LINK_STATUS);if(!o){var s=t.getProgramInfoLog(a);return console.log("Failed to link program: "+s),t.deleteProgram(a),null}}return a},_createShader:function(t,e,i){var n=t.createShader(e);if(n){t.shaderSource(n,i),t.compileShader(n);var r=t.getShaderParameter(n,t.COMPILE_STATUS);if(!r){var a=t.getShaderInfoLog(n);return console.log("Failed to compile shader: "+a),t.deleteShader(n),null}}return n}},t.Hilo.WebGLRenderer=o}(window),function(t){t.Hilo||(t.Hilo={});var e=t.Hilo,i=t.Hilo.Class,n=t.Hilo.EventMixin,r=t.Hilo.Matrix,a=t.Hilo.util,o=function(){function t(t,e,i){for(var n,r,a,o,s=0,l=!1,h=0,c=i.length;hd.x?(n=d.x,r=u.x):(n=u.x,r=d.x),t>=n&&t<=r))l=!0;else if(u.y>d.y?(a=d.y,o=u.y):(a=u.y,o=d.y),!(eo)){var f=(e-u.y)*(d.x-u.x)/(d.y-u.y)+u.x;if(f>t?s++:f==t&&(l=!0),u.x>t&&u.y==e){var p=i[(c+h-1)%c];(p.ye||p.y>e&&d.ys?s=c:ch?h=c:c=0)return!1;u>i.overlap&&(i.overlap=u,i.normal.x=p.x,i.normal.y=p.y)}return i}return i.create({Mixes:n,constructor:function(t){t=t||{},this.id=this.id||t.id||e.getUid("View"),a.copy(this,t,!0)},tint:16777215,id:null,x:0,y:0,width:0,height:0,alpha:1,rotation:0,visible:!0,pivotX:0,pivotY:0,scaleX:1,scaleY:1,pointerEnabled:!0,background:null,mask:null,align:null,drawable:null,boundsArea:null,parent:null,depth:-1,blendMode:"source-over",getStage:function(){for(var t,e=this;t=e.parent;)e=t;return e.canvas?e:null},getScaledWidth:function(){return this.width*this.scaleX},getScaledHeight:function(){return this.height*this.scaleY},addTo:function(t,e){return"number"==typeof e?t.addChildAt(this,e):t.addChild(this),this},removeFromParent:function(){var t=this.parent;return t&&t.removeChild(this),this},getBounds:function(){for(var t,e,i,n,r,a,o,s=this.width,l=this.height,h=this.getConcatenatedMatrix(),c=this.boundsArea||[{x:0,y:0},{x:s,y:0},{x:s,y:l},{x:0,y:l}],u=[],d=0,f=c.length;de?n=e:ri?a=i:o>1,n=0;break;case"TR":i=o-r,n=0;break;case"L":i=0,n=s-a>>1;break;case"C":i=o-r>>1,n=s-a>>1;break;case"R":i=o-r,n=s-a>>1;break;case"BL":i=0,n=s-a;break;case"B":i=o-r>>1,n=s-a;break;case"BR":i=o-r,n=s-a}}return{x:i,y:n}},hitTestPoint:function(e,i,n){var r=this.getBounds(),a=e>=r.x&&e<=r.x+r.width&&i>=r.y&&i<=r.y+r.height;return a&&n&&(a=t(e,i,r)),a},hitTestObject:function(t,e){var i=this.getBounds(),n=t.getBounds(),r=i.x<=n.x+n.width&&n.x<=i.x+i.width&&i.y<=n.y+n.height&&n.y<=i.y+i.height;return r&&e&&(r=o(i,n)),!!r},_render:function(t,e){this.onUpdate&&this.onUpdate(e)===!1||!t.startDraw(this)||(t.transform(this),this.render(t,e),t.endDraw(this))},_fireMouseEvent:function(t){if(t.eventCurrentTarget=this,this.fire(t),"mousemove"==t.type){if(!this.__mouseOver){this.__mouseOver=!0;var e=a.copy({},t);e.type="mouseover",this.fire(e)}}else"mouseout"==t.type&&(this.__mouseOver=!1);var i=this.parent;t._stopped||t._stopPropagationed||!i||("mouseout"==t.type||"touchout"==t.type?i.hitTestPoint(t.stageX,t.stageY,!0)||i._fireMouseEvent(t):i._fireMouseEvent(t))},onUpdate:null,render:function(t,e){t.draw(this)},toString:function(){return e.viewToString(this)}})}();t.Hilo.View=o}(window),function(t){t.Hilo||(t.Hilo={});var e,i,n=t.Hilo.Drawable,r=t.Hilo.browser,a={_cacheDirty:!0,cache:function(t){(t||this._cacheDirty||!this.drawable)&&this.updateCache()},updateCache:function(){r.supportCanvas&&(e||(e=document.createElement("canvas"),i=e.getContext("2d")),e.width=this.width,e.height=this.height,this._draw(i),this.drawable=this.drawable||new n,this.drawable.init({image:e.toDataURL()}),this._cacheDirty=!1)},setCacheDirty:function(t){this._cacheDirty=t}};t.Hilo.CacheMixin=a}(window),function(t){t.Hilo||(t.Hilo={});var e=t.Hilo,i=t.Hilo.Class,n=t.Hilo.View,r=i.create({Extends:n,constructor:function(t){t=t||{},this.id=this.id||t.id||e.getUid("Container"),r.superclass.constructor.call(this,t),this.children?this._updateChildren():this.children=[]},children:null,pointerChildren:!0,clipChildren:!1,getNumChildren:function(){return this.children.length},addChildAt:function(t,e){var i=this.children,n=i.length,r=t.parent;e=e<0?0:e>n?n:e;var a=this.getChildIndex(t);if(a==e)return this;if(a>=0?(i.splice(a,1),e=e==n?n-1:e):r&&r.removeChild(t),i.splice(e,0,t),a<0)this._updateChildren(e);else{var o=a=e.length)return null;var i=e[t];if(i){if(!i.__renderer)for(var n=i;n=n.parent;){if(n.renderer){i.__renderer=n.renderer;break}if(n.__renderer){i.__renderer=n.__renderer;break}}i.__renderer&&i.__renderer.remove(i),i.parent=null,i.depth=-1}return e.splice(t,1),this._updateChildren(t),i},removeChild:function(t){return this.removeChildAt(this.getChildIndex(t))},removeChildById:function(t){for(var e,i=this.children,n=0,r=i.length;n=e.length?null:e[t]},getChildById:function(t){for(var e,i=this.children,n=0,r=i.length;n=0&&n!=e){var r=i.length;e=e<0?0:e>=r?r-1:e,i.splice(n,1),i.splice(e,0,t),this._updateChildren()}return this},swapChildren:function(t,e){var i=this.children,n=this.getChildIndex(t),r=this.getChildIndex(e);t.depth=r,i[r]=t,e.depth=n,i[n]=e},swapChildrenAt:function(t,e){var i=this.children,n=this.getChildAt(t),r=this.getChildAt(e);n.depth=e,i[e]=n,r.depth=t,i[t]=r},sortChildren:function(t){var e=t,i=this.children;if("string"==typeof e){var n=e;e=function(t,e){return e[n]-t[n]}}i.sort(e),this._updateChildren()},_updateChildren:function(t,e){var i,n=this.children;t=t||0,e=e||n.length;for(var r=t;r=0;h--)if(a=l[h],!(!a||!a.visible||a.alpha<=0||r&&!a.pointerEnabled))if(a.children&&a.children.length&&(!r||a.pointerChildren)&&(o=a.getViewAtPoint(t,e,i,n,r)),o){if(!n)return o;o.length&&(s=s.concat(o))}else if(a.hitTestPoint(t,e,i)){if(!n)return a;s.push(a)}return n&&s.length?s:null},render:function(t,e){r.superclass.render.call(this,t,e);var i,n,a,o=this.children.slice(0);for(i=0,n=o.length;in?n:e,i[e]=t,t.name&&(this._frameNames[t.name]=t),(0!=e||this.width)&&this.height||(this.width=t.rect[2],this.height=t.rect[3]),this},getFrame:function(t){if("number"==typeof t){var e=this._frames;return t<0||t>=e.length?null:e[t]}return this._frameNames[t]},getFrameIndex:function(t){var e=this._frames,i=e.length,n=-1;if("number"==typeof t)n=t;else{var r="string"==typeof t?this._frameNames[t]:t;if(r)for(var a=0;a=i?i-1:n,this.paused=e,this._firstRender=!0,this},_render:function(t,e){var i,n=this.currentFrame;if(this._firstRender?(i=n,this._firstRender=!1):i=this._nextFrame(e),i!=n){this.currentFrame=i;var r=this._frames[i].callback;r&&r.call(this)}this.onEnterFrame&&this.onEnterFrame(i),this.drawable.init(this._frames[i]),a.superclass._render.call(this,t,e)},_nextFrame:function(t){var e=this._frames,i=e.length,n=this.currentFrame,r=e[n],a=r.duration||this.interval,o=this._frameElapsed,s=0!=n||this.drawable?o+(this.timeBased?t:1):0;return o=this._frameElapsed=s=i-1)&&this.stop(),this.paused||0!=o||(null!=r.next?n=this.getFrameIndex(r.next):n>=i-1?n=0:this.drawable&&n++),n},setFrameCallback:function(t,e){return t=this.getFrame(t),t&&(t.callback=e),this},onEnterFrame:null});t.Hilo.Sprite=a}(window),function(t){t.Hilo||(t.Hilo={});var e=t.Hilo,i=t.Hilo.Class,n=t.Hilo.View,r=t.Hilo.Drawable,a=i.create({Extends:n,constructor:function(t){t=t||{},this.id=this.id||t.id||e.getUid("DOMElement"),a.superclass.constructor.call(this,t),this.drawable=new r;var i=this.drawable.domElement=t.element||e.createElement("div");i.id=this.id,this.pointerEnabled&&(i.style.pointerEvents="visible")},_render:function(t,e){this.onUpdate&&this.onUpdate(e)===!1||(t.transform(this),this.visible&&this.alpha>0&&this.render(t,e))},render:function(t,e){if("dom"!==t.renderType){var i,n=t.canvas,r=this.drawable.domElement,a=this.depth,o=n.nextSibling;if(r.parentNode)return;for(;o&&3!=o.nodeType&&(i=parseInt(o.style.zIndex)||0,!(i<=0||i>a));)o=o.nextSibling;n.parentNode.insertBefore(this.drawable.domElement,o)}else t.draw(this)}});t.Hilo.DOMElement=a}(window),function(t){t.Hilo||(t.Hilo={});var e=t.Hilo,i=t.Hilo.Class,n=t.Hilo.View,r=t.Hilo.CacheMixin,a=function(){var t=document.createElement("canvas"),o=t.getContext&&t.getContext("2d");return i.create({Extends:n,Mixes:r,constructor:function(t){t=t||{},this.id=this.id||t.id||e.getUid("Graphics"),a.superclass.constructor.call(this,t),this._actions=[]},lineWidth:1,lineAlpha:1,lineCap:null,lineJoin:null,miterLimit:10,hasStroke:!1,strokeStyle:"0",hasFill:!1,fillStyle:"0",fillAlpha:0,lineStyle:function(t,e,i,n,r,a){var o=this,s=o._addAction;return s.call(o,["lineWidth",o.lineWidth=t||1]),s.call(o,["strokeStyle",o.strokeStyle=e||"0"]),s.call(o,["lineAlpha",o.lineAlpha=i||1]),void 0!=n&&s.call(o,["lineCap",o.lineCap=n]),void 0!=r&&s.call(o,["lineJoin",o.lineJoin=r]),void 0!=a&&s.call(o,["miterLimit",o.miterLimit=a]),o.hasStroke=!0,o},beginFill:function(t,e){var i=this,n=i._addAction;return n.call(i,["fillStyle",i.fillStyle=t]),n.call(i,["fillAlpha",i.fillAlpha=e||1]),i.hasFill=!0,i},endFill:function(){var t=this,e=t._addAction;return t.hasStroke&&e.call(t,["stroke"]),t.hasFill&&e.call(t,["fill"]),t.setCacheDirty(!0),t},beginLinearGradientFill:function(t,e,i,n,r,a){for(var s=this,l=o.createLinearGradient(t,e,i,n),h=0,c=r.length;h1?a.slice(1):null;"function"==typeof t[o]?t[o].apply(t,s):t[o]=a[1]}},render:function(t,e){var i=this;"canvas"===t.renderType?i._draw(t.context):(i.cache(),t.draw(i))},clear:function(){var t=this;return t._actions.length=0,t.lineWidth=1,t.lineAlpha=1,t.lineCap=null,t.lineJoin=null,t.miterLimit=10,t.hasStroke=!1,t.strokeStyle="0",t.hasFill=!1,t.fillStyle="0",t.fillAlpha=1,t.setCacheDirty(!0),t},_addAction:function(t){var e=this;return e._actions.push(t),e}})}();t.Hilo.Graphics=a}(window),function(t){t.Hilo||(t.Hilo={});var e=t.Hilo.Class,i=t.Hilo,n=t.Hilo.View,r=t.Hilo.CacheMixin,a=e.create({Extends:n,Mixes:r,constructor:function(t){t=t||{},this.id=this.id||t.id||i.getUid("Text"),a.superclass.constructor.call(this,t),t.font||(this.font="12px arial"),this._fontHeight=a.measureFontHeight(this.font)},text:null,color:"#000",textAlign:null,textVAlign:null,outline:!1,lineSpacing:0,maxWidth:200,font:null,textWidth:0,textHeight:0,setFont:function(t){var e=this;return e.font!==t&&(e.font=t,e._fontHeight=a.measureFontHeight(t)),e},render:function(t,e){var i=this;if("canvas"===t.renderType)this.drawable?t.draw(i):i._draw(t.context);else if("dom"===t.renderType){var n=i.drawable,r=n.domElement,a=r.style;a.font=i.font,a.textAlign=i.textAlign,a.color=i.color,a.width=i.width+"px",a.height=i.height+"px",a.lineHeight=i._fontHeight+i.lineSpacing+"px",r.innerHTML=i.text,t.draw(this)}else i.cache(),t.draw(i)},_draw:function(t){var e=this,i=e.text.toString();if(i){t.font=e.font,t.textAlign=e.textAlign,t.textBaseline="top";var n,r,a,o,s,l=i.split(/\r\n|\r|\n|/),h=0,c=0,u=e._fontHeight+e.lineSpacing,d=[];for(n=0,o=l.length;ne.maxWidth?(d.push({text:m,y:c}),h>1;break;case"bottom":_=e.height-e.textHeight}var x=e.background;for(x&&(t.fillStyle=x,t.fillRect(0,0,e.width,e.height)),e.outline?t.strokeStyle=e.color:t.fillStyle=e.color,n=0;n>1;break;case"right":case"end":r=a}n.outline?t.strokeText(e,r,i):t.fillText(e,r,i)},Statics:{measureFontHeight:function(t){var e,n=document.documentElement,r=i.createElement("div",{style:{font:t,position:"absolute"},innerHTML:"M"});return n.appendChild(r),e=r.offsetHeight,n.removeChild(r),e}}});t.Hilo.Text=a}(window),function(t){t.Hilo||(t.Hilo={});var e=t.Hilo.Class,i=t.Hilo,n=t.Hilo.Container,r=t.Hilo.Bitmap,a=e.create({Extends:n,constructor:function(t){t=t||{},this.id=this.id||t.id||i.getUid("BitmapText"),a.superclass.constructor.call(this,t);var e=t.text+"";e&&(this.text="",this.setText(e)),this.pointerChildren=!1},glyphs:null,letterSpacing:0,text:"",textAlign:"left",setText:function(t){var e=this,i=t.toString(),n=i.length;if(e.text!=i){e.text=i;var r,a,o,s,l=0,h=0,c=0;for(r=0;r0?e.letterSpacing:0),e.children[r]?(s=e.children[r],s.setImage(o.image,o.rect)):(s=e._createBitmap(o),e.addChild(s)),s.x=c,l=c+o.rect[2],h=Math.max(h,o.rect[3]));for(r=e.children.length-1;r>=n;r--)e._releaseBitmap(e.children[r]),e.children[r].removeFromParent();return e.width=l,e.height=h,this.setTextAlign(),e}},_createBitmap:function(t){var e;return a._pool.length?(e=a._pool.pop(),e.setImage(t.image,t.rect)):e=new r({image:t.image,rect:t.rect}),e},_releaseBitmap:function(t){a._pool.push(t)},setTextAlign:function(t){switch(this.textAlign=t||this.textAlign,this.textAlign){case"center":this.pivotX=.5*this.width;break;case"right":this.pivotX=this.width;break;case"left":default:this.pivotX=0}return this},hasGlyphs:function(t){var e=this.glyphs;if(!e)return!1;t=t.toString();var i,n=t.length;for(i=0;i=this._targetFPS?(this._measuredFPS=1e3/(this._tickTime/this._tickCount)+.5>>0,this._tickCount=0,this._tickTime=0):this._tickTime+=t-this._lastTime,this._lastTime=t;for(var n=i.slice(0),r=0,a=n.length;r=0&&e.splice(i,1)},nextTick:function(t){var e=this,i={tick:function(n){e.removeTick(i),t()}};return e.addTick(i),i},timeout:function(t,e){var i=this,n=(new Date).getTime()+e,r={tick:function(){var e=(new Date).getTime(),a=e-n;a>=0&&(i.removeTick(r),t())}};return i.addTick(r),r},interval:function(t,e){var i=this,n=(new Date).getTime()+e,r={tick:function(){var i=(new Date).getTime(),r=i-n;r>=0&&(r=n)return-1;for(e<0&&(e=n+e),i=e;i=1?1:s;var h=r.ease?r.ease(s):s;r.reverse&&(r._reverseFlag<0&&(s=1-s,h=1-h),s<1e-7&&(r.repeat>0&&r._repeatCount++>=r.repeat||0==r.repeat&&!r.loop?l=!0:(r._startTime=t(),r._pausedTime=0,r._reverseFlag*=-1))),0==r.time&&(o=r.onStart)&&o.call(r,r),r.time=a,r._render(h),(o=r.onUpdate)&&o.call(r,s,r),s>=1&&(r.reverse?(r._startTime=t(),r._pausedTime=0,r._reverseFlag*=-1):r.loop||r.repeat>0&&r._repeatCount++0&&u<=e?(c._render(s),c.time=a,i.add(c)):l&&(u<0||u>e)&&c.start()}return l?((o=r.onComplete)&&o.call(r,r),!0):void 0}}},Statics:{_tweens:[],tick:function(){var e,n,r=i._tweens,a=r.length;for(n=0;n-1&&r.splice(e,1);else for(e=0;e=i)return void t.fire("complete");if(t._currentIndexe.z})},tick:function(){this.sortZ()}});return o}();t.Hilo.Camera3d=n}(window),function(t){t.Hilo||(t.Hilo={});var e=t.Hilo,i=t.Hilo.Class,n=t.Hilo.View,r=t.Hilo.Container,a=t.Hilo.Drawable,o=t.Hilo.util,s=function(){function t(t,e){return e?t+2*(Math.random()-.5)*e:t}for(var s=["x","y","vx","vy","ax","ay","rotation","rotationV","scale","scaleV","alpha","alphaV","life"],l=[],h=0,c=s.length;h=this._emitTime&&(this._currentRunTime=0,this._emitTime=t(this.emitTime,this.emitTimeVar),this._emit()),this._totalRunTime>=this.totalTime&&this.stop())},_emit:function(){for(var e=t(this.emitNum,this.emitNumVar)>>0,i=0;i=0;e--)this.children[e].destroy()}}),v=i.create({Extends:n,constructor:function(t){this.id=this.id||t.id||e.getUid("Particle"),v.superclass.constructor.call(this,t),this.init(t)},onUpdate:function(t){if(t*=.001,this._died)return!1;var e=this.ax+this.system.gx,i=this.ay+this.system.gy;return this.vx+=e*t,this.vy+=i*t,this.x+=this.vx*t,this.y+=this.vy*t,this.rotation+=this.rotationV,this._time>.1&&(this.alpha+=this.alphaV),this.scale+=this.scaleV,this.scaleX=this.scaleY=this.scale,this._time+=t,this._time>=this.life||this.alpha<=0?(this.destroy(),!1):void 0},setImage:function(t,e){this.drawable=this.drawable||new a,e=e||[0,0,t.width,t.height],this.width=e[2],this.height=e[3],this.drawable.rect=e,this.drawable.image=t},destroy:function(){this._died=!0,this.alpha=0,this.removeFromParent(),f.push(this)},init:function(e){this.system=e.system,this._died=!1,this._time=0,this.alpha=1;for(var i=0,n=l.length;i>0]),this.setImage(e.image,o),void 0!==e.pivotX&&(this.pivotX=e.pivotX*o[2]),void 0!==e.pivotY&&(this.pivotY=e.pivotY*o[3])}},Statics:{create:function(t){if(f.length>0){var e=f.pop();return e.init(t),e}return new v(t)}}});return p}();t.Hilo.ParticleSystem=s}(window); \ No newline at end of file diff --git a/build/standalone/hilo-standalone.zip b/build/standalone/hilo-standalone.zip index 1aacbba65ec3befda89d3e81a772e3d97ab665a8..a4f97bf68eb78559ced849964bbb71019b5ed747 100644 GIT binary patch delta 130804 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%0D5KWLMmd@ZIG2;r^8NhQu*it5riqh(3`SE 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�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
    &PK~LQ>pYMmY>=R8`rWyfnDged=MViVO=10f6}f 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"_"),t+e}return e},viewToString:function(t){for(var e,o=t;o;)e=e?o.id+"."+e:o.id,o=o.parent;return e},copy:function(t,e,a){return o.copy(t,e,a),s.copy||(s.copy=!0,console.warn("Hilo.copy has been Deprecated! Use Hilo.util.copy instead.")),t},browser:e,event:function(){var t="ontouchstart"in a;return{POINTER_START:t?"touchstart":"mousedown",POINTER_MOVE:t?"touchmove":"mousemove",POINTER_END:t?"touchend":"mouseup"}}(),align:{TOP_LEFT:"TL",TOP:"T",TOP_RIGHT:"TR",LEFT:"L",CENTER:"C",RIGHT:"R",BOTTOM_LEFT:"BL",BOTTOM:"B",BOTTOM_RIGHT:"BR"},getElementRect:function(t){var e;try{e=t.getBoundingClientRect()}catch(o){e={top:t.offsetTop,left:t.offsetLeft,right:t.offsetLeft+t.offsetWidth,bottom:t.offsetTop+t.offsetHeight}}var n=(a.pageXOffset||r.scrollLeft)-(r.clientLeft||0)||0,i=(a.pageYOffset||r.scrollTop)-(r.clientTop||0)||0,s=a.getComputedStyle?getComputedStyle(t):t.currentStyle,c=parseInt,h=c(s.paddingLeft)+c(s.borderLeftWidth)||0,d=c(s.paddingTop)+c(s.borderTopWidth)||0,f=c(s.paddingRight)+c(s.borderRightWidth)||0,l=c(s.paddingBottom)+c(s.borderBottomWidth)||0,g=e.top||0,p=e.left||0,u=e.right||0,m=e.bottom||0;return{left:p+n+h,top:g+i+d,width:u-f-p-h,height:m-l-g-d}},createElement:function(t,e){var o,a,r,i=n.createElement(t);for(o in e)if(a=e[o],"style"===o)for(r in a)i.style[r]=a[r];else i[o]=a;return i},getElement:function(t){return n.getElementById(t)},setElementStyleByView:function(t){var e=t.drawable,o=e.domElement.style,a=t._stateCache||(t._stateCache={}),n=c.browser.jsVendor,r="px",i=!1;if(this.cacheStateIfChanged(t,["visible"],a)&&(o.display=t.visible?"":"none"),this.cacheStateIfChanged(t,["alpha"],a)&&(o.opacity=t.alpha),t.visible&&!(t.alpha<=0)){this.cacheStateIfChanged(t,["width"],a)&&(o.width=t.width+r),this.cacheStateIfChanged(t,["height"],a)&&(o.height=t.height+r),this.cacheStateIfChanged(t,["depth"],a)&&(o.zIndex=t.depth+1),(i=this.cacheStateIfChanged(t,["pivotX","pivotY"],a))&&(o[n+"TransformOrigin"]=t.pivotX+r+" "+t.pivotY+r),(this.cacheStateIfChanged(t,["x","y","rotation","scaleX","scaleY"],a)||i)&&(o[n+"Transform"]=this.getTransformCSS(t)),this.cacheStateIfChanged(t,["background"],a)&&(o.backgroundColor=t.background),o.pointerEvents||(o.pointerEvents="none");var s=e.image;if(s){var h=s.src;h!==a.image&&(a.image=h,o.backgroundImage="url("+h+")");var d=e.rect;if(d){var f=d[0],l=d[1];f!==a.sx&&(a.sx=f,o.backgroundPositionX=-f+r),l!==a.sy&&(a.sy=l,o.backgroundPositionY=-l+r)}}var g=t.mask;if(g){var p=g.drawable.domElement.style.backgroundImage;p!==a.maskImage&&(a.maskImage=p,o[n+"MaskImage"]=p,o[n+"MaskRepeat"]="no-repeat");var u=g.x,m=g.y;u===a.maskX&&m===a.maskY||(a.maskX=u,a.maskY=m,o[n+"MaskPosition"]=u+r+" "+m+r)}}},cacheStateIfChanged:function(t,e,o){var a,n,r,i,s=!1;for(a=0,n=e.length;a=48&&o<=57&&(t+="_"),t+e}return e},viewToString:function(t){for(var e,o=t;o;)e=e?o.id+"."+e:o.id,o=o.parent;return e},copy:function(t,e,a){return o.copy(t,e,a),s.copy||(s.copy=!0,console.warn("Hilo.copy has been Deprecated! Use Hilo.util.copy instead.")),t},browser:e,event:function(){var t="ontouchstart"in a;return{POINTER_START:t?"touchstart":"mousedown",POINTER_MOVE:t?"touchmove":"mousemove",POINTER_END:t?"touchend":"mouseup"}}(),align:{TOP_LEFT:"TL",TOP:"T",TOP_RIGHT:"TR",LEFT:"L",CENTER:"C",RIGHT:"R",BOTTOM_LEFT:"BL",BOTTOM:"B",BOTTOM_RIGHT:"BR"},getElementRect:function(t){var e;try{e=t.getBoundingClientRect()}catch(o){e={top:t.offsetTop,left:t.offsetLeft,right:t.offsetLeft+t.offsetWidth,bottom:t.offsetTop+t.offsetHeight}}var n=(a.pageXOffset||r.scrollLeft)-(r.clientLeft||0)||0,i=(a.pageYOffset||r.scrollTop)-(r.clientTop||0)||0,s=a.getComputedStyle?getComputedStyle(t):t.currentStyle,c=parseInt,h=c(s.paddingLeft)+c(s.borderLeftWidth)||0,d=c(s.paddingTop)+c(s.borderTopWidth)||0,f=c(s.paddingRight)+c(s.borderRightWidth)||0,l=c(s.paddingBottom)+c(s.borderBottomWidth)||0,g=e.top||0,p=e.left||0,u=e.right||0,m=e.bottom||0;return{left:p+n+h,top:g+i+d,width:u-f-p-h,height:m-l-g-d}},createElement:function(t,e){var o,a,r,i=n.createElement(t);for(o in e)if(a=e[o],"style"===o)for(r in a)i.style[r]=a[r];else i[o]=a;return i},getElement:function(t){return n.getElementById(t)},setElementStyleByView:function(t){var e=t.drawable,o=e.domElement.style,a=t._stateCache||(t._stateCache={}),n=c.browser.jsVendor,r="px",i=!1;if(this.cacheStateIfChanged(t,["visible"],a)&&(o.display=t.visible?"":"none"),this.cacheStateIfChanged(t,["alpha"],a)&&(o.opacity=t.alpha),t.visible&&!(t.alpha<=0)){this.cacheStateIfChanged(t,["width"],a)&&(o.width=t.width+r),this.cacheStateIfChanged(t,["height"],a)&&(o.height=t.height+r),this.cacheStateIfChanged(t,["depth"],a)&&(o.zIndex=t.depth+1),(i=this.cacheStateIfChanged(t,["pivotX","pivotY"],a))&&(o[n+"TransformOrigin"]=t.pivotX+r+" "+t.pivotY+r),(this.cacheStateIfChanged(t,["x","y","rotation","scaleX","scaleY"],a)||i)&&(o[n+"Transform"]=this.getTransformCSS(t)),this.cacheStateIfChanged(t,["background"],a)&&(o.backgroundColor=t.background),o.pointerEvents||(o.pointerEvents="none");var s=e.image;if(s){var h=s.src;h!==a.image&&(a.image=h,o.backgroundImage="url("+h+")");var d=e.rect;if(d){var f=d[0],l=d[1];f!==a.sx&&(a.sx=f,o.backgroundPositionX=-f+r),l!==a.sy&&(a.sy=l,o.backgroundPositionY=-l+r)}}var g=t.mask;if(g){var p=g.drawable.domElement.style.backgroundImage;p!==a.maskImage&&(a.maskImage=p,o[n+"MaskImage"]=p,o[n+"MaskRepeat"]="no-repeat");var u=g.x,m=g.y;u===a.maskX&&m===a.maskY||(a.maskX=u,a.maskY=m,o[n+"MaskPosition"]=u+r+" "+m+r)}}},cacheStateIfChanged:function(t,e,o){var a,n,r,i,s=!1;for(a=0,n=e.length;a> 1; - y = 0; - break; - case 'TR': - x = pw - w; - y = 0; - break; - case 'L': - x = 0; - y = ph - h >> 1; - break; - case 'C': - x = pw - w >> 1; - y = ph - h >> 1; - break; - case 'R': - x = pw - w; - y = ph - h >> 1; - break; - case 'BL': - x = 0; - y = ph - h; - break; - case 'B': - x = pw - w >> 1; - y = ph - h; - break; - case 'BR': - x = pw - w; - y = ph - h; - break; - } - } - } + var pos = target.getAlignPosition(); + x = pos.x; + y = pos.y; } if(x != 0 || y != 0) ctx.translate(x, y); diff --git a/build/standalone/hilo/renderer/CanvasRenderer.min.js b/build/standalone/hilo/renderer/CanvasRenderer.min.js index d9d1cb49..db1515eb 100644 --- a/build/standalone/hilo/renderer/CanvasRenderer.min.js +++ b/build/standalone/hilo/renderer/CanvasRenderer.min.js @@ -1,6 +1,6 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ -!function(e){e.Hilo||(e.Hilo={});var t=e.Hilo.Class,a=e.Hilo,i=e.Hilo.Renderer,r=t.create({Extends:i,constructor:function(e){r.superclass.constructor.call(this,e),this.context=this.canvas.getContext("2d")},renderType:"canvas",context:null,startDraw:function(e){return!!(e.visible&&e.alpha>0)&&(e===this.stage&&this.context.clearRect(0,0,e.width,e.height),e.blendMode!==this.blendMode&&(this.context.globalCompositeOperation=this.blendMode=e.blendMode),this.context.save(),!0)},draw:function(e){var t=this.context,a=e.width,i=e.height,r=e.background;r&&(t.fillStyle=r,t.fillRect(0,0,a,i));var s=e.drawable,n=s&&s.image;if(n){var l=s.rect,c=l[2],o=l[3],h=l[4],d=l[5];if(!c||!o)return;a||i||(a=e.width=c,i=e.height=o),(h||d)&&t.translate(h-.5*c,d-.5*o),t.drawImage(n,l[0],l[1],c,o,0,0,a,i)}},endDraw:function(e){this.context.restore()},transform:function(e){var t=e.drawable;if(t&&t.domElement)return void a.setElementStyleByView(e);var i=this.context,r=e.scaleX,s=e.scaleY;if(e===this.stage){var n=this.canvas.style,l=e._scaleX,c=e._scaleY,o=!1;(!l&&1!=r||l&&l!=r)&&(e._scaleX=r,n.width=r*e.width+"px",o=!0),(!c&&1!=s||c&&c!=s)&&(e._scaleY=s,n.height=s*e.height+"px",o=!0),o&&e.updateViewport()}else{var h=e.x,d=e.y,v=e.pivotX,f=e.pivotY,w=e.rotation%360,g=e.mask;g&&(g._render(this),i.clip());var p=e.align;if(p)if("function"==typeof p)e.align();else{var b=e.parent;if(b){var u=e.width,x=e.height,m=b.width,k=b.height;switch(p){case"TL":h=0,d=0;break;case"T":h=m-u>>1,d=0;break;case"TR":h=m-u,d=0;break;case"L":h=0,d=k-x>>1;break;case"C":h=m-u>>1,d=k-x>>1;break;case"R":h=m-u,d=k-x>>1;break;case"BL":h=0,d=k-x;break;case"B":h=m-u>>1,d=k-x;break;case"BR":h=m-u,d=k-x}}}0==h&&0==d||i.translate(h,d),0!=w&&i.rotate(w*Math.PI/180),1==r&&1==s||i.scale(r,s),0==v&&0==f||i.translate(-v,-f)}e.alpha>0&&(i.globalAlpha*=e.alpha)},remove:function(e){var t=e.drawable,a=t&&t.domElement;if(a){var i=a.parentNode;i&&i.removeChild(a)}},clear:function(e,t,a,i){this.context.clearRect(e,t,a,i)},resize:function(e,t){var a=this.canvas,i=this.stage,r=a.style;a.width=e,a.height=t,r.width=i.width*i.scaleX+"px",r.height=i.height*i.scaleY+"px"}});e.Hilo.CanvasRenderer=r}(window); \ No newline at end of file +!function(t){t.Hilo||(t.Hilo={});var e=t.Hilo.Class,a=t.Hilo,i=t.Hilo.Renderer,n=e.create({Extends:i,constructor:function(t){n.superclass.constructor.call(this,t),this.context=this.canvas.getContext("2d")},renderType:"canvas",context:null,startDraw:function(t){return!!(t.visible&&t.alpha>0)&&(t===this.stage&&this.context.clearRect(0,0,t.width,t.height),t.blendMode!==this.blendMode&&(this.context.globalCompositeOperation=this.blendMode=t.blendMode),this.context.save(),!0)},draw:function(t){var e=this.context,a=t.width,i=t.height,n=t.background;n&&(e.fillStyle=n,e.fillRect(0,0,a,i));var r=t.drawable,l=r&&r.image;if(l){var s=r.rect,o=s[2],h=s[3],c=s[4],d=s[5];if(!o||!h)return;a||i||(a=t.width=o,i=t.height=h),(c||d)&&e.translate(c-.5*o,d-.5*h),e.drawImage(l,s[0],s[1],o,h,0,0,a,i)}},endDraw:function(t){this.context.restore()},transform:function(t){var e=t.drawable;if(e&&e.domElement)return void a.setElementStyleByView(t);var i=this.context,n=t.scaleX,r=t.scaleY;if(t===this.stage){var l=this.canvas.style,s=t._scaleX,o=t._scaleY,h=!1;(!s&&1!=n||s&&s!=n)&&(t._scaleX=n,l.width=n*t.width+"px",h=!0),(!o&&1!=r||o&&o!=r)&&(t._scaleY=r,l.height=r*t.height+"px",h=!0),h&&t.updateViewport()}else{var c=t.x,d=t.y,v=t.pivotX,g=t.pivotY,w=t.rotation%360,f=t.mask;f&&(f._render(this),i.clip());var p=t.align;if(p){var u=t.getAlignPosition();c=u.x,d=u.y}0==c&&0==d||i.translate(c,d),0!=w&&i.rotate(w*Math.PI/180),1==n&&1==r||i.scale(n,r),0==v&&0==g||i.translate(-v,-g)}t.alpha>0&&(i.globalAlpha*=t.alpha)},remove:function(t){var e=t.drawable,a=e&&e.domElement;if(a){var i=a.parentNode;i&&i.removeChild(a)}},clear:function(t,e,a,i){this.context.clearRect(t,e,a,i)},resize:function(t,e){var a=this.canvas,i=this.stage,n=a.style;a.width=t,a.height=e,n.width=i.width*i.scaleX+"px",n.height=i.height*i.scaleY+"px"}});t.Hilo.CanvasRenderer=n}(window); \ No newline at end of file diff --git a/build/standalone/hilo/renderer/DOMRenderer.js b/build/standalone/hilo/renderer/DOMRenderer.js index fab3deee..4ec65326 100644 --- a/build/standalone/hilo/renderer/DOMRenderer.js +++ b/build/standalone/hilo/renderer/DOMRenderer.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/renderer/DOMRenderer.min.js b/build/standalone/hilo/renderer/DOMRenderer.min.js index e5996298..a4586efa 100644 --- a/build/standalone/hilo/renderer/DOMRenderer.min.js +++ b/build/standalone/hilo/renderer/DOMRenderer.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/renderer/Renderer.js b/build/standalone/hilo/renderer/Renderer.js index 40fa008b..b00000c3 100644 --- a/build/standalone/hilo/renderer/Renderer.js +++ b/build/standalone/hilo/renderer/Renderer.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/renderer/Renderer.min.js b/build/standalone/hilo/renderer/Renderer.min.js index d3ef11e3..f4792e5f 100644 --- a/build/standalone/hilo/renderer/Renderer.min.js +++ b/build/standalone/hilo/renderer/Renderer.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/renderer/WebGLRenderer.js b/build/standalone/hilo/renderer/WebGLRenderer.js index 07b0d623..abbbd4af 100644 --- a/build/standalone/hilo/renderer/WebGLRenderer.js +++ b/build/standalone/hilo/renderer/WebGLRenderer.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -434,12 +434,13 @@ var WebGLRenderer = Class.create(/** @lends WebGLRenderer.prototype */{ sin = Math.sin(r); } + var pos = view.getAlignPosition(); mtx.a = cos*scaleX; mtx.b = sin*scaleX; mtx.c = -sin*scaleY; mtx.d = cos*scaleY; - mtx.tx = view.x - mtx.a * pivotX - mtx.c * pivotY; - mtx.ty = view.y - mtx.b * pivotX - mtx.d * pivotY; + mtx.tx = pos.x - mtx.a * pivotX - mtx.c * pivotY; + mtx.ty = pos.y - mtx.b * pivotX - mtx.d * pivotY; mtx.concat(ancestor.__webglWorldMatrix); }, diff --git a/build/standalone/hilo/renderer/WebGLRenderer.min.js b/build/standalone/hilo/renderer/WebGLRenderer.min.js index 0981c06f..2b65669d 100644 --- a/build/standalone/hilo/renderer/WebGLRenderer.min.js +++ b/build/standalone/hilo/renderer/WebGLRenderer.min.js @@ -1,6 +1,6 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ -!function(t){t.Hilo||(t.Hilo={});var e=t.Hilo.Class,r=t.Hilo,i=t.Hilo.Renderer,a=t.Hilo.Matrix,n=Math.PI/180,s=e.create({Extends:i,Statics:{MAX_BATCH_NUM:2e3,ATTRIBUTE_NUM:5,isSupport:function(){if(void 0==this._isSupported){var t=document.createElement("canvas");t.getContext&&(t.getContext("webgl")||t.getContext("experimental-webgl"))?this._isSupported=!0:this._isSupported=!1}return this._isSupported}},renderType:"webgl",gl:null,_isContextLost:!1,_cacheTexture:{},constructor:function(t){s.superclass.constructor.call(this,t);var e=this;this.gl=this.canvas.getContext("webgl")||this.canvas.getContext("experimental-webgl"),this.maxBatchNum=s.MAX_BATCH_NUM,this.positionStride=4*s.ATTRIBUTE_NUM;var r=this.maxBatchNum*s.ATTRIBUTE_NUM*4,i=6*this.maxBatchNum;this.arrayBuffer=new ArrayBuffer(4*r),this.float32Array=new Float32Array(this.arrayBuffer),this.uint32Array=new Uint32Array(this.arrayBuffer),this.indexs=new Uint16Array(i);for(var a=0,n=0;a0)&&(t===this.stage&&this.clear(),!0)},draw:function(t){var e=t.width,r=t.height,i=(t.background,t.drawable),a=i&&i.image;if(a){var n=i.rect,s=n[2],o=n[3];e||r||(e=t.width=s,r=t.height=o),this.batchIndex>=this.maxBatchNum&&this._renderBatches();var h=this._createVertexs(a,n[0],n[1],s,o,0,0,e,r),_=this.batchIndex*this.positionStride,c=this.float32Array,l=this.uint32Array,d=(t.tint>>16)+(65280&t.tint)+((255&t.tint)<<16)+(255*t.__webglRenderAlpha<<24);c[_+0]=h[0],c[_+1]=h[1],c[_+2]=h[2],c[_+3]=h[3],l[_+4]=d,c[_+5]=h[4],c[_+6]=h[5],c[_+7]=h[6],c[_+8]=h[7],l[_+9]=d,c[_+10]=h[8],c[_+11]=h[9],c[_+12]=h[10],c[_+13]=h[11],l[_+14]=d,c[_+15]=h[12],c[_+16]=h[13],c[_+17]=h[14],c[_+18]=h[15],l[_+19]=d;for(var u=t.__webglWorldMatrix,f=0;f<4;f++){var g=c[_+5*f],T=c[_+5*f+1];c[_+5*f]=u.a*g+u.c*T+u.tx,c[_+5*f+1]=u.b*g+u.d*T+u.ty}t.__textureImage=a,this.sprites[this.batchIndex++]=t}},endDraw:function(t){t===this.stage&&this._renderBatches()},transform:function(t){var e=t.drawable;if(e&&e.domElement)return void r.setElementStyleByView(t);var i=t.scaleX,n=t.scaleY;if(t===this.stage){var s=this.canvas.style,o=t._scaleX,h=t._scaleY,_=!1;(!o&&1!=i||o&&o!=i)&&(t._scaleX=i,s.width=i*t.width+"px",_=!0),(!h&&1!=n||h&&h!=n)&&(t._scaleY=n,s.height=n*t.height+"px",_=!0),_&&t.updateViewport(),t.__webglWorldMatrix=t.__webglWorldMatrix||new a(1,0,0,1,0,0)}else t.parent&&(t.__webglWorldMatrix=t.__webglWorldMatrix||new a(1,0,0,1,0,0),this._setConcatenatedMatrix(t,t.parent));t.alpha>0&&(t.parent&&t.parent.__webglRenderAlpha?t.__webglRenderAlpha=t.alpha*t.parent.__webglRenderAlpha:t.__webglRenderAlpha=t.alpha)},remove:function(t){var e=t.drawable,r=e&&e.domElement;if(r){var i=r.parentNode;i&&i.removeChild(r)}},clear:function(t,e,r,i){this.gl.clear(this.gl.COLOR_BUFFER_BIT)},resize:function(t,e){if(this.width!==t||this.height!==e){var r=this.canvas,i=this.stage,a=r.style;this.width=r.width=t,this.height=r.height=e,a.width=i.width*i.scaleX+"px",a.height=i.height*i.scaleY+"px",this.gl.viewport(0,0,t,e),this.canvasHalfWidth=.5*t,this.canvasHalfHeight=.5*e,this._uploadProjectionTransform(!0)}},_renderBatches:function(){var t=this.gl;t.bufferSubData(t.ARRAY_BUFFER,0,this.uint32Array.subarray(0,this.batchIndex*this.positionStride));for(var e=0,r=0,i=null,a=0;a0&&(r.bindTexture(r.TEXTURE_2D,this._getTexture(this.sprites[t])),r.drawElements(r.TRIANGLES,6*i,r.UNSIGNED_SHORT,6*t*2))},_uploadProjectionTransform:function(t){this._projectionTransformElements&&!t||(this._projectionTransformElements=new Float32Array([1/this.canvasHalfWidth,0,0,0,-1/this.canvasHalfHeight,0,-1,1,1])),this.gl.uniformMatrix3fv(this.u_projectionTransform,!1,this._projectionTransformElements)},_initShaders:function(){var t=" attribute vec2 a_position;\n attribute vec2 a_TexCoord;\n attribute vec4 a_tint;\n uniform mat3 u_projectionTransform;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_Position = vec4((u_projectionTransform * vec3(a_position, 1.0)).xy, 1.0, 1.0);\n v_TexCoord = a_TexCoord;\n v_tint = vec4(a_tint.rgb * a_tint.a, a_tint.a);\n }\n ",e="\n precision mediump float;\n uniform sampler2D u_Sampler;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_FragColor = texture2D(u_Sampler, v_TexCoord) * v_tint;\n }\n ";this.defaultShader=new o(this,{v:t,f:e},{attributes:["a_position","a_TexCoord","a_tint"],uniforms:["u_projectionTransform","u_Sampler"]})},_createVertexs:function(t,e,r,i,a,n,s,o,h){var _=this.__tempVertexs||[],c=t.width,l=t.height;i/=c,a/=l,e/=c,r/=l,o=o,h=h,n=n,s=s,i+e>1&&(i=1-e),a+r>1&&(a=1-r);var d=0;return _[d++]=n,_[d++]=s,_[d++]=e,_[d++]=r,_[d++]=n+o,_[d++]=s,_[d++]=e+i,_[d++]=r,_[d++]=n,_[d++]=s+h,_[d++]=e,_[d++]=r+a,_[d++]=n+o,_[d++]=s+h,_[d++]=e+i,_[d++]=r+a,_},_setConcatenatedMatrix:function(t,e){var r=t.__webglWorldMatrix,i=1,a=0,s=t.rotation%360,o=t.pivotX,h=t.pivotY,_=t.scaleX,c=t.scaleY;if(s){var l=s*n;i=Math.cos(l),a=Math.sin(l)}r.a=i*_,r.b=a*_,r.c=-a*c,r.d=i*c,r.tx=t.x-r.a*o-r.c*h,r.ty=t.y-r.b*o-r.d*h,r.concat(e.__webglWorldMatrix)},_getTexture:function(t){var e=t.__textureImage,r=this._cacheTexture[e.src];return r||(r=this.activeShader.uploadTexture(e)),r}}),o=function(t,e,r){this.renderer=t,this.gl=t.gl,this.program=this._createProgram(this.gl,e.v,e.f),r=r||{},this.attributes=r.attributes||[],this.uniforms=r.uniforms||[]};o.prototype={active:function(){var t=this,e=t.renderer,r=t.gl,i=t.program;i&&r&&(e.activeShader=t,r.useProgram(i),t.attributes.forEach(function(t){e[t]=r.getAttribLocation(i,t),r.enableVertexAttribArray(e[t])}),t.uniforms.forEach(function(t){e[t]=r.getUniformLocation(i,t)}),t.width===e.width&&t.height===e.height||(t.width=e.width,t.height=e.height,e._uploadProjectionTransform()))},uploadTexture:function(t){var e=this.gl,r=this.renderer,i=e.createTexture(),a=r.u_Sampler;return e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,i),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,1),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.uniform1i(a,0),e.bindTexture(e.TEXTURE_2D,null),this.renderer._cacheTexture[t.src]=i,i},_createProgram:function(t,e,r){var i=this._createShader(t,t.VERTEX_SHADER,e),a=this._createShader(t,t.FRAGMENT_SHADER,r);if(!i||!a)return null;var n=t.createProgram();if(n){t.attachShader(n,i),t.attachShader(n,a),t.linkProgram(n),t.deleteShader(a),t.deleteShader(i);var s=t.getProgramParameter(n,t.LINK_STATUS);if(!s){var o=t.getProgramInfoLog(n);return console.log("Failed to link program: "+o),t.deleteProgram(n),null}}return n},_createShader:function(t,e,r){var i=t.createShader(e);if(i){t.shaderSource(i,r),t.compileShader(i);var a=t.getShaderParameter(i,t.COMPILE_STATUS);if(!a){var n=t.getShaderInfoLog(i);return console.log("Failed to compile shader: "+n),t.deleteShader(i),null}}return i}},t.Hilo.WebGLRenderer=s}(window); \ No newline at end of file +!function(t){t.Hilo||(t.Hilo={});var e=t.Hilo.Class,r=t.Hilo,i=t.Hilo.Renderer,a=t.Hilo.Matrix,n=Math.PI/180,s=e.create({Extends:i,Statics:{MAX_BATCH_NUM:2e3,ATTRIBUTE_NUM:5,isSupport:function(){if(void 0==this._isSupported){var t=document.createElement("canvas");t.getContext&&(t.getContext("webgl")||t.getContext("experimental-webgl"))?this._isSupported=!0:this._isSupported=!1}return this._isSupported}},renderType:"webgl",gl:null,_isContextLost:!1,_cacheTexture:{},constructor:function(t){s.superclass.constructor.call(this,t);var e=this;this.gl=this.canvas.getContext("webgl")||this.canvas.getContext("experimental-webgl"),this.maxBatchNum=s.MAX_BATCH_NUM,this.positionStride=4*s.ATTRIBUTE_NUM;var r=this.maxBatchNum*s.ATTRIBUTE_NUM*4,i=6*this.maxBatchNum;this.arrayBuffer=new ArrayBuffer(4*r),this.float32Array=new Float32Array(this.arrayBuffer),this.uint32Array=new Uint32Array(this.arrayBuffer),this.indexs=new Uint16Array(i);for(var a=0,n=0;a0)&&(t===this.stage&&this.clear(),!0)},draw:function(t){var e=t.width,r=t.height,i=(t.background,t.drawable),a=i&&i.image;if(a){var n=i.rect,s=n[2],o=n[3];e||r||(e=t.width=s,r=t.height=o),this.batchIndex>=this.maxBatchNum&&this._renderBatches();var h=this._createVertexs(a,n[0],n[1],s,o,0,0,e,r),_=this.batchIndex*this.positionStride,c=this.float32Array,l=this.uint32Array,d=(t.tint>>16)+(65280&t.tint)+((255&t.tint)<<16)+(255*t.__webglRenderAlpha<<24);c[_+0]=h[0],c[_+1]=h[1],c[_+2]=h[2],c[_+3]=h[3],l[_+4]=d,c[_+5]=h[4],c[_+6]=h[5],c[_+7]=h[6],c[_+8]=h[7],l[_+9]=d,c[_+10]=h[8],c[_+11]=h[9],c[_+12]=h[10],c[_+13]=h[11],l[_+14]=d,c[_+15]=h[12],c[_+16]=h[13],c[_+17]=h[14],c[_+18]=h[15],l[_+19]=d;for(var u=t.__webglWorldMatrix,f=0;f<4;f++){var g=c[_+5*f],T=c[_+5*f+1];c[_+5*f]=u.a*g+u.c*T+u.tx,c[_+5*f+1]=u.b*g+u.d*T+u.ty}t.__textureImage=a,this.sprites[this.batchIndex++]=t}},endDraw:function(t){t===this.stage&&this._renderBatches()},transform:function(t){var e=t.drawable;if(e&&e.domElement)return void r.setElementStyleByView(t);var i=t.scaleX,n=t.scaleY;if(t===this.stage){var s=this.canvas.style,o=t._scaleX,h=t._scaleY,_=!1;(!o&&1!=i||o&&o!=i)&&(t._scaleX=i,s.width=i*t.width+"px",_=!0),(!h&&1!=n||h&&h!=n)&&(t._scaleY=n,s.height=n*t.height+"px",_=!0),_&&t.updateViewport(),t.__webglWorldMatrix=t.__webglWorldMatrix||new a(1,0,0,1,0,0)}else t.parent&&(t.__webglWorldMatrix=t.__webglWorldMatrix||new a(1,0,0,1,0,0),this._setConcatenatedMatrix(t,t.parent));t.alpha>0&&(t.parent&&t.parent.__webglRenderAlpha?t.__webglRenderAlpha=t.alpha*t.parent.__webglRenderAlpha:t.__webglRenderAlpha=t.alpha)},remove:function(t){var e=t.drawable,r=e&&e.domElement;if(r){var i=r.parentNode;i&&i.removeChild(r)}},clear:function(t,e,r,i){this.gl.clear(this.gl.COLOR_BUFFER_BIT)},resize:function(t,e){if(this.width!==t||this.height!==e){var r=this.canvas,i=this.stage,a=r.style;this.width=r.width=t,this.height=r.height=e,a.width=i.width*i.scaleX+"px",a.height=i.height*i.scaleY+"px",this.gl.viewport(0,0,t,e),this.canvasHalfWidth=.5*t,this.canvasHalfHeight=.5*e,this._uploadProjectionTransform(!0)}},_renderBatches:function(){var t=this.gl;t.bufferSubData(t.ARRAY_BUFFER,0,this.uint32Array.subarray(0,this.batchIndex*this.positionStride));for(var e=0,r=0,i=null,a=0;a0&&(r.bindTexture(r.TEXTURE_2D,this._getTexture(this.sprites[t])),r.drawElements(r.TRIANGLES,6*i,r.UNSIGNED_SHORT,6*t*2))},_uploadProjectionTransform:function(t){this._projectionTransformElements&&!t||(this._projectionTransformElements=new Float32Array([1/this.canvasHalfWidth,0,0,0,-1/this.canvasHalfHeight,0,-1,1,1])),this.gl.uniformMatrix3fv(this.u_projectionTransform,!1,this._projectionTransformElements)},_initShaders:function(){var t=" attribute vec2 a_position;\n attribute vec2 a_TexCoord;\n attribute vec4 a_tint;\n uniform mat3 u_projectionTransform;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_Position = vec4((u_projectionTransform * vec3(a_position, 1.0)).xy, 1.0, 1.0);\n v_TexCoord = a_TexCoord;\n v_tint = vec4(a_tint.rgb * a_tint.a, a_tint.a);\n }\n ",e="\n precision mediump float;\n uniform sampler2D u_Sampler;\n varying vec2 v_TexCoord;\n varying vec4 v_tint;\n void main(){\n gl_FragColor = texture2D(u_Sampler, v_TexCoord) * v_tint;\n }\n ";this.defaultShader=new o(this,{v:t,f:e},{attributes:["a_position","a_TexCoord","a_tint"],uniforms:["u_projectionTransform","u_Sampler"]})},_createVertexs:function(t,e,r,i,a,n,s,o,h){var _=this.__tempVertexs||[],c=t.width,l=t.height;i/=c,a/=l,e/=c,r/=l,o=o,h=h,n=n,s=s,i+e>1&&(i=1-e),a+r>1&&(a=1-r);var d=0;return _[d++]=n,_[d++]=s,_[d++]=e,_[d++]=r,_[d++]=n+o,_[d++]=s,_[d++]=e+i,_[d++]=r,_[d++]=n,_[d++]=s+h,_[d++]=e,_[d++]=r+a,_[d++]=n+o,_[d++]=s+h,_[d++]=e+i,_[d++]=r+a,_},_setConcatenatedMatrix:function(t,e){var r=t.__webglWorldMatrix,i=1,a=0,s=t.rotation%360,o=t.pivotX,h=t.pivotY,_=t.scaleX,c=t.scaleY;if(s){var l=s*n;i=Math.cos(l),a=Math.sin(l)}var d=t.getAlignPosition();r.a=i*_,r.b=a*_,r.c=-a*c,r.d=i*c,r.tx=d.x-r.a*o-r.c*h,r.ty=d.y-r.b*o-r.d*h,r.concat(e.__webglWorldMatrix)},_getTexture:function(t){var e=t.__textureImage,r=this._cacheTexture[e.src];return r||(r=this.activeShader.uploadTexture(e)),r}}),o=function(t,e,r){this.renderer=t,this.gl=t.gl,this.program=this._createProgram(this.gl,e.v,e.f),r=r||{},this.attributes=r.attributes||[],this.uniforms=r.uniforms||[]};o.prototype={active:function(){var t=this,e=t.renderer,r=t.gl,i=t.program;i&&r&&(e.activeShader=t,r.useProgram(i),t.attributes.forEach(function(t){e[t]=r.getAttribLocation(i,t),r.enableVertexAttribArray(e[t])}),t.uniforms.forEach(function(t){e[t]=r.getUniformLocation(i,t)}),t.width===e.width&&t.height===e.height||(t.width=e.width,t.height=e.height,e._uploadProjectionTransform()))},uploadTexture:function(t){var e=this.gl,r=this.renderer,i=e.createTexture(),a=r.u_Sampler;return e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,i),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,1),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.uniform1i(a,0),e.bindTexture(e.TEXTURE_2D,null),this.renderer._cacheTexture[t.src]=i,i},_createProgram:function(t,e,r){var i=this._createShader(t,t.VERTEX_SHADER,e),a=this._createShader(t,t.FRAGMENT_SHADER,r);if(!i||!a)return null;var n=t.createProgram();if(n){t.attachShader(n,i),t.attachShader(n,a),t.linkProgram(n),t.deleteShader(a),t.deleteShader(i);var s=t.getProgramParameter(n,t.LINK_STATUS);if(!s){var o=t.getProgramInfoLog(n);return console.log("Failed to link program: "+o),t.deleteProgram(n),null}}return n},_createShader:function(t,e,r){var i=t.createShader(e);if(i){t.shaderSource(i,r),t.compileShader(i);var a=t.getShaderParameter(i,t.COMPILE_STATUS);if(!a){var n=t.getShaderInfoLog(i);return console.log("Failed to compile shader: "+n),t.deleteShader(i),null}}return i}},t.Hilo.WebGLRenderer=s}(window); \ No newline at end of file diff --git a/build/standalone/hilo/tween/Ease.js b/build/standalone/hilo/tween/Ease.js index 191de184..040bc17e 100644 --- a/build/standalone/hilo/tween/Ease.js +++ b/build/standalone/hilo/tween/Ease.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/tween/Ease.min.js b/build/standalone/hilo/tween/Ease.min.js index 6577e179..4340069c 100644 --- a/build/standalone/hilo/tween/Ease.min.js +++ b/build/standalone/hilo/tween/Ease.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/tween/Tween.js b/build/standalone/hilo/tween/Tween.js index 4c138b97..b0b17cbb 100644 --- a/build/standalone/hilo/tween/Tween.js +++ b/build/standalone/hilo/tween/Tween.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/tween/Tween.min.js b/build/standalone/hilo/tween/Tween.min.js index 3bf8d848..5b9823d0 100644 --- a/build/standalone/hilo/tween/Tween.min.js +++ b/build/standalone/hilo/tween/Tween.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/util/TextureAtlas.js b/build/standalone/hilo/util/TextureAtlas.js index 4b77909d..75abf9a5 100644 --- a/build/standalone/hilo/util/TextureAtlas.js +++ b/build/standalone/hilo/util/TextureAtlas.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -74,7 +74,7 @@ return Class.create(/** @lends TextureAtlas.prototype */{ * @param {String} frames Frames message, eg:"0-5" means frame 0 to frame 5. * @param {Number} w The width of each frame. * @param {Number} h The height of each frame. - * @param {Bollean} loop Is play in loop. + * @param {Boolean} loop Is play in loop. * @param {Number} duration The time between each frame. default value is 1 (Frame), but if timeBased is true, default value will be duration(milli-second). * @example * //demo1 make one animation diff --git a/build/standalone/hilo/util/TextureAtlas.min.js b/build/standalone/hilo/util/TextureAtlas.min.js index 839fd74a..af854ffa 100644 --- a/build/standalone/hilo/util/TextureAtlas.min.js +++ b/build/standalone/hilo/util/TextureAtlas.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/util/Ticker.js b/build/standalone/hilo/util/Ticker.js index f5bd5f2d..dec75806 100644 --- a/build/standalone/hilo/util/Ticker.js +++ b/build/standalone/hilo/util/Ticker.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/util/Ticker.min.js b/build/standalone/hilo/util/Ticker.min.js index b8b1232f..fd310ceb 100644 --- a/build/standalone/hilo/util/Ticker.min.js +++ b/build/standalone/hilo/util/Ticker.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/util/browser.js b/build/standalone/hilo/util/browser.js index e0aff194..4f94f0e8 100644 --- a/build/standalone/hilo/util/browser.js +++ b/build/standalone/hilo/util/browser.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/util/browser.min.js b/build/standalone/hilo/util/browser.min.js index 61825f6d..66748aef 100644 --- a/build/standalone/hilo/util/browser.min.js +++ b/build/standalone/hilo/util/browser.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/util/drag.js b/build/standalone/hilo/util/drag.js index 2942fe8a..0e97fd2a 100644 --- a/build/standalone/hilo/util/drag.js +++ b/build/standalone/hilo/util/drag.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/util/drag.min.js b/build/standalone/hilo/util/drag.min.js index 79bbff67..00d4ee56 100644 --- a/build/standalone/hilo/util/drag.min.js +++ b/build/standalone/hilo/util/drag.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/util/polyfill.js b/build/standalone/hilo/util/polyfill.js index fe10e236..767b3b9e 100644 --- a/build/standalone/hilo/util/polyfill.js +++ b/build/standalone/hilo/util/polyfill.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/util/polyfill.min.js b/build/standalone/hilo/util/polyfill.min.js index 0f141276..6d4d2a21 100644 --- a/build/standalone/hilo/util/polyfill.min.js +++ b/build/standalone/hilo/util/polyfill.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/util/util.js b/build/standalone/hilo/util/util.js index ad6719b5..e14c5c75 100644 --- a/build/standalone/hilo/util/util.js +++ b/build/standalone/hilo/util/util.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/util/util.min.js b/build/standalone/hilo/util/util.min.js index febdc059..b0acf6e9 100644 --- a/build/standalone/hilo/util/util.min.js +++ b/build/standalone/hilo/util/util.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/view/Bitmap.js b/build/standalone/hilo/view/Bitmap.js index 0a90fbbc..7a2ba812 100644 --- a/build/standalone/hilo/view/Bitmap.js +++ b/build/standalone/hilo/view/Bitmap.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/view/Bitmap.min.js b/build/standalone/hilo/view/Bitmap.min.js index cf784de4..d736d05f 100644 --- a/build/standalone/hilo/view/Bitmap.min.js +++ b/build/standalone/hilo/view/Bitmap.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/view/BitmapText.js b/build/standalone/hilo/view/BitmapText.js index 9d7ca412..f4eb779b 100644 --- a/build/standalone/hilo/view/BitmapText.js +++ b/build/standalone/hilo/view/BitmapText.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/view/BitmapText.min.js b/build/standalone/hilo/view/BitmapText.min.js index c54d42e3..18385de8 100644 --- a/build/standalone/hilo/view/BitmapText.min.js +++ b/build/standalone/hilo/view/BitmapText.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/view/Button.js b/build/standalone/hilo/view/Button.js index 2e2bf2ea..e52a3e1e 100644 --- a/build/standalone/hilo/view/Button.js +++ b/build/standalone/hilo/view/Button.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/view/Button.min.js b/build/standalone/hilo/view/Button.min.js index 443ef9f4..24013515 100644 --- a/build/standalone/hilo/view/Button.min.js +++ b/build/standalone/hilo/view/Button.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/view/CacheMixin.js b/build/standalone/hilo/view/CacheMixin.js index 0cfc6e1b..9ab827bc 100644 --- a/build/standalone/hilo/view/CacheMixin.js +++ b/build/standalone/hilo/view/CacheMixin.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/view/CacheMixin.min.js b/build/standalone/hilo/view/CacheMixin.min.js index 8dba460d..5cdf2199 100644 --- a/build/standalone/hilo/view/CacheMixin.min.js +++ b/build/standalone/hilo/view/CacheMixin.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/view/Container.js b/build/standalone/hilo/view/Container.js index 28efea83..d14cf84e 100644 --- a/build/standalone/hilo/view/Container.js +++ b/build/standalone/hilo/view/Container.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/view/Container.min.js b/build/standalone/hilo/view/Container.min.js index 5e6ac100..f6da65d0 100644 --- a/build/standalone/hilo/view/Container.min.js +++ b/build/standalone/hilo/view/Container.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/view/DOMElement.js b/build/standalone/hilo/view/DOMElement.js index a99fc7f4..5064755d 100644 --- a/build/standalone/hilo/view/DOMElement.js +++ b/build/standalone/hilo/view/DOMElement.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/view/DOMElement.min.js b/build/standalone/hilo/view/DOMElement.min.js index 97edf332..96dfc808 100644 --- a/build/standalone/hilo/view/DOMElement.min.js +++ b/build/standalone/hilo/view/DOMElement.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/view/Drawable.js b/build/standalone/hilo/view/Drawable.js index 54fbe7e7..4c40c51e 100644 --- a/build/standalone/hilo/view/Drawable.js +++ b/build/standalone/hilo/view/Drawable.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/view/Drawable.min.js b/build/standalone/hilo/view/Drawable.min.js index ac7ed90a..e270ecf2 100644 --- a/build/standalone/hilo/view/Drawable.min.js +++ b/build/standalone/hilo/view/Drawable.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/view/Graphics.js b/build/standalone/hilo/view/Graphics.js index cd8dff5a..28ce72b4 100644 --- a/build/standalone/hilo/view/Graphics.js +++ b/build/standalone/hilo/view/Graphics.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/view/Graphics.min.js b/build/standalone/hilo/view/Graphics.min.js index 3187c32c..c49b23e7 100644 --- a/build/standalone/hilo/view/Graphics.min.js +++ b/build/standalone/hilo/view/Graphics.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/view/Sprite.js b/build/standalone/hilo/view/Sprite.js index 9716f2e2..0603c883 100644 --- a/build/standalone/hilo/view/Sprite.js +++ b/build/standalone/hilo/view/Sprite.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/view/Sprite.min.js b/build/standalone/hilo/view/Sprite.min.js index 5f674744..80e9e687 100644 --- a/build/standalone/hilo/view/Sprite.min.js +++ b/build/standalone/hilo/view/Sprite.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/view/Stage.js b/build/standalone/hilo/view/Stage.js index f22414b6..bba319ff 100644 --- a/build/standalone/hilo/view/Stage.js +++ b/build/standalone/hilo/view/Stage.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/view/Stage.min.js b/build/standalone/hilo/view/Stage.min.js index 223f430d..36348655 100644 --- a/build/standalone/hilo/view/Stage.min.js +++ b/build/standalone/hilo/view/Stage.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/view/Text.js b/build/standalone/hilo/view/Text.js index b084573f..5a8aea89 100644 --- a/build/standalone/hilo/view/Text.js +++ b/build/standalone/hilo/view/Text.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/view/Text.min.js b/build/standalone/hilo/view/Text.min.js index 838a890d..1cc41bde 100644 --- a/build/standalone/hilo/view/Text.min.js +++ b/build/standalone/hilo/view/Text.min.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ diff --git a/build/standalone/hilo/view/View.js b/build/standalone/hilo/view/View.js index e5f8d4dd..127420bd 100644 --- a/build/standalone/hilo/view/View.js +++ b/build/standalone/hilo/view/View.js @@ -1,5 +1,5 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ @@ -200,11 +200,72 @@ return Class.create(/** @lends View.prototype */{ if(pivotX != 0) mtx.tx -= pivotX; if(pivotY != 0) mtx.ty -= pivotY; - mtx.concat(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, o.x, o.y); + + var pos = o.getAlignPosition(); + mtx.concat(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, pos.x, pos.y); } return mtx; }, + getAlignPosition: function(){ + var parent = this.parent; + var align = this.align; + var x = this.x; + var y = this.y; + + if(parent && this.align){ + if(typeof align === 'function'){ + return this.align(); + } + + var w = this.width, h = this.height, + pw = parent.width, ph = parent.height; + switch(align){ + case 'TL': + x = 0; + y = 0; + break; + case 'T': + x = pw - w >> 1; + y = 0; + break; + case 'TR': + x = pw - w; + y = 0; + break; + case 'L': + x = 0; + y = ph - h >> 1; + break; + case 'C': + x = pw - w >> 1; + y = ph - h >> 1; + break; + case 'R': + x = pw - w; + y = ph - h >> 1; + break; + case 'BL': + x = 0; + y = ph - h; + break; + case 'B': + x = pw - w >> 1; + y = ph - h; + break; + case 'BR': + x = pw - w; + y = ph - h; + break; + } + } + + return { + x:x, + y:y + }; + }, + /** * @language=en * Determining whether a point is in the circumscribed rectangle of current view. diff --git a/build/standalone/hilo/view/View.min.js b/build/standalone/hilo/view/View.min.js index ff749efe..954ed019 100644 --- a/build/standalone/hilo/view/View.min.js +++ b/build/standalone/hilo/view/View.min.js @@ -1,6 +1,6 @@ /** - * Hilo 1.1.4 for standalone + * Hilo 1.1.5 for standalone * Copyright 2016 alibaba.com * Licensed under the MIT License */ -!function(t){t.Hilo||(t.Hilo={});var e=t.Hilo,i=t.Hilo.Class,n=t.Hilo.EventMixin,r=t.Hilo.Matrix,o=t.Hilo.util,a=function(){function t(t,e,i){for(var n,r,o,a,s=0,h=!1,u=0,y=i.length;ux.x?(n=x.x,r=l.x):(n=l.x,r=x.x),t>=n&&t<=r))h=!0;else if(l.y>x.y?(o=x.y,a=l.y):(o=l.y,a=x.y),!(ea)){var d=(e-l.y)*(x.x-l.x)/(x.y-l.y)+l.x;if(d>t?s++:d==t&&(h=!0),l.x>t&&l.y==e){var c=i[(y+u-1)%y];(c.ye||c.y>e&&x.ys?s=y:yu?u=y:y=0)return!1;l>i.overlap&&(i.overlap=l,i.normal.x=c.x,i.normal.y=c.y)}return i}return i.create({Mixes:n,constructor:function(t){t=t||{},this.id=this.id||t.id||e.getUid("View"),o.copy(this,t,!0)},tint:16777215,id:null,x:0,y:0,width:0,height:0,alpha:1,rotation:0,visible:!0,pivotX:0,pivotY:0,scaleX:1,scaleY:1,pointerEnabled:!0,background:null,mask:null,align:null,drawable:null,boundsArea:null,parent:null,depth:-1,blendMode:"source-over",getStage:function(){for(var t,e=this;t=e.parent;)e=t;return e.canvas?e:null},getScaledWidth:function(){return this.width*this.scaleX},getScaledHeight:function(){return this.height*this.scaleY},addTo:function(t,e){return"number"==typeof e?t.addChildAt(this,e):t.addChild(this),this},removeFromParent:function(){var t=this.parent;return t&&t.removeChild(this),this},getBounds:function(){for(var t,e,i,n,r,o,a,s=this.width,h=this.height,u=this.getConcatenatedMatrix(),y=this.boundsArea||[{x:0,y:0},{x:s,y:0},{x:s,y:h},{x:0,y:h}],l=[],x=0,d=y.length;xe?n=e:ri?o=i:a=r.x&&e<=r.x+r.width&&i>=r.y&&i<=r.y+r.height;return o&&n&&(o=t(e,i,r)),o},hitTestObject:function(t,e){var i=this.getBounds(),n=t.getBounds(),r=i.x<=n.x+n.width&&n.x<=i.x+i.width&&i.y<=n.y+n.height&&n.y<=i.y+i.height;return r&&e&&(r=a(i,n)),!!r},_render:function(t,e){this.onUpdate&&this.onUpdate(e)===!1||!t.startDraw(this)||(t.transform(this),this.render(t,e),t.endDraw(this))},_fireMouseEvent:function(t){if(t.eventCurrentTarget=this,this.fire(t),"mousemove"==t.type){if(!this.__mouseOver){this.__mouseOver=!0;var e=o.copy({},t);e.type="mouseover",this.fire(e)}}else"mouseout"==t.type&&(this.__mouseOver=!1);var i=this.parent;t._stopped||t._stopPropagationed||!i||("mouseout"==t.type||"touchout"==t.type?i.hitTestPoint(t.stageX,t.stageY,!0)||i._fireMouseEvent(t):i._fireMouseEvent(t))},onUpdate:null,render:function(t,e){t.draw(this)},toString:function(){return e.viewToString(this)}})}();t.Hilo.View=a}(window); \ No newline at end of file +!function(t){t.Hilo||(t.Hilo={});var e=t.Hilo,i=t.Hilo.Class,n=t.Hilo.EventMixin,r=t.Hilo.Matrix,o=t.Hilo.util,a=function(){function t(t,e,i){for(var n,r,o,a,s=0,h=!1,u=0,y=i.length;uc.x?(n=c.x,r=l.x):(n=l.x,r=c.x),t>=n&&t<=r))h=!0;else if(l.y>c.y?(o=c.y,a=l.y):(o=l.y,a=c.y),!(ea)){var x=(e-l.y)*(c.x-l.x)/(c.y-l.y)+l.x;if(x>t?s++:x==t&&(h=!0),l.x>t&&l.y==e){var d=i[(y+u-1)%y];(d.ye||d.y>e&&c.ys?s=y:yu?u=y:y=0)return!1;l>i.overlap&&(i.overlap=l,i.normal.x=d.x,i.normal.y=d.y)}return i}return i.create({Mixes:n,constructor:function(t){t=t||{},this.id=this.id||t.id||e.getUid("View"),o.copy(this,t,!0)},tint:16777215,id:null,x:0,y:0,width:0,height:0,alpha:1,rotation:0,visible:!0,pivotX:0,pivotY:0,scaleX:1,scaleY:1,pointerEnabled:!0,background:null,mask:null,align:null,drawable:null,boundsArea:null,parent:null,depth:-1,blendMode:"source-over",getStage:function(){for(var t,e=this;t=e.parent;)e=t;return e.canvas?e:null},getScaledWidth:function(){return this.width*this.scaleX},getScaledHeight:function(){return this.height*this.scaleY},addTo:function(t,e){return"number"==typeof e?t.addChildAt(this,e):t.addChild(this),this},removeFromParent:function(){var t=this.parent;return t&&t.removeChild(this),this},getBounds:function(){for(var t,e,i,n,r,o,a,s=this.width,h=this.height,u=this.getConcatenatedMatrix(),y=this.boundsArea||[{x:0,y:0},{x:s,y:0},{x:s,y:h},{x:0,y:h}],l=[],c=0,x=y.length;ce?n=e:ri?o=i:a>1,n=0;break;case"TR":i=a-r,n=0;break;case"L":i=0,n=s-o>>1;break;case"C":i=a-r>>1,n=s-o>>1;break;case"R":i=a-r,n=s-o>>1;break;case"BL":i=0,n=s-o;break;case"B":i=a-r>>1,n=s-o;break;case"BR":i=a-r,n=s-o}}return{x:i,y:n}},hitTestPoint:function(e,i,n){var r=this.getBounds(),o=e>=r.x&&e<=r.x+r.width&&i>=r.y&&i<=r.y+r.height;return o&&n&&(o=t(e,i,r)),o},hitTestObject:function(t,e){var i=this.getBounds(),n=t.getBounds(),r=i.x<=n.x+n.width&&n.x<=i.x+i.width&&i.y<=n.y+n.height&&n.y<=i.y+i.height;return r&&e&&(r=a(i,n)),!!r},_render:function(t,e){this.onUpdate&&this.onUpdate(e)===!1||!t.startDraw(this)||(t.transform(this),this.render(t,e),t.endDraw(this))},_fireMouseEvent:function(t){if(t.eventCurrentTarget=this,this.fire(t),"mousemove"==t.type){if(!this.__mouseOver){this.__mouseOver=!0;var e=o.copy({},t);e.type="mouseover",this.fire(e)}}else"mouseout"==t.type&&(this.__mouseOver=!1);var i=this.parent;t._stopped||t._stopPropagationed||!i||("mouseout"==t.type||"touchout"==t.type?i.hitTestPoint(t.stageX,t.stageY,!0)||i._fireMouseEvent(t):i._fireMouseEvent(t))},onUpdate:null,render:function(t,e){t.draw(this)},toString:function(){return e.viewToString(this)}})}();t.Hilo.View=a}(window); \ No newline at end of file diff --git a/docs/api-en/code/renderer/CanvasRenderer.js b/docs/api-en/code/renderer/CanvasRenderer.js index 675e79dd..53b15109 100644 --- a/docs/api-en/code/renderer/CanvasRenderer.js +++ b/docs/api-en/code/renderer/CanvasRenderer.js @@ -133,53 +133,9 @@ var CanvasRenderer = Class.create(/** @lends CanvasRenderer.prototype */{ //alignment var align = target.align; if(align){ - if(typeof align === 'function'){ - target.align(); - }else{ - var parent = target.parent; - if(parent){ - var w = target.width, h = target.height, - pw = parent.width, ph = parent.height; - switch(align){ - case 'TL': - x = 0; - y = 0; - break; - case 'T': - x = pw - w >> 1; - y = 0; - break; - case 'TR': - x = pw - w; - y = 0; - break; - case 'L': - x = 0; - y = ph - h >> 1; - break; - case 'C': - x = pw - w >> 1; - y = ph - h >> 1; - break; - case 'R': - x = pw - w; - y = ph - h >> 1; - break; - case 'BL': - x = 0; - y = ph - h; - break; - case 'B': - x = pw - w >> 1; - y = ph - h; - break; - case 'BR': - x = pw - w; - y = ph - h; - break; - } - } - } + var pos = target.getAlignPosition(); + x = pos.x; + y = pos.y; } if(x != 0 || y != 0) ctx.translate(x, y); diff --git a/docs/api-en/code/renderer/WebGLRenderer.js b/docs/api-en/code/renderer/WebGLRenderer.js index f9ff905c..fd738b83 100644 --- a/docs/api-en/code/renderer/WebGLRenderer.js +++ b/docs/api-en/code/renderer/WebGLRenderer.js @@ -424,12 +424,13 @@ var WebGLRenderer = Class.create(/** @lends WebGLRenderer.prototype */{ sin = Math.sin(r); } + var pos = view.getAlignPosition(); mtx.a = cos*scaleX; mtx.b = sin*scaleX; mtx.c = -sin*scaleY; mtx.d = cos*scaleY; - mtx.tx = view.x - mtx.a * pivotX - mtx.c * pivotY; - mtx.ty = view.y - mtx.b * pivotX - mtx.d * pivotY; + mtx.tx = pos.x - mtx.a * pivotX - mtx.c * pivotY; + mtx.ty = pos.y - mtx.b * pivotX - mtx.d * pivotY; mtx.concat(ancestor.__webglWorldMatrix); }, diff --git a/docs/api-en/code/view/View.js b/docs/api-en/code/view/View.js index 3ca0db73..3486fc40 100644 --- a/docs/api-en/code/view/View.js +++ b/docs/api-en/code/view/View.js @@ -185,11 +185,72 @@ return Class.create(/** @lends View.prototype */{ if(pivotX != 0) mtx.tx -= pivotX; if(pivotY != 0) mtx.ty -= pivotY; - mtx.concat(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, o.x, o.y); + + var pos = o.getAlignPosition(); + mtx.concat(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, pos.x, pos.y); } return mtx; }, + getAlignPosition: function(){ + var parent = this.parent; + var align = this.align; + var x = this.x; + var y = this.y; + + if(parent && this.align){ + if(typeof align === 'function'){ + return this.align(); + } + + var w = this.width, h = this.height, + pw = parent.width, ph = parent.height; + switch(align){ + case 'TL': + x = 0; + y = 0; + break; + case 'T': + x = pw - w >> 1; + y = 0; + break; + case 'TR': + x = pw - w; + y = 0; + break; + case 'L': + x = 0; + y = ph - h >> 1; + break; + case 'C': + x = pw - w >> 1; + y = ph - h >> 1; + break; + case 'R': + x = pw - w; + y = ph - h >> 1; + break; + case 'BL': + x = 0; + y = ph - h; + break; + case 'B': + x = pw - w >> 1; + y = ph - h; + break; + case 'BR': + x = pw - w; + y = ph - h; + break; + } + } + + return { + x:x, + y:y + }; + }, + /** * Determining whether a point is in the circumscribed rectangle of current view. * @param {Number} x The x axis relative to the stage coordinates. diff --git a/docs/api-en/index.html b/docs/api-en/index.html index db8e5378..049030f8 100644 --- a/docs/api-en/index.html +++ b/docs/api-en/index.html @@ -188,7 +188,7 @@
    -
    All Class Index(v1.1.4)
    +
    All Class Index(v1.1.5)
    diff --git a/docs/api-en/symbols/src/docs_api-en_code_renderer_CanvasRenderer.js.html b/docs/api-en/symbols/src/docs_api-en_code_renderer_CanvasRenderer.js.html index 6c5f0820..c509359a 100644 --- a/docs/api-en/symbols/src/docs_api-en_code_renderer_CanvasRenderer.js.html +++ b/docs/api-en/symbols/src/docs_api-en_code_renderer_CanvasRenderer.js.html @@ -140,102 +140,58 @@ 133 //alignment 134 var align = target.align; 135 if(align){ -136 if(typeof align === 'function'){ -137 target.align(); -138 }else{ -139 var parent = target.parent; -140 if(parent){ -141 var w = target.width, h = target.height, -142 pw = parent.width, ph = parent.height; -143 switch(align){ -144 case 'TL': -145 x = 0; -146 y = 0; -147 break; -148 case 'T': -149 x = pw - w >> 1; -150 y = 0; -151 break; -152 case 'TR': -153 x = pw - w; -154 y = 0; -155 break; -156 case 'L': -157 x = 0; -158 y = ph - h >> 1; -159 break; -160 case 'C': -161 x = pw - w >> 1; -162 y = ph - h >> 1; -163 break; -164 case 'R': -165 x = pw - w; -166 y = ph - h >> 1; -167 break; -168 case 'BL': -169 x = 0; -170 y = ph - h; -171 break; -172 case 'B': -173 x = pw - w >> 1; -174 y = ph - h; -175 break; -176 case 'BR': -177 x = pw - w; -178 y = ph - h; -179 break; -180 } -181 } -182 } -183 } -184 -185 if(x != 0 || y != 0) ctx.translate(x, y); -186 if(rotation != 0) ctx.rotate(rotation * Math.PI / 180); -187 if(scaleX != 1 || scaleY != 1) ctx.scale(scaleX, scaleY); -188 if(pivotX != 0 || pivotY != 0) ctx.translate(-pivotX, -pivotY); -189 } -190 -191 if(target.alpha > 0) ctx.globalAlpha *= target.alpha; -192 }, -193 -194 /** -195 * @private -196 * @see Renderer#remove -197 */ -198 remove: function(target){ -199 var drawable = target.drawable; -200 var elem = drawable && drawable.domElement; -201 -202 if(elem){ -203 var parentElem = elem.parentNode; -204 if(parentElem){ -205 parentElem.removeChild(elem); -206 } -207 } -208 }, -209 -210 /** -211 * @private -212 * @see Renderer#clear -213 */ -214 clear: function(x, y, width, height){ -215 this.context.clearRect(x, y, width, height); -216 }, -217 -218 /** -219 * @private -220 * @see Renderer#resize -221 */ -222 resize: function(width, height){ -223 var canvas = this.canvas; -224 var stage = this.stage; -225 var style = canvas.style; -226 -227 canvas.width = width; -228 canvas.height = height; -229 -230 style.width = stage.width * stage.scaleX + 'px'; -231 style.height = stage.height * stage.scaleY + 'px'; -232 } -233 -234 }); \ No newline at end of file +136 var pos = target.getAlignPosition(); +137 x = pos.x; +138 y = pos.y; +139 } +140 +141 if(x != 0 || y != 0) ctx.translate(x, y); +142 if(rotation != 0) ctx.rotate(rotation * Math.PI / 180); +143 if(scaleX != 1 || scaleY != 1) ctx.scale(scaleX, scaleY); +144 if(pivotX != 0 || pivotY != 0) ctx.translate(-pivotX, -pivotY); +145 } +146 +147 if(target.alpha > 0) ctx.globalAlpha *= target.alpha; +148 }, +149 +150 /** +151 * @private +152 * @see Renderer#remove +153 */ +154 remove: function(target){ +155 var drawable = target.drawable; +156 var elem = drawable && drawable.domElement; +157 +158 if(elem){ +159 var parentElem = elem.parentNode; +160 if(parentElem){ +161 parentElem.removeChild(elem); +162 } +163 } +164 }, +165 +166 /** +167 * @private +168 * @see Renderer#clear +169 */ +170 clear: function(x, y, width, height){ +171 this.context.clearRect(x, y, width, height); +172 }, +173 +174 /** +175 * @private +176 * @see Renderer#resize +177 */ +178 resize: function(width, height){ +179 var canvas = this.canvas; +180 var stage = this.stage; +181 var style = canvas.style; +182 +183 canvas.width = width; +184 canvas.height = height; +185 +186 style.width = stage.width * stage.scaleX + 'px'; +187 style.height = stage.height * stage.scaleY + 'px'; +188 } +189 +190 }); \ No newline at end of file diff --git a/docs/api-en/symbols/src/docs_api-en_code_renderer_WebGLRenderer.js.html b/docs/api-en/symbols/src/docs_api-en_code_renderer_WebGLRenderer.js.html index 6d894643..fa066cb4 100644 --- a/docs/api-en/symbols/src/docs_api-en_code_renderer_WebGLRenderer.js.html +++ b/docs/api-en/symbols/src/docs_api-en_code_renderer_WebGLRenderer.js.html @@ -431,134 +431,135 @@ 424 sin = Math.sin(r); 425 } 426 -427 mtx.a = cos*scaleX; -428 mtx.b = sin*scaleX; -429 mtx.c = -sin*scaleY; -430 mtx.d = cos*scaleY; -431 mtx.tx = view.x - mtx.a * pivotX - mtx.c * pivotY; -432 mtx.ty = view.y - mtx.b * pivotX - mtx.d * pivotY; -433 -434 mtx.concat(ancestor.__webglWorldMatrix); -435 }, -436 _getTexture:function(sprite){ -437 var image = sprite.__textureImage; -438 var texture = this._cacheTexture[image.src]; -439 if(!texture){ -440 texture = this.activeShader.uploadTexture(image); -441 } -442 return texture; -443 } -444 }); -445 -446 /** -447 * shader -448 * @param {WebGLRenderer} renderer [description] -449 * @param {Object} source -450 * @param {String} source.v 顶点shader -451 * @param {String} source.f 片段shader -452 * @param {Object} attr -453 * @param {Array} attr.attributes attribute数组 -454 * @param {Array} attr.uniforms uniform数组 -455 */ -456 var Shader = function(renderer, source, attr){ -457 this.renderer = renderer; -458 this.gl = renderer.gl; -459 this.program = this._createProgram(this.gl, source.v, source.f); -460 -461 attr = attr||{}; -462 this.attributes = attr.attributes||[]; -463 this.uniforms = attr.uniforms||[]; -464 }; -465 -466 Shader.prototype = { -467 active:function(){ -468 var that = this; -469 var renderer = that.renderer; -470 var gl = that.gl; -471 var program = that.program; -472 -473 if(program && gl){ -474 renderer.activeShader = that; -475 gl.useProgram(program); -476 that.attributes.forEach(function(attribute){ -477 renderer[attribute] = gl.getAttribLocation(program, attribute); -478 gl.enableVertexAttribArray(renderer[attribute]); -479 }); -480 -481 that.uniforms.forEach(function(uniform){ -482 renderer[uniform] = gl.getUniformLocation(program, uniform); -483 }); -484 -485 if(that.width !== renderer.width || that.height !== renderer.height){ -486 that.width = renderer.width; -487 that.height = renderer.height; -488 renderer._uploadProjectionTransform(); -489 } -490 } -491 }, -492 uploadTexture:function(image){ -493 var gl = this.gl; -494 var renderer = this.renderer; -495 var texture = gl.createTexture(); -496 var u_Sampler = renderer.u_Sampler; -497 -498 gl.activeTexture(gl.TEXTURE0); -499 gl.bindTexture(gl.TEXTURE_2D, texture); -500 -501 // gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, 1); -502 gl.pixelStorei(gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL, 1); -503 gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, gl.UNSIGNED_BYTE, image); -504 -505 gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR); -506 gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR); -507 gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE); -508 gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE); -509 gl.uniform1i(u_Sampler, 0); -510 gl.bindTexture(gl.TEXTURE_2D, null); -511 -512 this.renderer._cacheTexture[image.src] = texture; -513 return texture; -514 }, -515 _createProgram:function(gl, vshader, fshader){ -516 var vertexShader = this._createShader(gl, gl.VERTEX_SHADER, vshader); -517 var fragmentShader = this._createShader(gl, gl.FRAGMENT_SHADER, fshader); -518 if (!vertexShader || !fragmentShader) { -519 return null; -520 } -521 -522 var program = gl.createProgram(); -523 if (program) { -524 gl.attachShader(program, vertexShader); -525 gl.attachShader(program, fragmentShader); -526 -527 gl.linkProgram(program); -528 -529 gl.deleteShader(fragmentShader); -530 gl.deleteShader(vertexShader); -531 var linked = gl.getProgramParameter(program, gl.LINK_STATUS); -532 if (!linked) { -533 var error = gl.getProgramInfoLog(program); -534 console.log('Failed to link program: ' + error); -535 gl.deleteProgram(program); -536 return null; -537 } -538 } -539 return program; -540 }, -541 _createShader:function(gl, type, source){ -542 var shader = gl.createShader(type); -543 if(shader){ -544 gl.shaderSource(shader, source); -545 gl.compileShader(shader); -546 -547 var compiled = gl.getShaderParameter(shader, gl.COMPILE_STATUS); -548 if (!compiled) { -549 var error = gl.getShaderInfoLog(shader); -550 console.log('Failed to compile shader: ' + error); -551 gl.deleteShader(shader); -552 return null; -553 } -554 } -555 return shader; -556 } -557 }; \ No newline at end of file +427 var pos = view.getAlignPosition(); +428 mtx.a = cos*scaleX; +429 mtx.b = sin*scaleX; +430 mtx.c = -sin*scaleY; +431 mtx.d = cos*scaleY; +432 mtx.tx = pos.x - mtx.a * pivotX - mtx.c * pivotY; +433 mtx.ty = pos.y - mtx.b * pivotX - mtx.d * pivotY; +434 +435 mtx.concat(ancestor.__webglWorldMatrix); +436 }, +437 _getTexture:function(sprite){ +438 var image = sprite.__textureImage; +439 var texture = this._cacheTexture[image.src]; +440 if(!texture){ +441 texture = this.activeShader.uploadTexture(image); +442 } +443 return texture; +444 } +445 }); +446 +447 /** +448 * shader +449 * @param {WebGLRenderer} renderer [description] +450 * @param {Object} source +451 * @param {String} source.v 顶点shader +452 * @param {String} source.f 片段shader +453 * @param {Object} attr +454 * @param {Array} attr.attributes attribute数组 +455 * @param {Array} attr.uniforms uniform数组 +456 */ +457 var Shader = function(renderer, source, attr){ +458 this.renderer = renderer; +459 this.gl = renderer.gl; +460 this.program = this._createProgram(this.gl, source.v, source.f); +461 +462 attr = attr||{}; +463 this.attributes = attr.attributes||[]; +464 this.uniforms = attr.uniforms||[]; +465 }; +466 +467 Shader.prototype = { +468 active:function(){ +469 var that = this; +470 var renderer = that.renderer; +471 var gl = that.gl; +472 var program = that.program; +473 +474 if(program && gl){ +475 renderer.activeShader = that; +476 gl.useProgram(program); +477 that.attributes.forEach(function(attribute){ +478 renderer[attribute] = gl.getAttribLocation(program, attribute); +479 gl.enableVertexAttribArray(renderer[attribute]); +480 }); +481 +482 that.uniforms.forEach(function(uniform){ +483 renderer[uniform] = gl.getUniformLocation(program, uniform); +484 }); +485 +486 if(that.width !== renderer.width || that.height !== renderer.height){ +487 that.width = renderer.width; +488 that.height = renderer.height; +489 renderer._uploadProjectionTransform(); +490 } +491 } +492 }, +493 uploadTexture:function(image){ +494 var gl = this.gl; +495 var renderer = this.renderer; +496 var texture = gl.createTexture(); +497 var u_Sampler = renderer.u_Sampler; +498 +499 gl.activeTexture(gl.TEXTURE0); +500 gl.bindTexture(gl.TEXTURE_2D, texture); +501 +502 // gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, 1); +503 gl.pixelStorei(gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL, 1); +504 gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, gl.UNSIGNED_BYTE, image); +505 +506 gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR); +507 gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR); +508 gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE); +509 gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE); +510 gl.uniform1i(u_Sampler, 0); +511 gl.bindTexture(gl.TEXTURE_2D, null); +512 +513 this.renderer._cacheTexture[image.src] = texture; +514 return texture; +515 }, +516 _createProgram:function(gl, vshader, fshader){ +517 var vertexShader = this._createShader(gl, gl.VERTEX_SHADER, vshader); +518 var fragmentShader = this._createShader(gl, gl.FRAGMENT_SHADER, fshader); +519 if (!vertexShader || !fragmentShader) { +520 return null; +521 } +522 +523 var program = gl.createProgram(); +524 if (program) { +525 gl.attachShader(program, vertexShader); +526 gl.attachShader(program, fragmentShader); +527 +528 gl.linkProgram(program); +529 +530 gl.deleteShader(fragmentShader); +531 gl.deleteShader(vertexShader); +532 var linked = gl.getProgramParameter(program, gl.LINK_STATUS); +533 if (!linked) { +534 var error = gl.getProgramInfoLog(program); +535 console.log('Failed to link program: ' + error); +536 gl.deleteProgram(program); +537 return null; +538 } +539 } +540 return program; +541 }, +542 _createShader:function(gl, type, source){ +543 var shader = gl.createShader(type); +544 if(shader){ +545 gl.shaderSource(shader, source); +546 gl.compileShader(shader); +547 +548 var compiled = gl.getShaderParameter(shader, gl.COMPILE_STATUS); +549 if (!compiled) { +550 var error = gl.getShaderInfoLog(shader); +551 console.log('Failed to compile shader: ' + error); +552 gl.deleteShader(shader); +553 return null; +554 } +555 } +556 return shader; +557 } +558 }; \ No newline at end of file diff --git a/docs/api-en/symbols/src/docs_api-en_code_view_View.js.html b/docs/api-en/symbols/src/docs_api-en_code_view_View.js.html index c504439e..8bed37b6 100644 --- a/docs/api-en/symbols/src/docs_api-en_code_view_View.js.html +++ b/docs/api-en/symbols/src/docs_api-en_code_view_View.js.html @@ -192,218 +192,279 @@ 185186 if(pivotX != 0) mtx.tx -= pivotX; 187 if(pivotY != 0) mtx.ty -= pivotY; -188 mtx.concat(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, o.x, o.y); -189 } -190 return mtx; -191 }, -192 -193 /** -194 * Determining whether a point is in the circumscribed rectangle of current view. -195 * @param {Number} x The x axis relative to the stage coordinates. -196 * @param {Number} y The y axis relative to the stage coordinates. -197 * @param {Boolean} usePolyCollision Is use polygon collision, default value is false. -198 * @returns {Boolean} the point is in the circumscribed rectangle of current view. -199 */ -200 hitTestPoint: function(x, y, usePolyCollision){ -201 var bound = this.getBounds(), -202 hit = x >= bound.x && x <= bound.x + bound.width && -203 y >= bound.y && y <= bound.y + bound.height; -204 -205 if(hit && usePolyCollision){ -206 hit = pointInPolygon(x, y, bound); -207 } -208 return hit; -209 }, -210 -211 /** -212 * Determining whether an object is in the circumscribed rectangle of current view. -213 * @param {View} object The object need to determining. -214 * @param {Boolean} usePolyCollision Is use polygon collision, default value is false. -215 */ -216 hitTestObject: function(object, usePolyCollision){ -217 var b1 = this.getBounds(), -218 b2 = object.getBounds(), -219 hit = b1.x <= b2.x + b2.width && b2.x <= b1.x + b1.width && -220 b1.y <= b2.y + b2.height && b2.y <= b1.y + b1.height; -221 -222 if(hit && usePolyCollision){ -223 hit = polygonCollision(b1, b2); -224 } -225 return !!hit; -226 }, -227 -228 /** -229 * The method to render current display object. Only for advanced develop. -230 * @param {Renderer} renderer Renderer object. -231 * @param {Number} delta The delta time of render. -232 * @protected -233 */ -234 _render: function(renderer, delta){ -235 if((!this.onUpdate || this.onUpdate(delta) !== false) && renderer.startDraw(this)){ -236 renderer.transform(this); -237 this.render(renderer, delta); -238 renderer.endDraw(this); -239 } -240 }, -241 /** -242 * Mouse event -243 */ -244 _fireMouseEvent:function(e){ -245 e.eventCurrentTarget = this; -246 this.fire(e); +188 +189 var pos = o.getAlignPosition(); +190 mtx.concat(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, pos.x, pos.y); +191 } +192 return mtx; +193 }, +194 +195 getAlignPosition: function(){ +196 var parent = this.parent; +197 var align = this.align; +198 var x = this.x; +199 var y = this.y; +200 +201 if(parent && this.align){ +202 if(typeof align === 'function'){ +203 return this.align(); +204 } +205 +206 var w = this.width, h = this.height, +207 pw = parent.width, ph = parent.height; +208 switch(align){ +209 case 'TL': +210 x = 0; +211 y = 0; +212 break; +213 case 'T': +214 x = pw - w >> 1; +215 y = 0; +216 break; +217 case 'TR': +218 x = pw - w; +219 y = 0; +220 break; +221 case 'L': +222 x = 0; +223 y = ph - h >> 1; +224 break; +225 case 'C': +226 x = pw - w >> 1; +227 y = ph - h >> 1; +228 break; +229 case 'R': +230 x = pw - w; +231 y = ph - h >> 1; +232 break; +233 case 'BL': +234 x = 0; +235 y = ph - h; +236 break; +237 case 'B': +238 x = pw - w >> 1; +239 y = ph - h; +240 break; +241 case 'BR': +242 x = pw - w; +243 y = ph - h; +244 break; +245 } +246 } 247 -248 // 处理mouseover事件 mouseover不需要阻止冒泡 -249 // handle mouseover event, mouseover needn't stop propagation. -250 if(e.type == "mousemove"){ -251 if(!this.__mouseOver){ -252 this.__mouseOver = true; -253 var overEvent = util.copy({}, e); -254 overEvent.type = "mouseover"; -255 this.fire(overEvent); -256 } -257 } -258 else if(e.type == "mouseout"){ -259 this.__mouseOver = false; -260 } -261 -262 // 向上冒泡 -263 // handle event propagation -264 var parent = this.parent; -265 if(!e._stopped && !e._stopPropagationed && parent){ -266 if(e.type == "mouseout" || e.type == "touchout"){ -267 if(!parent.hitTestPoint(e.stageX, e.stageY, true)){ -268 parent._fireMouseEvent(e); -269 } -270 } -271 else{ -272 parent._fireMouseEvent(e); -273 } -274 } -275 }, -276 -277 /** -278 * This method will call while the view need update(usually caused by ticker update). This method can return a Boolean value, if return false, the view will not be drawn. -279 * Limit: If you change the index in it's parent, it will not be drawn correct in current frame but next frame is correct. -280 * @type Function -281 * @default null -282 */ -283 onUpdate: null, -284 -285 /** -286 * The render method of current view. The subclass can implement it's own render logic by rewrite this function. -287 * @param {Renderer} renderer Renderer object. -288 * @param {Number} delta The delta time of render. -289 */ -290 render: function(renderer, delta){ -291 renderer.draw(this); -292 }, -293 -294 /** -295 * Get a string representing current view. -296 * @returns {String} string representing current view. -297 */ -298 toString: function(){ -299 return Hilo.viewToString(this); -300 } -301 }); -302 -303 /** -304 * @private -305 */ -306 function pointInPolygon(x, y, poly){ -307 var cross = 0, onBorder = false, minX, maxX, minY, maxY; +248 return { +249 x:x, +250 y:y +251 }; +252 }, +253 +254 /** +255 * Determining whether a point is in the circumscribed rectangle of current view. +256 * @param {Number} x The x axis relative to the stage coordinates. +257 * @param {Number} y The y axis relative to the stage coordinates. +258 * @param {Boolean} usePolyCollision Is use polygon collision, default value is false. +259 * @returns {Boolean} the point is in the circumscribed rectangle of current view. +260 */ +261 hitTestPoint: function(x, y, usePolyCollision){ +262 var bound = this.getBounds(), +263 hit = x >= bound.x && x <= bound.x + bound.width && +264 y >= bound.y && y <= bound.y + bound.height; +265 +266 if(hit && usePolyCollision){ +267 hit = pointInPolygon(x, y, bound); +268 } +269 return hit; +270 }, +271 +272 /** +273 * Determining whether an object is in the circumscribed rectangle of current view. +274 * @param {View} object The object need to determining. +275 * @param {Boolean} usePolyCollision Is use polygon collision, default value is false. +276 */ +277 hitTestObject: function(object, usePolyCollision){ +278 var b1 = this.getBounds(), +279 b2 = object.getBounds(), +280 hit = b1.x <= b2.x + b2.width && b2.x <= b1.x + b1.width && +281 b1.y <= b2.y + b2.height && b2.y <= b1.y + b1.height; +282 +283 if(hit && usePolyCollision){ +284 hit = polygonCollision(b1, b2); +285 } +286 return !!hit; +287 }, +288 +289 /** +290 * The method to render current display object. Only for advanced develop. +291 * @param {Renderer} renderer Renderer object. +292 * @param {Number} delta The delta time of render. +293 * @protected +294 */ +295 _render: function(renderer, delta){ +296 if((!this.onUpdate || this.onUpdate(delta) !== false) && renderer.startDraw(this)){ +297 renderer.transform(this); +298 this.render(renderer, delta); +299 renderer.endDraw(this); +300 } +301 }, +302 /** +303 * Mouse event +304 */ +305 _fireMouseEvent:function(e){ +306 e.eventCurrentTarget = this; +307 this.fire(e); 308 -309 for(var i = 0, len = poly.length; i < len; i++){ -310 var p1 = poly[i], p2 = poly[(i+1)%len]; -311 -312 if(p1.y == p2.y && y == p1.y){ -313 p1.x > p2.x ? (minX = p2.x, maxX = p1.x) : (minX = p1.x, maxX = p2.x); -314 if(x >= minX && x <= maxX){ -315 onBorder = true; -316 continue; +309 // 处理mouseover事件 mouseover不需要阻止冒泡 +310 // handle mouseover event, mouseover needn't stop propagation. +311 if(e.type == "mousemove"){ +312 if(!this.__mouseOver){ +313 this.__mouseOver = true; +314 var overEvent = util.copy({}, e); +315 overEvent.type = "mouseover"; +316 this.fire(overEvent); 317 } 318 } -319 -320 p1.y > p2.y ? (minY = p2.y, maxY = p1.y) : (minY = p1.y, maxY = p2.y); -321 if(y < minY || y > maxY) continue; +319 else if(e.type == "mouseout"){ +320 this.__mouseOver = false; +321 } 322 -323 var nx = (y - p1.y)*(p2.x - p1.x) / (p2.y - p1.y) + p1.x; -324 if(nx > x) cross++; -325 else if(nx == x) onBorder = true; -326 -327 //当射线和多边形相交 -328 if(p1.x > x && p1.y == y){ -329 var p0 = poly[(len+i-1)%len]; -330 //当交点的两边在射线两旁 -331 if(p0.y < y && p2.y > y || p0.y > y && p2.y < y){ -332 cross ++; -333 } -334 } -335 } -336 -337 return onBorder || (cross % 2 == 1); -338 } -339 -340 /** -341 * @private -342 */ -343 function polygonCollision(poly1, poly2){ -344 var result = doSATCheck(poly1, poly2, {overlap:-Infinity, normal:{x:0, y:0}}); -345 if(result) return doSATCheck(poly2, poly1, result); -346 return false; -347 } -348 -349 /** -350 * @private -351 */ -352 function doSATCheck(poly1, poly2, result){ -353 var len1 = poly1.length, len2 = poly2.length, -354 currentPoint, nextPoint, distance, -355 min1, max1, min2, max2, dot, overlap, normal = {x:0, y:0}; -356 -357 for(var i = 0; i < len1; i++){ -358 currentPoint = poly1[i]; -359 nextPoint = poly1[(i < len1-1 ? i+1 : 0)]; -360 -361 normal.x = currentPoint.y - nextPoint.y; -362 normal.y = nextPoint.x - currentPoint.x; +323 // 向上冒泡 +324 // handle event propagation +325 var parent = this.parent; +326 if(!e._stopped && !e._stopPropagationed && parent){ +327 if(e.type == "mouseout" || e.type == "touchout"){ +328 if(!parent.hitTestPoint(e.stageX, e.stageY, true)){ +329 parent._fireMouseEvent(e); +330 } +331 } +332 else{ +333 parent._fireMouseEvent(e); +334 } +335 } +336 }, +337 +338 /** +339 * This method will call while the view need update(usually caused by ticker update). This method can return a Boolean value, if return false, the view will not be drawn. +340 * Limit: If you change the index in it's parent, it will not be drawn correct in current frame but next frame is correct. +341 * @type Function +342 * @default null +343 */ +344 onUpdate: null, +345 +346 /** +347 * The render method of current view. The subclass can implement it's own render logic by rewrite this function. +348 * @param {Renderer} renderer Renderer object. +349 * @param {Number} delta The delta time of render. +350 */ +351 render: function(renderer, delta){ +352 renderer.draw(this); +353 }, +354 +355 /** +356 * Get a string representing current view. +357 * @returns {String} string representing current view. +358 */ +359 toString: function(){ +360 return Hilo.viewToString(this); +361 } +362 }); 363 -364 distance = Math.sqrt(normal.x * normal.x + normal.y * normal.y); -365 normal.x /= distance; -366 normal.y /= distance; -367 -368 min1 = max1 = poly1[0].x * normal.x + poly1[0].y * normal.y; -369 for(var j = 1; j < len1; j++){ -370 dot = poly1[j].x * normal.x + poly1[j].y * normal.y; -371 if(dot > max1) max1 = dot; -372 else if(dot < min1) min1 = dot; -373 } -374 -375 min2 = max2 = poly2[0].x * normal.x + poly2[0].y * normal.y; -376 for(j = 1; j < len2; j++){ -377 dot = poly2[j].x * normal.x + poly2[j].y * normal.y; -378 if(dot > max2) max2 = dot; -379 else if(dot < min2) min2 = dot; -380 } -381 -382 if(min1 < min2){ -383 overlap = min2 - max1; -384 normal.x = -normal.x; -385 normal.y = -normal.y; -386 }else{ -387 overlap = min1 - max2; -388 } -389 -390 if(overlap >= 0){ -391 return false; -392 }else if(overlap > result.overlap){ -393 result.overlap = overlap; -394 result.normal.x = normal.x; -395 result.normal.y = normal.y; -396 } -397 } -398 -399 return result; -400 } -401 -402 })(); \ No newline at end of file +364/** +365 * @private +366 */ +367 function pointInPolygon(x, y, poly){ +368 var cross = 0, onBorder = false, minX, maxX, minY, maxY; +369 +370 for(var i = 0, len = poly.length; i < len; i++){ +371 var p1 = poly[i], p2 = poly[(i+1)%len]; +372 +373 if(p1.y == p2.y && y == p1.y){ +374 p1.x > p2.x ? (minX = p2.x, maxX = p1.x) : (minX = p1.x, maxX = p2.x); +375 if(x >= minX && x <= maxX){ +376 onBorder = true; +377 continue; +378 } +379 } +380 +381 p1.y > p2.y ? (minY = p2.y, maxY = p1.y) : (minY = p1.y, maxY = p2.y); +382 if(y < minY || y > maxY) continue; +383 +384 var nx = (y - p1.y)*(p2.x - p1.x) / (p2.y - p1.y) + p1.x; +385 if(nx > x) cross++; +386 else if(nx == x) onBorder = true; +387 +388 //当射线和多边形相交 +389 if(p1.x > x && p1.y == y){ +390 var p0 = poly[(len+i-1)%len]; +391 //当交点的两边在射线两旁 +392 if(p0.y < y && p2.y > y || p0.y > y && p2.y < y){ +393 cross ++; +394 } +395 } +396 } +397 +398 return onBorder || (cross % 2 == 1); +399 } +400 +401 /** +402 * @private +403 */ +404 function polygonCollision(poly1, poly2){ +405 var result = doSATCheck(poly1, poly2, {overlap:-Infinity, normal:{x:0, y:0}}); +406 if(result) return doSATCheck(poly2, poly1, result); +407 return false; +408 } +409 +410 /** +411 * @private +412 */ +413 function doSATCheck(poly1, poly2, result){ +414 var len1 = poly1.length, len2 = poly2.length, +415 currentPoint, nextPoint, distance, +416 min1, max1, min2, max2, dot, overlap, normal = {x:0, y:0}; +417 +418 for(var i = 0; i < len1; i++){ +419 currentPoint = poly1[i]; +420 nextPoint = poly1[(i < len1-1 ? i+1 : 0)]; +421 +422 normal.x = currentPoint.y - nextPoint.y; +423 normal.y = nextPoint.x - currentPoint.x; +424 +425 distance = Math.sqrt(normal.x * normal.x + normal.y * normal.y); +426 normal.x /= distance; +427 normal.y /= distance; +428 +429 min1 = max1 = poly1[0].x * normal.x + poly1[0].y * normal.y; +430 for(var j = 1; j < len1; j++){ +431 dot = poly1[j].x * normal.x + poly1[j].y * normal.y; +432 if(dot > max1) max1 = dot; +433 else if(dot < min1) min1 = dot; +434 } +435 +436 min2 = max2 = poly2[0].x * normal.x + poly2[0].y * normal.y; +437 for(j = 1; j < len2; j++){ +438 dot = poly2[j].x * normal.x + poly2[j].y * normal.y; +439 if(dot > max2) max2 = dot; +440 else if(dot < min2) min2 = dot; +441 } +442 +443 if(min1 < min2){ +444 overlap = min2 - max1; +445 normal.x = -normal.x; +446 normal.y = -normal.y; +447 }else{ +448 overlap = min1 - max2; +449 } +450 +451 if(overlap >= 0){ +452 return false; +453 }else if(overlap > result.overlap){ +454 result.overlap = overlap; +455 result.normal.x = normal.x; +456 result.normal.y = normal.y; +457 } +458 } +459 +460 return result; +461 } +462 +463 })(); \ No newline at end of file diff --git a/docs/api-zh/code/renderer/CanvasRenderer.js b/docs/api-zh/code/renderer/CanvasRenderer.js index cc5ae51a..6465bbf5 100644 --- a/docs/api-zh/code/renderer/CanvasRenderer.js +++ b/docs/api-zh/code/renderer/CanvasRenderer.js @@ -133,53 +133,9 @@ var CanvasRenderer = Class.create(/** @lends CanvasRenderer.prototype */{ //alignment var align = target.align; if(align){ - if(typeof align === 'function'){ - target.align(); - }else{ - var parent = target.parent; - if(parent){ - var w = target.width, h = target.height, - pw = parent.width, ph = parent.height; - switch(align){ - case 'TL': - x = 0; - y = 0; - break; - case 'T': - x = pw - w >> 1; - y = 0; - break; - case 'TR': - x = pw - w; - y = 0; - break; - case 'L': - x = 0; - y = ph - h >> 1; - break; - case 'C': - x = pw - w >> 1; - y = ph - h >> 1; - break; - case 'R': - x = pw - w; - y = ph - h >> 1; - break; - case 'BL': - x = 0; - y = ph - h; - break; - case 'B': - x = pw - w >> 1; - y = ph - h; - break; - case 'BR': - x = pw - w; - y = ph - h; - break; - } - } - } + var pos = target.getAlignPosition(); + x = pos.x; + y = pos.y; } if(x != 0 || y != 0) ctx.translate(x, y); diff --git a/docs/api-zh/code/renderer/WebGLRenderer.js b/docs/api-zh/code/renderer/WebGLRenderer.js index 14a92fbf..202a3d94 100644 --- a/docs/api-zh/code/renderer/WebGLRenderer.js +++ b/docs/api-zh/code/renderer/WebGLRenderer.js @@ -424,12 +424,13 @@ var WebGLRenderer = Class.create(/** @lends WebGLRenderer.prototype */{ sin = Math.sin(r); } + var pos = view.getAlignPosition(); mtx.a = cos*scaleX; mtx.b = sin*scaleX; mtx.c = -sin*scaleY; mtx.d = cos*scaleY; - mtx.tx = view.x - mtx.a * pivotX - mtx.c * pivotY; - mtx.ty = view.y - mtx.b * pivotX - mtx.d * pivotY; + mtx.tx = pos.x - mtx.a * pivotX - mtx.c * pivotY; + mtx.ty = pos.y - mtx.b * pivotX - mtx.d * pivotY; mtx.concat(ancestor.__webglWorldMatrix); }, diff --git a/docs/api-zh/code/view/View.js b/docs/api-zh/code/view/View.js index 676c18d9..7a069062 100644 --- a/docs/api-zh/code/view/View.js +++ b/docs/api-zh/code/view/View.js @@ -185,11 +185,72 @@ return Class.create(/** @lends View.prototype */{ if(pivotX != 0) mtx.tx -= pivotX; if(pivotY != 0) mtx.ty -= pivotY; - mtx.concat(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, o.x, o.y); + + var pos = o.getAlignPosition(); + mtx.concat(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, pos.x, pos.y); } return mtx; }, + getAlignPosition: function(){ + var parent = this.parent; + var align = this.align; + var x = this.x; + var y = this.y; + + if(parent && this.align){ + if(typeof align === 'function'){ + return this.align(); + } + + var w = this.width, h = this.height, + pw = parent.width, ph = parent.height; + switch(align){ + case 'TL': + x = 0; + y = 0; + break; + case 'T': + x = pw - w >> 1; + y = 0; + break; + case 'TR': + x = pw - w; + y = 0; + break; + case 'L': + x = 0; + y = ph - h >> 1; + break; + case 'C': + x = pw - w >> 1; + y = ph - h >> 1; + break; + case 'R': + x = pw - w; + y = ph - h >> 1; + break; + case 'BL': + x = 0; + y = ph - h; + break; + case 'B': + x = pw - w >> 1; + y = ph - h; + break; + case 'BR': + x = pw - w; + y = ph - h; + break; + } + } + + return { + x:x, + y:y + }; + }, + /** * 检测由x和y参数指定的点是否在其外接矩形之内。 * @param {Number} x 要检测的点的x轴坐标。 diff --git a/docs/api-zh/index.html b/docs/api-zh/index.html index 948c9160..ab83a0a2 100644 --- a/docs/api-zh/index.html +++ b/docs/api-zh/index.html @@ -188,7 +188,7 @@
    -
    全部类概览(v1.1.4)
    +
    全部类概览(v1.1.5)
    diff --git a/docs/api-zh/symbols/src/docs_api-zh_code_renderer_CanvasRenderer.js.html b/docs/api-zh/symbols/src/docs_api-zh_code_renderer_CanvasRenderer.js.html index 7cf2cd54..a8020584 100644 --- a/docs/api-zh/symbols/src/docs_api-zh_code_renderer_CanvasRenderer.js.html +++ b/docs/api-zh/symbols/src/docs_api-zh_code_renderer_CanvasRenderer.js.html @@ -140,102 +140,58 @@ 133 //alignment 134 var align = target.align; 135 if(align){ -136 if(typeof align === 'function'){ -137 target.align(); -138 }else{ -139 var parent = target.parent; -140 if(parent){ -141 var w = target.width, h = target.height, -142 pw = parent.width, ph = parent.height; -143 switch(align){ -144 case 'TL': -145 x = 0; -146 y = 0; -147 break; -148 case 'T': -149 x = pw - w >> 1; -150 y = 0; -151 break; -152 case 'TR': -153 x = pw - w; -154 y = 0; -155 break; -156 case 'L': -157 x = 0; -158 y = ph - h >> 1; -159 break; -160 case 'C': -161 x = pw - w >> 1; -162 y = ph - h >> 1; -163 break; -164 case 'R': -165 x = pw - w; -166 y = ph - h >> 1; -167 break; -168 case 'BL': -169 x = 0; -170 y = ph - h; -171 break; -172 case 'B': -173 x = pw - w >> 1; -174 y = ph - h; -175 break; -176 case 'BR': -177 x = pw - w; -178 y = ph - h; -179 break; -180 } -181 } -182 } -183 } -184 -185 if(x != 0 || y != 0) ctx.translate(x, y); -186 if(rotation != 0) ctx.rotate(rotation * Math.PI / 180); -187 if(scaleX != 1 || scaleY != 1) ctx.scale(scaleX, scaleY); -188 if(pivotX != 0 || pivotY != 0) ctx.translate(-pivotX, -pivotY); -189 } -190 -191 if(target.alpha > 0) ctx.globalAlpha *= target.alpha; -192 }, -193 -194 /** -195 * @private -196 * @see Renderer#remove -197 */ -198 remove: function(target){ -199 var drawable = target.drawable; -200 var elem = drawable && drawable.domElement; -201 -202 if(elem){ -203 var parentElem = elem.parentNode; -204 if(parentElem){ -205 parentElem.removeChild(elem); -206 } -207 } -208 }, -209 -210 /** -211 * @private -212 * @see Renderer#clear -213 */ -214 clear: function(x, y, width, height){ -215 this.context.clearRect(x, y, width, height); -216 }, -217 -218 /** -219 * @private -220 * @see Renderer#resize -221 */ -222 resize: function(width, height){ -223 var canvas = this.canvas; -224 var stage = this.stage; -225 var style = canvas.style; -226 -227 canvas.width = width; -228 canvas.height = height; -229 -230 style.width = stage.width * stage.scaleX + 'px'; -231 style.height = stage.height * stage.scaleY + 'px'; -232 } -233 -234 }); \ No newline at end of file +136 var pos = target.getAlignPosition(); +137 x = pos.x; +138 y = pos.y; +139 } +140 +141 if(x != 0 || y != 0) ctx.translate(x, y); +142 if(rotation != 0) ctx.rotate(rotation * Math.PI / 180); +143 if(scaleX != 1 || scaleY != 1) ctx.scale(scaleX, scaleY); +144 if(pivotX != 0 || pivotY != 0) ctx.translate(-pivotX, -pivotY); +145 } +146 +147 if(target.alpha > 0) ctx.globalAlpha *= target.alpha; +148 }, +149 +150 /** +151 * @private +152 * @see Renderer#remove +153 */ +154 remove: function(target){ +155 var drawable = target.drawable; +156 var elem = drawable && drawable.domElement; +157 +158 if(elem){ +159 var parentElem = elem.parentNode; +160 if(parentElem){ +161 parentElem.removeChild(elem); +162 } +163 } +164 }, +165 +166 /** +167 * @private +168 * @see Renderer#clear +169 */ +170 clear: function(x, y, width, height){ +171 this.context.clearRect(x, y, width, height); +172 }, +173 +174 /** +175 * @private +176 * @see Renderer#resize +177 */ +178 resize: function(width, height){ +179 var canvas = this.canvas; +180 var stage = this.stage; +181 var style = canvas.style; +182 +183 canvas.width = width; +184 canvas.height = height; +185 +186 style.width = stage.width * stage.scaleX + 'px'; +187 style.height = stage.height * stage.scaleY + 'px'; +188 } +189 +190 }); \ No newline at end of file diff --git a/docs/api-zh/symbols/src/docs_api-zh_code_renderer_WebGLRenderer.js.html b/docs/api-zh/symbols/src/docs_api-zh_code_renderer_WebGLRenderer.js.html index 65fa434b..d80f96fe 100644 --- a/docs/api-zh/symbols/src/docs_api-zh_code_renderer_WebGLRenderer.js.html +++ b/docs/api-zh/symbols/src/docs_api-zh_code_renderer_WebGLRenderer.js.html @@ -431,134 +431,135 @@ 424 sin = Math.sin(r); 425 } 426 -427 mtx.a = cos*scaleX; -428 mtx.b = sin*scaleX; -429 mtx.c = -sin*scaleY; -430 mtx.d = cos*scaleY; -431 mtx.tx = view.x - mtx.a * pivotX - mtx.c * pivotY; -432 mtx.ty = view.y - mtx.b * pivotX - mtx.d * pivotY; -433 -434 mtx.concat(ancestor.__webglWorldMatrix); -435 }, -436 _getTexture:function(sprite){ -437 var image = sprite.__textureImage; -438 var texture = this._cacheTexture[image.src]; -439 if(!texture){ -440 texture = this.activeShader.uploadTexture(image); -441 } -442 return texture; -443 } -444 }); -445 -446 /** -447 * shader -448 * @param {WebGLRenderer} renderer [description] -449 * @param {Object} source -450 * @param {String} source.v 顶点shader -451 * @param {String} source.f 片段shader -452 * @param {Object} attr -453 * @param {Array} attr.attributes attribute数组 -454 * @param {Array} attr.uniforms uniform数组 -455 */ -456 var Shader = function(renderer, source, attr){ -457 this.renderer = renderer; -458 this.gl = renderer.gl; -459 this.program = this._createProgram(this.gl, source.v, source.f); -460 -461 attr = attr||{}; -462 this.attributes = attr.attributes||[]; -463 this.uniforms = attr.uniforms||[]; -464 }; -465 -466 Shader.prototype = { -467 active:function(){ -468 var that = this; -469 var renderer = that.renderer; -470 var gl = that.gl; -471 var program = that.program; -472 -473 if(program && gl){ -474 renderer.activeShader = that; -475 gl.useProgram(program); -476 that.attributes.forEach(function(attribute){ -477 renderer[attribute] = gl.getAttribLocation(program, attribute); -478 gl.enableVertexAttribArray(renderer[attribute]); -479 }); -480 -481 that.uniforms.forEach(function(uniform){ -482 renderer[uniform] = gl.getUniformLocation(program, uniform); -483 }); -484 -485 if(that.width !== renderer.width || that.height !== renderer.height){ -486 that.width = renderer.width; -487 that.height = renderer.height; -488 renderer._uploadProjectionTransform(); -489 } -490 } -491 }, -492 uploadTexture:function(image){ -493 var gl = this.gl; -494 var renderer = this.renderer; -495 var texture = gl.createTexture(); -496 var u_Sampler = renderer.u_Sampler; -497 -498 gl.activeTexture(gl.TEXTURE0); -499 gl.bindTexture(gl.TEXTURE_2D, texture); -500 -501 // gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, 1); -502 gl.pixelStorei(gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL, 1); -503 gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, gl.UNSIGNED_BYTE, image); -504 -505 gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR); -506 gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR); -507 gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE); -508 gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE); -509 gl.uniform1i(u_Sampler, 0); -510 gl.bindTexture(gl.TEXTURE_2D, null); -511 -512 this.renderer._cacheTexture[image.src] = texture; -513 return texture; -514 }, -515 _createProgram:function(gl, vshader, fshader){ -516 var vertexShader = this._createShader(gl, gl.VERTEX_SHADER, vshader); -517 var fragmentShader = this._createShader(gl, gl.FRAGMENT_SHADER, fshader); -518 if (!vertexShader || !fragmentShader) { -519 return null; -520 } -521 -522 var program = gl.createProgram(); -523 if (program) { -524 gl.attachShader(program, vertexShader); -525 gl.attachShader(program, fragmentShader); -526 -527 gl.linkProgram(program); -528 -529 gl.deleteShader(fragmentShader); -530 gl.deleteShader(vertexShader); -531 var linked = gl.getProgramParameter(program, gl.LINK_STATUS); -532 if (!linked) { -533 var error = gl.getProgramInfoLog(program); -534 console.log('Failed to link program: ' + error); -535 gl.deleteProgram(program); -536 return null; -537 } -538 } -539 return program; -540 }, -541 _createShader:function(gl, type, source){ -542 var shader = gl.createShader(type); -543 if(shader){ -544 gl.shaderSource(shader, source); -545 gl.compileShader(shader); -546 -547 var compiled = gl.getShaderParameter(shader, gl.COMPILE_STATUS); -548 if (!compiled) { -549 var error = gl.getShaderInfoLog(shader); -550 console.log('Failed to compile shader: ' + error); -551 gl.deleteShader(shader); -552 return null; -553 } -554 } -555 return shader; -556 } -557 }; \ No newline at end of file +427 var pos = view.getAlignPosition(); +428 mtx.a = cos*scaleX; +429 mtx.b = sin*scaleX; +430 mtx.c = -sin*scaleY; +431 mtx.d = cos*scaleY; +432 mtx.tx = pos.x - mtx.a * pivotX - mtx.c * pivotY; +433 mtx.ty = pos.y - mtx.b * pivotX - mtx.d * pivotY; +434 +435 mtx.concat(ancestor.__webglWorldMatrix); +436 }, +437 _getTexture:function(sprite){ +438 var image = sprite.__textureImage; +439 var texture = this._cacheTexture[image.src]; +440 if(!texture){ +441 texture = this.activeShader.uploadTexture(image); +442 } +443 return texture; +444 } +445 }); +446 +447 /** +448 * shader +449 * @param {WebGLRenderer} renderer [description] +450 * @param {Object} source +451 * @param {String} source.v 顶点shader +452 * @param {String} source.f 片段shader +453 * @param {Object} attr +454 * @param {Array} attr.attributes attribute数组 +455 * @param {Array} attr.uniforms uniform数组 +456 */ +457 var Shader = function(renderer, source, attr){ +458 this.renderer = renderer; +459 this.gl = renderer.gl; +460 this.program = this._createProgram(this.gl, source.v, source.f); +461 +462 attr = attr||{}; +463 this.attributes = attr.attributes||[]; +464 this.uniforms = attr.uniforms||[]; +465 }; +466 +467 Shader.prototype = { +468 active:function(){ +469 var that = this; +470 var renderer = that.renderer; +471 var gl = that.gl; +472 var program = that.program; +473 +474 if(program && gl){ +475 renderer.activeShader = that; +476 gl.useProgram(program); +477 that.attributes.forEach(function(attribute){ +478 renderer[attribute] = gl.getAttribLocation(program, attribute); +479 gl.enableVertexAttribArray(renderer[attribute]); +480 }); +481 +482 that.uniforms.forEach(function(uniform){ +483 renderer[uniform] = gl.getUniformLocation(program, uniform); +484 }); +485 +486 if(that.width !== renderer.width || that.height !== renderer.height){ +487 that.width = renderer.width; +488 that.height = renderer.height; +489 renderer._uploadProjectionTransform(); +490 } +491 } +492 }, +493 uploadTexture:function(image){ +494 var gl = this.gl; +495 var renderer = this.renderer; +496 var texture = gl.createTexture(); +497 var u_Sampler = renderer.u_Sampler; +498 +499 gl.activeTexture(gl.TEXTURE0); +500 gl.bindTexture(gl.TEXTURE_2D, texture); +501 +502 // gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, 1); +503 gl.pixelStorei(gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL, 1); +504 gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, gl.UNSIGNED_BYTE, image); +505 +506 gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR); +507 gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR); +508 gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE); +509 gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE); +510 gl.uniform1i(u_Sampler, 0); +511 gl.bindTexture(gl.TEXTURE_2D, null); +512 +513 this.renderer._cacheTexture[image.src] = texture; +514 return texture; +515 }, +516 _createProgram:function(gl, vshader, fshader){ +517 var vertexShader = this._createShader(gl, gl.VERTEX_SHADER, vshader); +518 var fragmentShader = this._createShader(gl, gl.FRAGMENT_SHADER, fshader); +519 if (!vertexShader || !fragmentShader) { +520 return null; +521 } +522 +523 var program = gl.createProgram(); +524 if (program) { +525 gl.attachShader(program, vertexShader); +526 gl.attachShader(program, fragmentShader); +527 +528 gl.linkProgram(program); +529 +530 gl.deleteShader(fragmentShader); +531 gl.deleteShader(vertexShader); +532 var linked = gl.getProgramParameter(program, gl.LINK_STATUS); +533 if (!linked) { +534 var error = gl.getProgramInfoLog(program); +535 console.log('Failed to link program: ' + error); +536 gl.deleteProgram(program); +537 return null; +538 } +539 } +540 return program; +541 }, +542 _createShader:function(gl, type, source){ +543 var shader = gl.createShader(type); +544 if(shader){ +545 gl.shaderSource(shader, source); +546 gl.compileShader(shader); +547 +548 var compiled = gl.getShaderParameter(shader, gl.COMPILE_STATUS); +549 if (!compiled) { +550 var error = gl.getShaderInfoLog(shader); +551 console.log('Failed to compile shader: ' + error); +552 gl.deleteShader(shader); +553 return null; +554 } +555 } +556 return shader; +557 } +558 }; \ No newline at end of file diff --git a/docs/api-zh/symbols/src/docs_api-zh_code_view_View.js.html b/docs/api-zh/symbols/src/docs_api-zh_code_view_View.js.html index 1ffb2f8a..fe40472a 100644 --- a/docs/api-zh/symbols/src/docs_api-zh_code_view_View.js.html +++ b/docs/api-zh/symbols/src/docs_api-zh_code_view_View.js.html @@ -192,218 +192,279 @@ 185186 if(pivotX != 0) mtx.tx -= pivotX; 187 if(pivotY != 0) mtx.ty -= pivotY; -188 mtx.concat(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, o.x, o.y); -189 } -190 return mtx; -191 }, -192 -193 /** -194 * 检测由x和y参数指定的点是否在其外接矩形之内。 -195 * @param {Number} x 要检测的点的x轴坐标。 -196 * @param {Number} y 要检测的点的y轴坐标。 -197 * @param {Boolean} usePolyCollision 是否使用多边形碰撞检测。默认为false。 -198 * @returns {Boolean} 点是否在可视对象之内。 -199 */ -200 hitTestPoint: function(x, y, usePolyCollision){ -201 var bound = this.getBounds(), -202 hit = x >= bound.x && x <= bound.x + bound.width && -203 y >= bound.y && y <= bound.y + bound.height; -204 -205 if(hit && usePolyCollision){ -206 hit = pointInPolygon(x, y, bound); -207 } -208 return hit; -209 }, -210 -211 /** -212 * 检测object参数指定的对象是否与其相交。 -213 * @param {View} object 要检测的可视对象。 -214 * @param {Boolean} usePolyCollision 是否使用多边形碰撞检测。默认为false。 -215 */ -216 hitTestObject: function(object, usePolyCollision){ -217 var b1 = this.getBounds(), -218 b2 = object.getBounds(), -219 hit = b1.x <= b2.x + b2.width && b2.x <= b1.x + b1.width && -220 b1.y <= b2.y + b2.height && b2.y <= b1.y + b1.height; -221 -222 if(hit && usePolyCollision){ -223 hit = polygonCollision(b1, b2); -224 } -225 return !!hit; -226 }, -227 -228 /** -229 * 可视对象的基本渲染实现,用于框架内部或高级开发使用。通常应该重写render方法。 -230 * @param {Renderer} renderer 渲染器。 -231 * @param {Number} delta 渲染时时间偏移量。 -232 * @protected -233 */ -234 _render: function(renderer, delta){ -235 if((!this.onUpdate || this.onUpdate(delta) !== false) && renderer.startDraw(this)){ -236 renderer.transform(this); -237 this.render(renderer, delta); -238 renderer.endDraw(this); -239 } -240 }, -241 /** -242 * 冒泡鼠标事件 -243 */ -244 _fireMouseEvent:function(e){ -245 e.eventCurrentTarget = this; -246 this.fire(e); +188 +189 var pos = o.getAlignPosition(); +190 mtx.concat(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, pos.x, pos.y); +191 } +192 return mtx; +193 }, +194 +195 getAlignPosition: function(){ +196 var parent = this.parent; +197 var align = this.align; +198 var x = this.x; +199 var y = this.y; +200 +201 if(parent && this.align){ +202 if(typeof align === 'function'){ +203 return this.align(); +204 } +205 +206 var w = this.width, h = this.height, +207 pw = parent.width, ph = parent.height; +208 switch(align){ +209 case 'TL': +210 x = 0; +211 y = 0; +212 break; +213 case 'T': +214 x = pw - w >> 1; +215 y = 0; +216 break; +217 case 'TR': +218 x = pw - w; +219 y = 0; +220 break; +221 case 'L': +222 x = 0; +223 y = ph - h >> 1; +224 break; +225 case 'C': +226 x = pw - w >> 1; +227 y = ph - h >> 1; +228 break; +229 case 'R': +230 x = pw - w; +231 y = ph - h >> 1; +232 break; +233 case 'BL': +234 x = 0; +235 y = ph - h; +236 break; +237 case 'B': +238 x = pw - w >> 1; +239 y = ph - h; +240 break; +241 case 'BR': +242 x = pw - w; +243 y = ph - h; +244 break; +245 } +246 } 247 -248 // 处理mouseover事件 mouseover不需要阻止冒泡 -249 // handle mouseover event, mouseover needn't stop propagation. -250 if(e.type == "mousemove"){ -251 if(!this.__mouseOver){ -252 this.__mouseOver = true; -253 var overEvent = util.copy({}, e); -254 overEvent.type = "mouseover"; -255 this.fire(overEvent); -256 } -257 } -258 else if(e.type == "mouseout"){ -259 this.__mouseOver = false; -260 } -261 -262 // 向上冒泡 -263 // handle event propagation -264 var parent = this.parent; -265 if(!e._stopped && !e._stopPropagationed && parent){ -266 if(e.type == "mouseout" || e.type == "touchout"){ -267 if(!parent.hitTestPoint(e.stageX, e.stageY, true)){ -268 parent._fireMouseEvent(e); -269 } -270 } -271 else{ -272 parent._fireMouseEvent(e); -273 } -274 } -275 }, -276 -277 /** -278 * 更新可视对象,此方法会在可视对象渲染之前调用。此函数可以返回一个Boolean值。若返回false,则此对象不会渲染。默认值为null。 -279 * 限制:如果在此函数中改变了可视对象在其父容器中的层级,当前渲染帧并不会正确渲染,而是在下一渲染帧。可在其父容器的onUpdate方法中来实现。 -280 * @type Function -281 * @default null -282 */ -283 onUpdate: null, -284 -285 /** -286 * 可视对象的具体渲染逻辑。子类可通过覆盖此方法实现自己的渲染。 -287 * @param {Renderer} renderer 渲染器。 -288 * @param {Number} delta 渲染时时间偏移量。 -289 */ -290 render: function(renderer, delta){ -291 renderer.draw(this); -292 }, -293 -294 /** -295 * 返回可视对象的字符串表示。 -296 * @returns {String} 可视对象的字符串表示。 -297 */ -298 toString: function(){ -299 return Hilo.viewToString(this); -300 } -301 }); -302 -303 /** -304 * @private -305 */ -306 function pointInPolygon(x, y, poly){ -307 var cross = 0, onBorder = false, minX, maxX, minY, maxY; +248 return { +249 x:x, +250 y:y +251 }; +252 }, +253 +254 /** +255 * 检测由x和y参数指定的点是否在其外接矩形之内。 +256 * @param {Number} x 要检测的点的x轴坐标。 +257 * @param {Number} y 要检测的点的y轴坐标。 +258 * @param {Boolean} usePolyCollision 是否使用多边形碰撞检测。默认为false。 +259 * @returns {Boolean} 点是否在可视对象之内。 +260 */ +261 hitTestPoint: function(x, y, usePolyCollision){ +262 var bound = this.getBounds(), +263 hit = x >= bound.x && x <= bound.x + bound.width && +264 y >= bound.y && y <= bound.y + bound.height; +265 +266 if(hit && usePolyCollision){ +267 hit = pointInPolygon(x, y, bound); +268 } +269 return hit; +270 }, +271 +272 /** +273 * 检测object参数指定的对象是否与其相交。 +274 * @param {View} object 要检测的可视对象。 +275 * @param {Boolean} usePolyCollision 是否使用多边形碰撞检测。默认为false。 +276 */ +277 hitTestObject: function(object, usePolyCollision){ +278 var b1 = this.getBounds(), +279 b2 = object.getBounds(), +280 hit = b1.x <= b2.x + b2.width && b2.x <= b1.x + b1.width && +281 b1.y <= b2.y + b2.height && b2.y <= b1.y + b1.height; +282 +283 if(hit && usePolyCollision){ +284 hit = polygonCollision(b1, b2); +285 } +286 return !!hit; +287 }, +288 +289 /** +290 * 可视对象的基本渲染实现,用于框架内部或高级开发使用。通常应该重写render方法。 +291 * @param {Renderer} renderer 渲染器。 +292 * @param {Number} delta 渲染时时间偏移量。 +293 * @protected +294 */ +295 _render: function(renderer, delta){ +296 if((!this.onUpdate || this.onUpdate(delta) !== false) && renderer.startDraw(this)){ +297 renderer.transform(this); +298 this.render(renderer, delta); +299 renderer.endDraw(this); +300 } +301 }, +302 /** +303 * 冒泡鼠标事件 +304 */ +305 _fireMouseEvent:function(e){ +306 e.eventCurrentTarget = this; +307 this.fire(e); 308 -309 for(var i = 0, len = poly.length; i < len; i++){ -310 var p1 = poly[i], p2 = poly[(i+1)%len]; -311 -312 if(p1.y == p2.y && y == p1.y){ -313 p1.x > p2.x ? (minX = p2.x, maxX = p1.x) : (minX = p1.x, maxX = p2.x); -314 if(x >= minX && x <= maxX){ -315 onBorder = true; -316 continue; +309 // 处理mouseover事件 mouseover不需要阻止冒泡 +310 // handle mouseover event, mouseover needn't stop propagation. +311 if(e.type == "mousemove"){ +312 if(!this.__mouseOver){ +313 this.__mouseOver = true; +314 var overEvent = util.copy({}, e); +315 overEvent.type = "mouseover"; +316 this.fire(overEvent); 317 } 318 } -319 -320 p1.y > p2.y ? (minY = p2.y, maxY = p1.y) : (minY = p1.y, maxY = p2.y); -321 if(y < minY || y > maxY) continue; +319 else if(e.type == "mouseout"){ +320 this.__mouseOver = false; +321 } 322 -323 var nx = (y - p1.y)*(p2.x - p1.x) / (p2.y - p1.y) + p1.x; -324 if(nx > x) cross++; -325 else if(nx == x) onBorder = true; -326 -327 //当射线和多边形相交 -328 if(p1.x > x && p1.y == y){ -329 var p0 = poly[(len+i-1)%len]; -330 //当交点的两边在射线两旁 -331 if(p0.y < y && p2.y > y || p0.y > y && p2.y < y){ -332 cross ++; -333 } -334 } -335 } -336 -337 return onBorder || (cross % 2 == 1); -338 } -339 -340 /** -341 * @private -342 */ -343 function polygonCollision(poly1, poly2){ -344 var result = doSATCheck(poly1, poly2, {overlap:-Infinity, normal:{x:0, y:0}}); -345 if(result) return doSATCheck(poly2, poly1, result); -346 return false; -347 } -348 -349 /** -350 * @private -351 */ -352 function doSATCheck(poly1, poly2, result){ -353 var len1 = poly1.length, len2 = poly2.length, -354 currentPoint, nextPoint, distance, -355 min1, max1, min2, max2, dot, overlap, normal = {x:0, y:0}; -356 -357 for(var i = 0; i < len1; i++){ -358 currentPoint = poly1[i]; -359 nextPoint = poly1[(i < len1-1 ? i+1 : 0)]; -360 -361 normal.x = currentPoint.y - nextPoint.y; -362 normal.y = nextPoint.x - currentPoint.x; +323 // 向上冒泡 +324 // handle event propagation +325 var parent = this.parent; +326 if(!e._stopped && !e._stopPropagationed && parent){ +327 if(e.type == "mouseout" || e.type == "touchout"){ +328 if(!parent.hitTestPoint(e.stageX, e.stageY, true)){ +329 parent._fireMouseEvent(e); +330 } +331 } +332 else{ +333 parent._fireMouseEvent(e); +334 } +335 } +336 }, +337 +338 /** +339 * 更新可视对象,此方法会在可视对象渲染之前调用。此函数可以返回一个Boolean值。若返回false,则此对象不会渲染。默认值为null。 +340 * 限制:如果在此函数中改变了可视对象在其父容器中的层级,当前渲染帧并不会正确渲染,而是在下一渲染帧。可在其父容器的onUpdate方法中来实现。 +341 * @type Function +342 * @default null +343 */ +344 onUpdate: null, +345 +346 /** +347 * 可视对象的具体渲染逻辑。子类可通过覆盖此方法实现自己的渲染。 +348 * @param {Renderer} renderer 渲染器。 +349 * @param {Number} delta 渲染时时间偏移量。 +350 */ +351 render: function(renderer, delta){ +352 renderer.draw(this); +353 }, +354 +355 /** +356 * 返回可视对象的字符串表示。 +357 * @returns {String} 可视对象的字符串表示。 +358 */ +359 toString: function(){ +360 return Hilo.viewToString(this); +361 } +362 }); 363 -364 distance = Math.sqrt(normal.x * normal.x + normal.y * normal.y); -365 normal.x /= distance; -366 normal.y /= distance; -367 -368 min1 = max1 = poly1[0].x * normal.x + poly1[0].y * normal.y; -369 for(var j = 1; j < len1; j++){ -370 dot = poly1[j].x * normal.x + poly1[j].y * normal.y; -371 if(dot > max1) max1 = dot; -372 else if(dot < min1) min1 = dot; -373 } -374 -375 min2 = max2 = poly2[0].x * normal.x + poly2[0].y * normal.y; -376 for(j = 1; j < len2; j++){ -377 dot = poly2[j].x * normal.x + poly2[j].y * normal.y; -378 if(dot > max2) max2 = dot; -379 else if(dot < min2) min2 = dot; -380 } -381 -382 if(min1 < min2){ -383 overlap = min2 - max1; -384 normal.x = -normal.x; -385 normal.y = -normal.y; -386 }else{ -387 overlap = min1 - max2; -388 } -389 -390 if(overlap >= 0){ -391 return false; -392 }else if(overlap > result.overlap){ -393 result.overlap = overlap; -394 result.normal.x = normal.x; -395 result.normal.y = normal.y; -396 } -397 } -398 -399 return result; -400 } -401 -402 })(); \ No newline at end of file +364/** +365 * @private +366 */ +367 function pointInPolygon(x, y, poly){ +368 var cross = 0, onBorder = false, minX, maxX, minY, maxY; +369 +370 for(var i = 0, len = poly.length; i < len; i++){ +371 var p1 = poly[i], p2 = poly[(i+1)%len]; +372 +373 if(p1.y == p2.y && y == p1.y){ +374 p1.x > p2.x ? (minX = p2.x, maxX = p1.x) : (minX = p1.x, maxX = p2.x); +375 if(x >= minX && x <= maxX){ +376 onBorder = true; +377 continue; +378 } +379 } +380 +381 p1.y > p2.y ? (minY = p2.y, maxY = p1.y) : (minY = p1.y, maxY = p2.y); +382 if(y < minY || y > maxY) continue; +383 +384 var nx = (y - p1.y)*(p2.x - p1.x) / (p2.y - p1.y) + p1.x; +385 if(nx > x) cross++; +386 else if(nx == x) onBorder = true; +387 +388 //当射线和多边形相交 +389 if(p1.x > x && p1.y == y){ +390 var p0 = poly[(len+i-1)%len]; +391 //当交点的两边在射线两旁 +392 if(p0.y < y && p2.y > y || p0.y > y && p2.y < y){ +393 cross ++; +394 } +395 } +396 } +397 +398 return onBorder || (cross % 2 == 1); +399 } +400 +401 /** +402 * @private +403 */ +404 function polygonCollision(poly1, poly2){ +405 var result = doSATCheck(poly1, poly2, {overlap:-Infinity, normal:{x:0, y:0}}); +406 if(result) return doSATCheck(poly2, poly1, result); +407 return false; +408 } +409 +410 /** +411 * @private +412 */ +413 function doSATCheck(poly1, poly2, result){ +414 var len1 = poly1.length, len2 = poly2.length, +415 currentPoint, nextPoint, distance, +416 min1, max1, min2, max2, dot, overlap, normal = {x:0, y:0}; +417 +418 for(var i = 0; i < len1; i++){ +419 currentPoint = poly1[i]; +420 nextPoint = poly1[(i < len1-1 ? i+1 : 0)]; +421 +422 normal.x = currentPoint.y - nextPoint.y; +423 normal.y = nextPoint.x - currentPoint.x; +424 +425 distance = Math.sqrt(normal.x * normal.x + normal.y * normal.y); +426 normal.x /= distance; +427 normal.y /= distance; +428 +429 min1 = max1 = poly1[0].x * normal.x + poly1[0].y * normal.y; +430 for(var j = 1; j < len1; j++){ +431 dot = poly1[j].x * normal.x + poly1[j].y * normal.y; +432 if(dot > max1) max1 = dot; +433 else if(dot < min1) min1 = dot; +434 } +435 +436 min2 = max2 = poly2[0].x * normal.x + poly2[0].y * normal.y; +437 for(j = 1; j < len2; j++){ +438 dot = poly2[j].x * normal.x + poly2[j].y * normal.y; +439 if(dot > max2) max2 = dot; +440 else if(dot < min2) min2 = dot; +441 } +442 +443 if(min1 < min2){ +444 overlap = min2 - max1; +445 normal.x = -normal.x; +446 normal.y = -normal.y; +447 }else{ +448 overlap = min1 - max2; +449 } +450 +451 if(overlap >= 0){ +452 return false; +453 }else if(overlap > result.overlap){ +454 result.overlap = overlap; +455 result.normal.x = normal.x; +456 result.normal.y = normal.y; +457 } +458 } +459 +460 return result; +461 } +462 +463 })(); \ No newline at end of file diff --git a/examples/align.html b/examples/align.html index 03878c37..3283609d 100644 --- a/examples/align.html +++ b/examples/align.html @@ -30,17 +30,33 @@

    View.align

    ticker.addTick(stage); ticker.start(); + stage.enableDOMEvent([Hilo.event.POINTER_START]); + + var container = new Hilo.Container({ + width:500, + height:300, + background:'#f96', + rotation:30, + x:200, + y:10 + }).addTo(stage); + //draw align constants var aligns = Hilo.align; for(var p in aligns){ var text = new Hilo.Text({ width: 50, + height:30, textAlign: 'center', background: '#ccc', font: '24px Arial', align: aligns[p], text: aligns[p] - }).addTo(stage); + }).addTo(container); + + text.on(Hilo.event.POINTER_START, function(){ + console.log(this.text); + }); } } diff --git a/package.json b/package.json index 368b366b..a5b77e3b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "Hilo", - "version": "1.1.4", + "version": "1.1.5", "description": "Hilo Game Framework", "author": "Hilo Dev Team", "license": "MIT", diff --git a/src/view/View.js b/src/view/View.js index 1191ad8f..d44f03b6 100644 --- a/src/view/View.js +++ b/src/view/View.js @@ -280,11 +280,12 @@ return Class.create(/** @lends View.prototype */{ return mtx; }, - getAlignPosition(){ + getAlignPosition: function(){ var parent = this.parent; var align = this.align; var x = this.x; var y = this.y; + if(parent && this.align){ if(typeof align === 'function'){ return this.align(); @@ -335,7 +336,7 @@ return Class.create(/** @lends View.prototype */{ return { x:x, y:y - } + }; }, /**