From 8743d48cd3b579aa572c92510771d1e33aaf83e8 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期一, 11 三月 2024 14:28:37 +0800
Subject: [PATCH] #

---
 zy-asrs-flow/src/pages/map/components/settings.jsx    |   19 +++++++++----------
 zy-asrs-flow/src/pages/map/utils.js                   |    9 +++++++++
 zy-asrs-flow/src/pages/map/components/subSettings.jsx |    2 +-
 3 files changed, 19 insertions(+), 11 deletions(-)

diff --git a/zy-asrs-flow/src/pages/map/components/settings.jsx b/zy-asrs-flow/src/pages/map/components/settings.jsx
index 16c0c8f..ce0677a 100644
--- a/zy-asrs-flow/src/pages/map/components/settings.jsx
+++ b/zy-asrs-flow/src/pages/map/components/settings.jsx
@@ -105,30 +105,30 @@
     };
 
     const handleOnCopy = (values) => {
-        console.log(curSprite.clone());
+        if (!curSprite) {
+            return;
+        }
         for (let i = 0; i < values.copyCount; i++) {
-            const copiedSprite = JSON.parse(JSON.stringify(curSprite));
+            const copiedSprite = Utils.copySprite(curSprite);
             switch (values.copyDire) {
                 case 'left':
-                    copiedSprite.position.x -= (i + 1) * values.copyGap;
+                    copiedSprite.position.x -= (i + 1) * (values.copyGap + copiedSprite.width);
                     break;
                 case 'right':
-                    copiedSprite.position.x += (i + 1) * values.copyGap;
+                    copiedSprite.position.x += (i + 1) * (values.copyGap + copiedSprite.width);
                     break;
                 case 'top':
-                    copiedSprite.position.y -= (i + 1) * values.copyGap;
+                    copiedSprite.position.y -= (i + 1) * (values.copyGap + copiedSprite.height);
                     break;
                 case 'bottom':
-                    copiedSprite.position.y += (i + 1) * values.copyGap;
+                    copiedSprite.position.y += (i + 1) * (values.copyGap + copiedSprite.height);
                     break;
                 default:
                     break;
             }
             Utils.getMapContainer().addChild(copiedSprite)
-            // 鐒跺悗浣犻渶瑕佸湪鍝噷娣诲姞 copiedSprite
-            // 渚嬪
-            // sprites.push(copiedSprite)
         }
+        setChildrenDrawer(false);
     }
 
     return (
@@ -356,7 +356,6 @@
                                             <Form.Item>
                                                 <Button
                                                     onClick={() => {
-                                                        console.log(form.getFieldValue('x'));
                                                         setChildrenDrawer(true);
                                                     }}
                                                 >
diff --git a/zy-asrs-flow/src/pages/map/components/subSettings.jsx b/zy-asrs-flow/src/pages/map/components/subSettings.jsx
index 6d230e4..ed12951 100644
--- a/zy-asrs-flow/src/pages/map/components/subSettings.jsx
+++ b/zy-asrs-flow/src/pages/map/components/subSettings.jsx
@@ -111,7 +111,7 @@
                                         width: '60%',
                                     }}
                                     changeOnWheel
-                                    min={0}
+                                    // min={0}
                                 />
                             </Form.Item>
                         </Col>
diff --git a/zy-asrs-flow/src/pages/map/utils.js b/zy-asrs-flow/src/pages/map/utils.js
index 574803e..0c9ab59 100644
--- a/zy-asrs-flow/src/pages/map/utils.js
+++ b/zy-asrs-flow/src/pages/map/utils.js
@@ -207,6 +207,15 @@
     }
 }
 
+export const copySprite = (sprite) => {
+    const copiedSprite = new PIXI.Sprite(sprite.texture);
+    initSprite(copiedSprite);
+    copiedSprite.position.set(sprite.position.x, sprite.position.y);
+    copiedSprite.scale.set(sprite.scale.x, sprite.scale.y);
+    copiedSprite.rotation = sprite.rotation;
+    return copiedSprite;
+}
+
 export const markSprite = (sprite) => {
     sprite.alpha = 0.5;
 }

--
Gitblit v1.9.1