Merge branch 'main' of http://220.90.135.190:3000/UVCXR/Studio
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
using NUnit.Framework;
|
||||
using System.Collections.Generic;
|
||||
using XED.Manage;
|
||||
|
||||
namespace XED.VirtualFactory
|
||||
{
|
||||
|
||||
@@ -9,8 +9,6 @@ GameObject:
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 1821569750776054505}
|
||||
- component: {fileID: 7245323945551537659}
|
||||
- component: {fileID: 2051839441129491893}
|
||||
- component: {fileID: 4636811485307056759}
|
||||
- component: {fileID: 8127948644408097011}
|
||||
m_Layer: 0
|
||||
@@ -35,43 +33,6 @@ Transform:
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!114 &7245323945551537659
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1409607586026230811}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 2bb472437f31bb444ac3a380ebdd2f3f, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
nodePrefab: {fileID: 2579942234611465176, guid: 5b3355ff1ae888e428ebf6ad2853e303, type: 3}
|
||||
markerPrefab: {fileID: 2579942234611465176, guid: f2ef013240a7d2548b78c9434734181a, type: 3}
|
||||
nodeSelectMode: 2
|
||||
currentlySelectedNode: {fileID: 0}
|
||||
agvNodeMap:
|
||||
maxid: 0
|
||||
agvNodeData: []
|
||||
--- !u!114 &2051839441129491893
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1409607586026230811}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: a6552f9ab96d944459a5e5a6f3eb6463, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
moveGizmo:
|
||||
_settings:
|
||||
_canBeDisplayed: 1
|
||||
_isExpanded: 1
|
||||
_transformableLayers: -1
|
||||
target: {fileID: 0}
|
||||
--- !u!114 &4636811485307056759
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -98,6 +59,6 @@ MonoBehaviour:
|
||||
m_Script: {fileID: 11500000, guid: 43c2fa2860dfa344d856558ec881bb8a, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
agvPrefab: {fileID: 1505508720499862715, guid: 03eb7e95fc0cb334d848d40c49b4110e, type: 3}
|
||||
agvs: []
|
||||
fileName: Assets/AGVsLog.csv
|
||||
prf_AGV: {fileID: 0}
|
||||
prf_Spec: {fileID: 0}
|
||||
autoIndexing: 0
|
||||
|
||||
@@ -2265,51 +2265,6 @@ CanvasRenderer:
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 502356474}
|
||||
m_CullTransparentMesh: 0
|
||||
--- !u!1 &503307893
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 503307894}
|
||||
- component: {fileID: 503307895}
|
||||
m_Layer: 0
|
||||
m_Name: Raycaster
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &503307894
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 503307893}
|
||||
serializedVersion: 2
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 1093055756}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!114 &503307895
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 503307893}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 73c8199685949fb4eb02e83a235ec68b, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
uiHoverTime: 0
|
||||
--- !u!1 &535540530
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -3018,72 +2973,6 @@ RectTransform:
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 4, y: 20}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!1001 &812349387
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 2
|
||||
m_Modification:
|
||||
serializedVersion: 3
|
||||
m_TransformParent: {fileID: 1093055756}
|
||||
m_Modifications:
|
||||
- target: {fileID: 3963811325703941763, guid: a906cd4ab09260143b9d87e622d9e458, type: 3}
|
||||
propertyPath: m_Name
|
||||
value: WallBuilder
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3963811325703941763, guid: a906cd4ab09260143b9d87e622d9e458, type: 3}
|
||||
propertyPath: m_IsActive
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7756644939596186566, guid: a906cd4ab09260143b9d87e622d9e458, type: 3}
|
||||
propertyPath: m_LocalPosition.x
|
||||
value: 1.3484559
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7756644939596186566, guid: a906cd4ab09260143b9d87e622d9e458, type: 3}
|
||||
propertyPath: m_LocalPosition.y
|
||||
value: 3.002852
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7756644939596186566, guid: a906cd4ab09260143b9d87e622d9e458, type: 3}
|
||||
propertyPath: m_LocalPosition.z
|
||||
value: -2.1850286
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7756644939596186566, guid: a906cd4ab09260143b9d87e622d9e458, type: 3}
|
||||
propertyPath: m_LocalRotation.w
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7756644939596186566, guid: a906cd4ab09260143b9d87e622d9e458, type: 3}
|
||||
propertyPath: m_LocalRotation.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7756644939596186566, guid: a906cd4ab09260143b9d87e622d9e458, type: 3}
|
||||
propertyPath: m_LocalRotation.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7756644939596186566, guid: a906cd4ab09260143b9d87e622d9e458, type: 3}
|
||||
propertyPath: m_LocalRotation.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7756644939596186566, guid: a906cd4ab09260143b9d87e622d9e458, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7756644939596186566, guid: a906cd4ab09260143b9d87e622d9e458, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7756644939596186566, guid: a906cd4ab09260143b9d87e622d9e458, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_RemovedGameObjects: []
|
||||
m_AddedGameObjects: []
|
||||
m_AddedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: a906cd4ab09260143b9d87e622d9e458, type: 3}
|
||||
--- !u!4 &812349388 stripped
|
||||
Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 7756644939596186566, guid: a906cd4ab09260143b9d87e622d9e458, type: 3}
|
||||
m_PrefabInstance: {fileID: 812349387}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1 &827571245
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -4289,9 +4178,6 @@ Transform:
|
||||
- {fileID: 1149817090}
|
||||
- {fileID: 636283413}
|
||||
- {fileID: 2021424132}
|
||||
- {fileID: 812349388}
|
||||
- {fileID: 503307894}
|
||||
- {fileID: 2057021881}
|
||||
- {fileID: 538683123}
|
||||
- {fileID: 617235297}
|
||||
- {fileID: 749092880}
|
||||
@@ -11274,68 +11160,6 @@ MonoBehaviour:
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
currentMode: 0
|
||||
--- !u!1001 &2057021880
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 2
|
||||
m_Modification:
|
||||
serializedVersion: 3
|
||||
m_TransformParent: {fileID: 1093055756}
|
||||
m_Modifications:
|
||||
- target: {fileID: 1409607586026230811, guid: 2e1f6b521b86f624a9e2eba79ecb0de5, type: 3}
|
||||
propertyPath: m_Name
|
||||
value: AGVNodeManager
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1821569750776054505, guid: 2e1f6b521b86f624a9e2eba79ecb0de5, type: 3}
|
||||
propertyPath: m_LocalPosition.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1821569750776054505, guid: 2e1f6b521b86f624a9e2eba79ecb0de5, type: 3}
|
||||
propertyPath: m_LocalPosition.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1821569750776054505, guid: 2e1f6b521b86f624a9e2eba79ecb0de5, type: 3}
|
||||
propertyPath: m_LocalPosition.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1821569750776054505, guid: 2e1f6b521b86f624a9e2eba79ecb0de5, type: 3}
|
||||
propertyPath: m_LocalRotation.w
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1821569750776054505, guid: 2e1f6b521b86f624a9e2eba79ecb0de5, type: 3}
|
||||
propertyPath: m_LocalRotation.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1821569750776054505, guid: 2e1f6b521b86f624a9e2eba79ecb0de5, type: 3}
|
||||
propertyPath: m_LocalRotation.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1821569750776054505, guid: 2e1f6b521b86f624a9e2eba79ecb0de5, type: 3}
|
||||
propertyPath: m_LocalRotation.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1821569750776054505, guid: 2e1f6b521b86f624a9e2eba79ecb0de5, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1821569750776054505, guid: 2e1f6b521b86f624a9e2eba79ecb0de5, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1821569750776054505, guid: 2e1f6b521b86f624a9e2eba79ecb0de5, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_RemovedGameObjects: []
|
||||
m_AddedGameObjects: []
|
||||
m_AddedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: 2e1f6b521b86f624a9e2eba79ecb0de5, type: 3}
|
||||
--- !u!4 &2057021881 stripped
|
||||
Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 1821569750776054505, guid: 2e1f6b521b86f624a9e2eba79ecb0de5, type: 3}
|
||||
m_PrefabInstance: {fileID: 2057021880}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!224 &34056510312835704
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
|
||||
34
Assets/Scripts/Studio/DataStructures/Enums.cs
Normal file
34
Assets/Scripts/Studio/DataStructures/Enums.cs
Normal file
@@ -0,0 +1,34 @@
|
||||
using UnityEngine;
|
||||
|
||||
namespace XED
|
||||
{
|
||||
public static class Enums
|
||||
{
|
||||
public enum NodeSelectMode
|
||||
{
|
||||
Idle,
|
||||
Draw,
|
||||
SelectRunNode,
|
||||
Select,
|
||||
Setting
|
||||
}
|
||||
|
||||
public enum VirtualPoint
|
||||
{
|
||||
LeftTop,
|
||||
LeftBottom,
|
||||
RightTop,
|
||||
RightBottom,
|
||||
LeftCenter,
|
||||
RightCenter,
|
||||
}
|
||||
|
||||
public enum BuilderState
|
||||
{
|
||||
None,
|
||||
PointModfiy,
|
||||
PointRemove,
|
||||
Drawing
|
||||
}
|
||||
}
|
||||
}
|
||||
2
Assets/Scripts/Studio/DataStructures/Enums.cs.meta
Normal file
2
Assets/Scripts/Studio/DataStructures/Enums.cs.meta
Normal file
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ca60beab57bc28c4ba8d59f3593937b2
|
||||
@@ -5,9 +5,9 @@ using TriLibCore.Dae.Schema;
|
||||
using UnityEngine;
|
||||
using XRLib;
|
||||
|
||||
namespace XED
|
||||
namespace XED.Manage
|
||||
{
|
||||
public class MeshCreator : MonoBehaviour,ISingle
|
||||
public class MeshCreator : Manager
|
||||
{
|
||||
Vector3[] vertices;
|
||||
int[] triangles;
|
||||
@@ -15,6 +15,11 @@ namespace XED
|
||||
private MeshFilter meshfilter;
|
||||
//private Vector3 offset = Vector3.zero;
|
||||
|
||||
public override void Init()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public void MeshDeformer<T>(HashSet<T> type)
|
||||
{
|
||||
if(type is HashSet<Floor>)
|
||||
|
||||
@@ -5,7 +5,7 @@ using System.Linq;
|
||||
using System.Security.Cryptography;
|
||||
using UnityEngine;
|
||||
using XRLib;
|
||||
using static XED.WallBuilder;
|
||||
using static XED.Enums;
|
||||
using Color = UnityEngine.Color;
|
||||
|
||||
namespace XED
|
||||
|
||||
@@ -9,28 +9,13 @@ using XRLib;
|
||||
using XED.Interfaces;
|
||||
using XED.Manage;
|
||||
using XED.RuntimeGizmo;
|
||||
using Object = UnityEngine.Object;
|
||||
using static XED.Enums;
|
||||
|
||||
namespace XED
|
||||
namespace XED.Manage
|
||||
{
|
||||
public class WallBuilder : MonoBehaviour, ISingle, IInputHandler, IModeController
|
||||
public class WallBuilder : Manager, IInputHandler, IModeController
|
||||
{
|
||||
public enum VirtualPoint
|
||||
{
|
||||
LeftTop,
|
||||
LeftBottom,
|
||||
RightTop,
|
||||
RightBottom,
|
||||
LeftCenter,
|
||||
RightCenter,
|
||||
}
|
||||
public enum BuilderState
|
||||
{
|
||||
None,
|
||||
PointModfiy,
|
||||
PointRemove,
|
||||
Drawing
|
||||
}
|
||||
|
||||
public float thickness;
|
||||
private GameObject renderParent;
|
||||
private Material lineMat;
|
||||
@@ -81,7 +66,8 @@ namespace XED
|
||||
wallLines.Add(wallLine);
|
||||
}
|
||||
}
|
||||
public override void AfterAwake()
|
||||
|
||||
public override void Init()
|
||||
{
|
||||
renderParent = new GameObject("LineRenderParent");
|
||||
lineMat = Resources.Load<Material>("Materials/Mat_LineRender");
|
||||
@@ -90,7 +76,7 @@ namespace XED
|
||||
prf_Wall = Resources.Load<Wall>("Prefabs/PRF_Wall");
|
||||
prf_WallGroup = Resources.Load<WallGroup>("Prefabs/PRF_WallGroup");
|
||||
|
||||
meshCreator = FindSingle<MeshCreator>();
|
||||
meshCreator = ManagerHub.instance.Get<MeshCreator>();
|
||||
handler = GetInputHandler();
|
||||
}
|
||||
|
||||
@@ -146,14 +132,14 @@ namespace XED
|
||||
{
|
||||
//ToDo..연결된 포인트가 없는 Point찾아서 제거
|
||||
DisconnectLine(removeWalls[i]);
|
||||
Destroy(removeWalls[i].gameObject);
|
||||
Object.Destroy(removeWalls[i].gameObject);
|
||||
}
|
||||
Remove(lp);
|
||||
}
|
||||
|
||||
public LinePoint CreateLinePoint(Vector3 pos)
|
||||
{
|
||||
var result = Instantiate(prf_LinePoint);
|
||||
var result = Object.Instantiate(prf_LinePoint);
|
||||
result.transform.SetParent(renderParent.transform);
|
||||
result.name = cc++.ToString();
|
||||
result.transform.position = pos;
|
||||
@@ -175,7 +161,7 @@ namespace XED
|
||||
|
||||
private Wall CreateWall(LinePoint lcp, LinePoint rcp)
|
||||
{
|
||||
var result = Instantiate(prf_Wall);
|
||||
var result = Object.Instantiate(prf_Wall);
|
||||
result.Generate(lcp, rcp, lineMat, thickness);
|
||||
result.name = "WallLine" + index++;
|
||||
walls.Add(result);
|
||||
@@ -339,7 +325,7 @@ namespace XED
|
||||
{
|
||||
linePoints.Remove(lp);
|
||||
pointToWall.Remove(lp);
|
||||
Destroy(lp.gameObject);
|
||||
Object.Destroy(lp.gameObject);
|
||||
}
|
||||
|
||||
void BuildWall(Vector3 endPos)
|
||||
@@ -426,7 +412,7 @@ namespace XED
|
||||
pointToWall.Remove(rcp);
|
||||
}
|
||||
wall.Deselect();
|
||||
Destroy(wall.gameObject);
|
||||
Object.Destroy(wall.gameObject);
|
||||
}
|
||||
|
||||
Wall BuildContinuesWall(Vector3 p)
|
||||
@@ -684,7 +670,7 @@ namespace XED
|
||||
|
||||
private WallGroup CreateWallGroup()
|
||||
{
|
||||
var group = Instantiate(prf_WallGroup);
|
||||
var group = Object.Instantiate(prf_WallGroup);
|
||||
|
||||
groupTable.Add(group, new());
|
||||
wallgroups.Add(group);
|
||||
@@ -996,7 +982,7 @@ namespace XED
|
||||
|
||||
public void StatusEnterEvent()
|
||||
{
|
||||
var raycaster = FindSingle<Raycaster>();
|
||||
var raycaster = ManagerHub.instance.Get<Raycaster>();
|
||||
raycaster.AddEvent(Raycaster.EventType.FirstStay, typeof (Map), OnStayMap);
|
||||
raycaster.AddEvent(Raycaster.EventType.FirstClick, typeof(Map), OnClickMap);
|
||||
raycaster.AddEvent(Raycaster.EventType.FirstClick, typeof(LinePoint), OnClickLinePoint);
|
||||
@@ -1006,7 +992,7 @@ namespace XED
|
||||
|
||||
public void StatusExitEvent()
|
||||
{
|
||||
var raycaster = FindSingle<Raycaster>();
|
||||
var raycaster = ManagerHub.instance.Get<Raycaster>();
|
||||
raycaster.RemoveEvent(Raycaster.EventType.FirstStay, typeof(Map), OnStayMap);
|
||||
raycaster.RemoveEvent(Raycaster.EventType.FirstClick, typeof(Map), OnClickMap);
|
||||
raycaster.RemoveEvent(Raycaster.EventType.FirstClick, typeof(LinePoint), OnClickLinePoint);
|
||||
@@ -1026,7 +1012,7 @@ namespace XED
|
||||
linePoints.Remove(handlePoint);
|
||||
pointToWall.Remove(handlePoint);
|
||||
handlePoint.Release();
|
||||
Destroy(handlePoint.gameObject);
|
||||
Object.Destroy(handlePoint.gameObject);
|
||||
}
|
||||
|
||||
if (pilePoint != null)
|
||||
@@ -1044,7 +1030,7 @@ namespace XED
|
||||
{
|
||||
walls.Remove(tempWall);
|
||||
tempWall.Release();
|
||||
Destroy(tempWall.gameObject);
|
||||
Object.Destroy(tempWall.gameObject);
|
||||
}
|
||||
|
||||
tempWall = null;
|
||||
|
||||
@@ -1,16 +1,23 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using XED.VirtualFactory;
|
||||
using XRLib;
|
||||
|
||||
namespace XED.VirtualFactory
|
||||
namespace XED.Manage
|
||||
{
|
||||
public class AGVManager : MonoBehaviour, ISingle
|
||||
public class AGVManager : Manager
|
||||
{
|
||||
public AGV prf_AGV;
|
||||
public AGVSpec prf_Spec;
|
||||
public HashSet<AGV> agvs = new();
|
||||
public bool autoIndexing;
|
||||
|
||||
public override void Init()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public bool TryGetIdleAGV(out AGV result)
|
||||
{
|
||||
//Debug.Log($"Try Get Idle AGV");
|
||||
@@ -30,7 +37,7 @@ namespace XED.VirtualFactory
|
||||
|
||||
public AGV CreateEmptyAGV()
|
||||
{
|
||||
var agv = Instantiate(prf_AGV);
|
||||
var agv = UnityEngine.Object.Instantiate(prf_AGV);
|
||||
agvs.Add(agv);
|
||||
|
||||
if (autoIndexing)
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using XRLib;
|
||||
using XED.VirtualFactory;
|
||||
|
||||
namespace XED.VirtualFactory
|
||||
namespace XED.Manage
|
||||
{
|
||||
public class AGVNodeLinkManager : MonoBehaviour,ISingle
|
||||
public class AGVNodeLinkManager : Manager
|
||||
{
|
||||
public HashSet<Pair<AGVNode>> linkedNode = new HashSet<Pair<AGVNode>>();
|
||||
private Dictionary<Pair<AGVNode>, GameObject> lineObjects = new Dictionary<Pair<AGVNode>, GameObject>();
|
||||
@@ -14,6 +14,11 @@ namespace XED.VirtualFactory
|
||||
[SerializeField]
|
||||
Material lineMat;
|
||||
|
||||
public override void Init()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public void AddLines(List<AGVNode> nodeList)
|
||||
{
|
||||
for (int i = 0; i < nodeList.Count; i++)
|
||||
@@ -100,7 +105,7 @@ namespace XED.VirtualFactory
|
||||
{
|
||||
if (lineObjects.ContainsKey(pair))
|
||||
{
|
||||
Destroy(lineObjects[pair]);
|
||||
Object.Destroy(lineObjects[pair]);
|
||||
lineObjects.Remove(pair);
|
||||
}
|
||||
else
|
||||
|
||||
@@ -1,27 +1,20 @@
|
||||
using Newtonsoft.Json;
|
||||
using Ookii.Dialogs;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Runtime.CompilerServices;
|
||||
using TriLibCore.SFB;
|
||||
using UnityEngine;
|
||||
using UnityEngine.EventSystems;
|
||||
using XRLib;
|
||||
using XED.Interfaces;
|
||||
using XED.Manage;
|
||||
using XED.VirtualFactory;
|
||||
using XED.Asset;
|
||||
using Object = UnityEngine.Object;
|
||||
using static XED.Enums;
|
||||
|
||||
namespace XED.VirtualFactory
|
||||
namespace XED.Manage
|
||||
{
|
||||
public enum NodeSelectMode
|
||||
{
|
||||
Idle,
|
||||
Draw,
|
||||
SelectRunNode,
|
||||
Select,
|
||||
Setting
|
||||
}
|
||||
public class AGVNodeManager : MonoBehaviour, ISingle, IModeController, IInputHandler
|
||||
|
||||
public class AGVNodeManager : Manager, IModeController, IInputHandler
|
||||
{
|
||||
[SerializeField]
|
||||
GameObject nodePrefab;
|
||||
@@ -50,14 +43,18 @@ namespace XED.VirtualFactory
|
||||
List<AGVNode> selectedNodeSequence = new List<AGVNode>();
|
||||
InputHandler myHandler;
|
||||
NodeGizmoController nodeGizmoController;
|
||||
UserInputManager userInputManager;
|
||||
Raycaster raycaster;
|
||||
|
||||
public ModePanel.ProgramMode mode => ModePanel.ProgramMode.AGVPathDrawing;
|
||||
|
||||
public override void AfterStart()
|
||||
public override void Init()
|
||||
{
|
||||
agvNodeMap = new AGVNodeMap();
|
||||
myHandler = GetInputHandler();
|
||||
nodeGizmoController = FindSingle<NodeGizmoController>();
|
||||
nodeGizmoController = ManagerHub.instance.Get<NodeGizmoController>();
|
||||
userInputManager = ManagerHub.instance.Get<UserInputManager>();
|
||||
raycaster = ManagerHub.instance.Get<Raycaster>();
|
||||
}
|
||||
|
||||
private void Update()
|
||||
@@ -200,13 +197,13 @@ namespace XED.VirtualFactory
|
||||
{
|
||||
if (flag)
|
||||
{
|
||||
nodeTarget = Instantiate(markerPrefab);
|
||||
nodeTarget = Object.Instantiate(markerPrefab);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (nodeTarget)
|
||||
{
|
||||
Destroy(nodeTarget);
|
||||
Object.Destroy(nodeTarget);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -226,7 +223,7 @@ namespace XED.VirtualFactory
|
||||
return;
|
||||
}
|
||||
|
||||
GameObject go = Instantiate(nodePrefab);
|
||||
GameObject go = Object.Instantiate(nodePrefab);
|
||||
var objNode = go.GetComponent<AGVNode>();
|
||||
nodeTable.Add(nodedata.id, objNode);
|
||||
objNode.Initialize(nodedata);
|
||||
@@ -257,7 +254,7 @@ namespace XED.VirtualFactory
|
||||
DeselectNode();
|
||||
if (nodeSelectMode == NodeSelectMode.Draw)
|
||||
{
|
||||
GameObject go = Instantiate(nodePrefab);
|
||||
GameObject go = Object.Instantiate(nodePrefab);
|
||||
go.transform.position = hit.point;
|
||||
var objNode = go.GetComponent<AGVNode>();
|
||||
int maxid = int.Parse(agvNodeMap.maxid);
|
||||
@@ -281,7 +278,7 @@ namespace XED.VirtualFactory
|
||||
{
|
||||
return;
|
||||
}
|
||||
GameObject NewNode = Instantiate(nodePrefab, currentlySelectedNode.transform.position + Vector3.right, Quaternion.identity);
|
||||
GameObject NewNode = Object.Instantiate(nodePrefab, currentlySelectedNode.transform.position + Vector3.right, Quaternion.identity);
|
||||
AGVNode node = NewNode.GetComponent<AGVNode>();
|
||||
int maxid = int.Parse(agvNodeMap.maxid);
|
||||
maxid++;
|
||||
@@ -322,7 +319,7 @@ namespace XED.VirtualFactory
|
||||
n.linkedNodID.Remove(currentlySelectedNode.nodeClass.id);
|
||||
}
|
||||
|
||||
Destroy(currentlySelectedNode.gameObject);
|
||||
Object.Destroy(currentlySelectedNode.gameObject);
|
||||
DeselectNode();
|
||||
}
|
||||
|
||||
@@ -356,7 +353,7 @@ namespace XED.VirtualFactory
|
||||
n.linkedNodID.Remove(node.nodeClass.id);
|
||||
}
|
||||
|
||||
Destroy(node.gameObject);
|
||||
Object.Destroy(node.gameObject);
|
||||
DeselectNode();
|
||||
}
|
||||
|
||||
@@ -404,8 +401,7 @@ namespace XED.VirtualFactory
|
||||
|
||||
public void StatusEnterEvent()
|
||||
{
|
||||
var raycaster = FindSingle<Raycaster>();
|
||||
ManagerHub.instance.Get<UserInputManager>().SetHandler(myHandler);
|
||||
userInputManager.SetHandler(myHandler);
|
||||
raycaster.AddEvent(Raycaster.EventType.FirstLeftClickOnly, typeof(AGVNode), OnClickAGVNode);
|
||||
raycaster.AddEvent(Raycaster.EventType.Stay, typeof(Map), MoveDrawTarget);
|
||||
raycaster.AddEvent(Raycaster.EventType.FirstLeftClickOnly, typeof(Map), ONClickGround);
|
||||
@@ -413,8 +409,7 @@ namespace XED.VirtualFactory
|
||||
|
||||
public void StatusExitEvent()
|
||||
{
|
||||
var raycaster = FindSingle<Raycaster>();
|
||||
ManagerHub.instance.Get<UserInputManager>().RemoveHandler(myHandler);
|
||||
userInputManager.RemoveHandler(myHandler);
|
||||
raycaster.RemoveEvent(Raycaster.EventType.FirstLeftClickOnly, typeof(AGVNode), OnClickAGVNode);
|
||||
raycaster.RemoveEvent(Raycaster.EventType.Stay, typeof(Map), MoveDrawTarget);
|
||||
raycaster.RemoveEvent(Raycaster.EventType.FirstLeftClickOnly, typeof(Map), ONClickGround);
|
||||
@@ -438,10 +433,10 @@ namespace XED.VirtualFactory
|
||||
return handler;
|
||||
}
|
||||
|
||||
protected override void OnDestroy()
|
||||
{
|
||||
//vistaOpenFileDialog.Dispose();
|
||||
//saveFileDialog.Dispose();
|
||||
}
|
||||
//protected override void OnDestroy()
|
||||
//{
|
||||
// //vistaOpenFileDialog.Dispose();
|
||||
// //saveFileDialog.Dispose();
|
||||
//}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,6 +4,7 @@ using TMPro;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
using XRLib.UI;
|
||||
using static XED.Enums;
|
||||
|
||||
namespace XED.VirtualFactory
|
||||
{
|
||||
|
||||
@@ -1,19 +1,17 @@
|
||||
using RTG;
|
||||
using UnityEngine;
|
||||
using XRLib;
|
||||
|
||||
namespace XED.VirtualFactory
|
||||
namespace XED.Manage
|
||||
{
|
||||
public class NodeGizmoController : MonoBehaviour,ISingle
|
||||
public class NodeGizmoController : Manager
|
||||
{
|
||||
public ObjectTransformGizmo moveGizmo;
|
||||
public GameObject target;
|
||||
|
||||
// Start is called before the first frame update
|
||||
void Awake()
|
||||
public override void Init()
|
||||
{
|
||||
moveGizmo = RTGizmosEngine.Get.CreateObjectMoveGizmo();
|
||||
moveGizmo.Gizmo.SetEnabled(false);
|
||||
//moveGizmo = RTGizmosEngine.Get.CreateObjectMoveGizmo();
|
||||
//moveGizmo.Gizmo.SetEnabled(false);
|
||||
}
|
||||
|
||||
public void Attach(GameObject target)
|
||||
|
||||
@@ -20,6 +20,13 @@ namespace XED.Manage
|
||||
Join(new InterferedObjectManager());
|
||||
Join(new CursorManager());
|
||||
Join(new CameraManager());
|
||||
Join(new Raycaster());
|
||||
Join(new AGVNodeManager());
|
||||
Join(new NodeGizmoController());
|
||||
Join(new AGVNodeLinkManager());
|
||||
Join(new AGVManager());
|
||||
Join(new WallBuilder());
|
||||
Join(new MeshCreator());
|
||||
|
||||
foreach(var m in managers)
|
||||
{
|
||||
|
||||
@@ -37,7 +37,7 @@ namespace XED
|
||||
var renderObjectHandler = ManagerHub.instance.Get<RenderObjectHandler>();
|
||||
panel_objectinfo.onTransformChanged += renderObjectHandler.OnTransformChanged;
|
||||
|
||||
var raycaster = FindAnyObjectByType<Raycaster>();
|
||||
var raycaster = ManagerHub.instance.Get<Raycaster>();
|
||||
raycaster.onUIHoverEvent += panel_tooltip.ActivateTooltip;
|
||||
raycaster.onUIHoverExitEvent += panel_tooltip.DeactivateTooltip;
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
using System;
|
||||
using UnityEngine.UI;
|
||||
using XRLib.UI;
|
||||
using static XED.WallBuilder;
|
||||
using static XED.Enums;
|
||||
|
||||
namespace XED.UI
|
||||
{
|
||||
|
||||
@@ -6,10 +6,10 @@ using UnityEngine.EventSystems;
|
||||
using UnityEngine.UI;
|
||||
using XED;
|
||||
|
||||
namespace XRLib
|
||||
namespace XED.Manage
|
||||
{
|
||||
[DefaultExecutionOrder(int.MinValue)]
|
||||
public class Raycaster : MonoBehaviour, ISingle
|
||||
public class Raycaster : Manager
|
||||
{
|
||||
public enum EventType
|
||||
{
|
||||
@@ -57,10 +57,11 @@ namespace XRLib
|
||||
#pragma warning restore IDE0044
|
||||
Vector2 prevMousePos;
|
||||
|
||||
|
||||
void Awake()
|
||||
|
||||
public override void Init()
|
||||
{
|
||||
cam = Camera.main;
|
||||
UpdateRunner.AddAction(Update);
|
||||
}
|
||||
|
||||
void Update()
|
||||
|
||||
@@ -3,6 +3,7 @@ using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using UnityEditor;
|
||||
using UnityEngine;
|
||||
using XED.Manage;
|
||||
using XED.VirtualFactory;
|
||||
|
||||
namespace XED
|
||||
@@ -43,7 +44,7 @@ public class VirtualFactoryManager : MonoBehaviour
|
||||
{
|
||||
agvMap = FindSingle<AGVMap>();
|
||||
portMap = FindSingle<PortMap>();
|
||||
agvManager = FindSingle<AGVManager>();
|
||||
agvManager = ManagerHub.instance.Get<AGVManager>();
|
||||
stackerCranes = FindObjectsByType<StackerCrane>(UnityEngine.FindObjectsSortMode.None).ToList();
|
||||
|
||||
agvNeedScanner = new AGVNeedsScanner(this, agvManager);
|
||||
|
||||
Reference in New Issue
Block a user