From 1d629af7ee049a026cfc7bdb0dc6dd63db86ba81 Mon Sep 17 00:00:00 2001 From: geondo55 <102933884+geondo55@users.noreply.github.com> Date: Mon, 26 May 2025 19:13:46 +0900 Subject: [PATCH] =?UTF-8?q?AGV=20=EC=A0=95=EB=B3=B4=20=EC=B0=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Studio/AssetTool/CustomAssetConnector.cs | 51 +++++-------------- .../TwinObject/DynamicObject/AGVManager.cs | 2 +- Assets/Scripts/Studio/UI/Panel/Panel_AGV.cs | 7 ++- Assets/TMPFolder/RJHTest.cs | 4 -- 4 files changed, 19 insertions(+), 45 deletions(-) diff --git a/Assets/Scripts/Studio/AssetTool/CustomAssetConnector.cs b/Assets/Scripts/Studio/AssetTool/CustomAssetConnector.cs index 78b7de8b..021eb9e7 100644 --- a/Assets/Scripts/Studio/AssetTool/CustomAssetConnector.cs +++ b/Assets/Scripts/Studio/AssetTool/CustomAssetConnector.cs @@ -120,6 +120,17 @@ namespace Studio.AssetTool } } + public GameObject CreateAsset(string name) + { + AssetLibraryItem item = assetScrollView.FindItem("Palletrobot", AssetLibraryItemType.file); + + OnAssetSelected(item); + GameObject obj = selectRenderObject.gameObject; + OnAssetDropped(item); + return obj; + } + + public void OnAssetSelected(AssetLibraryItem item) { if (item == null || item.linkedObject == null) @@ -146,44 +157,6 @@ namespace Studio.AssetTool selectedAssetData.AddTransformToRender(selectedItem.transform); CoroutineRunner.instance.StartCoroutine(ChangeSelectedAssetTransform()); } - public GameObject OnCreateAsset(string name) - { - AssetLibraryItem item = assetScrollView.FindItem(name, AssetLibraryItemType.file); - - if (item == null || item.linkedObject == null) - { - selectedAssetData = null; - return null; - } - - selectedAssetData = item.linkedObject.GetComponent(); - if (selectedAssetData == null || selectedAssetData.isLoadComplete == false) - { - selectedAssetData = null; - return null; - } - selectedItem = UnityEngine.GameObject.Instantiate(renderObjectPrefab); - selectRenderObject = selectedItem.GetComponent(); - //selectRenderObject.OnOverlabBegin += interferedObjectManager.AddInterferedPair; - //selectRenderObject.OnOverlabEnd += interferedObjectManager.RemoveInterferedPair; - selectRenderObject.OnSelected += panel_ObjectDistance.SelectObjectFromCreate; - selectRenderObject.instantiateObject = selectedAssetData.InstantiateLoadedObject; - selectRenderObject.getBounds = selectedAssetData.GetCombinedBoundary; - selectRenderObject.CreateRenderObject(); - selectedAssetData.AddTransformToRender(selectedItem.transform); - - ConnectedAsset connectedAsset = new ConnectedAsset - { - assetData = selectedAssetData, - hierarchyItem = componentScrollView.AddItem(selectedAssetData.assetName, selectedItem, HierarchyItemType.obj), - renderObject = selectRenderObject - }; - connectedAsset.renderObject.onTransformChanged = connectedAsset.assetData.OnTransformDataChanged; - var command = new CreateConnectedAssetCommand(connectedAsset); - CommandInvoker.instance.Invoke(command); - selectedAssetData = null; - return connectedAsset.hierarchyItem.linkedObject; - } public void OnAssetDropped(AssetLibraryItem item) { if (selectedAssetData == null) @@ -282,7 +255,7 @@ namespace Studio.AssetTool var canvas_Popup = EventConnector.instance.GetCanvas(); canvas_Popup.panel_objectinfo.SetObjectInfo(name, selectedObjects); canvas_Popup.panel_objectinfo.SetActive(true); - canvas_Popup.panel_agv.SetTarget(selectedObjects[0]); + canvas_Popup.panel_agv.SetTarget(selectedObjects); canvas_Popup.panel_objectdistance.SelectObjectFromClick(name, selectedObjects); } } diff --git a/Assets/Scripts/Studio/TwinObject/DynamicObject/AGVManager.cs b/Assets/Scripts/Studio/TwinObject/DynamicObject/AGVManager.cs index b3683829..3c856891 100644 --- a/Assets/Scripts/Studio/TwinObject/DynamicObject/AGVManager.cs +++ b/Assets/Scripts/Studio/TwinObject/DynamicObject/AGVManager.cs @@ -54,7 +54,7 @@ namespace Studio.Dynamic.M private AGV CreateAGV(string type, string id ,Dictionary entity) { - var agv = ManagerHub.instance.Get().OnCreateAsset("AGV").GetComponent(); + var agv = ManagerHub.instance.Get().CreateAsset("AGV").AddComponent(); //var agv = Instantiate(prf_AGV,transform); agv.transform.position = Vector3.zero; agv.name = id; diff --git a/Assets/Scripts/Studio/UI/Panel/Panel_AGV.cs b/Assets/Scripts/Studio/UI/Panel/Panel_AGV.cs index 9f794290..fd09d27b 100644 --- a/Assets/Scripts/Studio/UI/Panel/Panel_AGV.cs +++ b/Assets/Scripts/Studio/UI/Panel/Panel_AGV.cs @@ -39,8 +39,13 @@ namespace Studio.UI } } - internal void SetTarget(GameObject selectedObject) + internal void SetTarget(List selectedObjects) { + if (selectedObjects.Count == 0) + return; + + GameObject selectedObject = selectedObjects[0]; + if (selectedObject.TryGetComponent(out AGV agv)) { StudioService.instance.RemoveTypeIdListener("AGV", targetId); diff --git a/Assets/TMPFolder/RJHTest.cs b/Assets/TMPFolder/RJHTest.cs index 5aa43aaa..3ac50571 100644 --- a/Assets/TMPFolder/RJHTest.cs +++ b/Assets/TMPFolder/RJHTest.cs @@ -59,10 +59,6 @@ namespace Studio TestConeect(); // StudioService.instance.SubscribeMQTT("AGV"); } - if (Input.GetKeyDown(KeyCode.T)) - { - Studio.Manage.EventConnector.instance.GetCanvas().panel_agv.SetTarget(AGVManager.instance.agvs.ToList()[5].gameObject); - } } private async Task TestTask()