| | |
| | | import * as PIXI from 'pixi.js'; |
| | | import * as TWEEDLE from 'tweedle.js'; |
| | | |
| | | let app = null; |
| | | let mapContainer = null; |
| | |
| | | return options; |
| | | } |
| | | |
| | | /** |
| | | * // |
| | | let sprite = mapContainer.children[0]; |
| | | let bounds = sprite.getBounds(); |
| | | console.log(bounds, sprite.getLocalBounds()); |
| | | console.log(sprite.position); |
| | | |
| | | console.log('-'); |
| | | |
| | | console.log(mapContainer.scale, mapContainer.position); |
| | | |
| | | console.log('==========='); |
| | | |
| | | |
| | | return; |
| | | */ |
| | | |
| | | export const adaptScreen = () => { |
| | | if (!mapContainer || !app) { |
| | | return; |
| | |
| | | app.renderer.height / (maxY - minY) * 0.9 // 90%的高度 |
| | | ); |
| | | |
| | | mapContainer.scale.set(newScale); |
| | | new TWEEDLE.Tween(mapContainer.scale).easing(TWEEDLE.Easing.Quadratic.Out) |
| | | .to({ |
| | | x: newScale, |
| | | y: newScale |
| | | }, 200).start(); |
| | | |
| | | // 让地图容器的中心点定位到屏幕的中心 |
| | | mapContainer.position.set( |
| | | app.renderer.width / 2 - centerPoint.x * newScale, |
| | | app.renderer.height / 2 - centerPoint.y * newScale |
| | | ); |
| | | new TWEEDLE.Tween(mapContainer.position).easing(TWEEDLE.Easing.Quadratic.Out) |
| | | .to({ |
| | | x: app.renderer.width / 2 - centerPoint.x * newScale, |
| | | y: app.renderer.height / 2 - centerPoint.y * newScale |
| | | }, 200).start(); |
| | | } |