From 37921583eafff4a9cbad44c096dba516a1229d1f Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期二, 05 三月 2024 17:23:01 +0800
Subject: [PATCH] #
---
zy-asrs-flow/src/pages/map/player.js | 24 ++++++++++++++++--------
1 files changed, 16 insertions(+), 8 deletions(-)
diff --git a/zy-asrs-flow/src/pages/map/player.js b/zy-asrs-flow/src/pages/map/player.js
index 9f3cbee..f9743f0 100644
--- a/zy-asrs-flow/src/pages/map/player.js
+++ b/zy-asrs-flow/src/pages/map/player.js
@@ -6,7 +6,7 @@
constructor(dom, dark, didClickSprite) {
this.darkModel = dark;
- this.didClickSprite = didClickSprite;
+ this.didClickSprite = didClickSprite; // not dynamic
// init
this.app = generatePixiApp(dark);
dom.appendChild(this.app.view);
@@ -59,6 +59,12 @@
}
mapSelect = (event) => {
+ if (this.selectedSprites && this.selectedSprites.length > 0) {
+ this.selectedSprites.forEach(child => {
+ Utils.unMarkSprite(child);
+ })
+ }
+ this.selectedSprites = [];
let isSelecting = false;
const selectionBox = new PIXI.Graphics();
@@ -93,16 +99,18 @@
this.app.view.addEventListener('mouseup', (event) => {
if (isSelecting) {
+
+ this.mapContainer.children.forEach(child => {
+ if (Utils.isSpriteInSelectionBox(child, selectionBox)) {
+ this.selectedSprites.push(child);
+ Utils.markSprite(child);
+ }
+ })
+
isSelecting = false;
selectionBox.clear();
- // const selectedSprites = this.mapContainer.children.filter(sprite => {
- // const spriteBounds = sprite.getBounds();
- // const boxBounds = new PIXI.Rectangle(Math.min(selectionStart.x, event.clientX), Math.min(selectionStart.y, event.clientY), Math.abs(event.clientX - selectionStart.x), Math.abs(event.clientY - selectionStart.y));
- // return spriteBounds.contains(boxBounds.x, boxBounds.y) && spriteBounds.contains(boxBounds.x + boxBounds.width, boxBounds.y + boxBounds.height);
- // });
-
- // console.log('Selected Sprites:', selectedSprites);
+ console.log('Selected Sprites:', this.selectedSprites);
}
this.app.view.removeEventListener('mousemove', handleMouseMove);
--
Gitblit v1.9.1