From 7da70d4da6dac84ac08d65714c3733357b842b53 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期六, 02 三月 2024 15:19:13 +0800
Subject: [PATCH] #
---
zy-asrs-flow/src/pages/map/components/edit.jsx | 12 ++++++++----
zy-asrs-flow/src/pages/map/index.jsx | 25 ++++++++++++++-----------
2 files changed, 22 insertions(+), 15 deletions(-)
diff --git a/zy-asrs-flow/src/pages/map/components/edit.jsx b/zy-asrs-flow/src/pages/map/components/edit.jsx
index aea4a97..3a3600f 100644
--- a/zy-asrs-flow/src/pages/map/components/edit.jsx
+++ b/zy-asrs-flow/src/pages/map/components/edit.jsx
@@ -7,14 +7,14 @@
const Edit = (props) => {
const [dragging, setDragging] = useState(false);
- const [dragImage, setDragImage] = useState(null);
-
+ const [dragSprite, setDragSprite] = useState(null);
+ const { mapContainer } = props;
+
useEffect(() => {
const handleMouseMove = (e) => {
if (dragging) {
- props.onDrop(e.clientX, e.clientY);
+ props.onDrop(dragSprite, e.clientX, e.clientY);
setDragging(false);
- props.onCancel();
}
};
window.addEventListener('mousemove', handleMouseMove);
@@ -23,6 +23,10 @@
const onDragStart = (e) => {
setDragging(true)
+ props.onCancel();
+ const sprite = PIXI.Sprite.from(agv);
+ sprite.anchor.set(0.5);
+ setDragSprite(sprite);
};
return (
diff --git a/zy-asrs-flow/src/pages/map/index.jsx b/zy-asrs-flow/src/pages/map/index.jsx
index 09b068c..5c9e828 100644
--- a/zy-asrs-flow/src/pages/map/index.jsx
+++ b/zy-asrs-flow/src/pages/map/index.jsx
@@ -45,16 +45,18 @@
antialias: true,
})
})
+ const [mapContainer, setMapContainer] = React.useState(() => {
+ const mapContainer = new PIXI.Container();
+ mapContainer.name = "mapContainer";
+ mapContainer.data = {};
+ app.stage.addChild(mapContainer);
+ return mapContainer;
+ })
const [windowSize, setWindowSize] = React.useState({
width: window.innerWidth,
height: window.innerHeight,
});
-
- let mapContainer = new PIXI.Container();
- mapContainer.name = "mapContainer";
- mapContainer.data = {};
- app.stage.addChild(mapContainer);
React.useEffect(() => {
const handleResize = () => {
@@ -101,12 +103,12 @@
setEditModalVisible(true);
}
- const onDrop = (x, y) => {
- const bunny = PIXI.Sprite.from('https://pixijs.io/examples/examples/assets/bunny.png');
- bunny.anchor.set(0.5);
- bunny.x = x;
- bunny.y = y;
- app.stage.addChild(bunny);
+ const onDrop = (sprite, x, y) => {
+ const rect = app.view.getBoundingClientRect();
+ sprite.anchor.set(0.5);
+ sprite.x = x - rect.left;
+ sprite.y = y - rect.top;
+ mapContainer.addChild(sprite);
}
return (
@@ -131,6 +133,7 @@
}
refCurr={mapRef.current}
onDrop={onDrop}
+ mapContainer={mapContainer}
/>
</>
)
--
Gitblit v1.9.1