//using Newtonsoft.Json; //using System; //using System.Collections; //using System.Collections.Generic; //using UnityEngine; //using UnityEngine.UI; //using Ximmerse.XR.Tag; //public class MachineSceneManager : MonoSingleton //{ // public MachineRoomData data; // public GameObject cabinetObj; // public GameObject bladeServer; // public bool isInit = false; // public MachineRoomTagData tagData; // public List listEditorTag; // GameObject tagObjPoint; // private List listBSItem; // public TagTracking foundTracking; // public GameObject cubeY; // public Transform leftLine; // public Transform rightLine; // bool isSelect = false; // private Transform selectTrigger; // private Vector3 selectTOldPos; // private Vector3 selectTOldRot; // public bool isDataInit = false; // /// // /// 临时创建 的tagid // /// // private List listTagid; // /// // /// 临时创建 刀片机信息 // /// // private DeviceParameters dp1; // private DeviceParameters dp2; // /// // /// 机房列表 // /// // public List listRoomName; // public void Init() // { // tagObjPoint = new GameObject(); // listBSItem = new List(); // listRoomName = new List(); // listRoomName.Add("4A-23"); // listRoomName.Add("4A-24"); // listRoomName.Add("4A-25"); // listRoomName.Add("4A-26"); // listRoomName.Add("4A-27"); // listTagid = new List(); // listTagid.Add(31); // listTagid.Add(61); // listTagid.Add(64); // listTagid.Add(43); // listTagid.Add(3161); // listTagid.Add(3164); // listTagid.Add(4361); // listTagid.Add(4364); // // PlayerPrefs.DeleteAll(); // if (PlayerPrefs.HasKey("MachineRoomData")) // { // string msg = PlayerPrefs.GetString("MachineRoomData"); // UILogManager.Instance.text1.text = msg; // Debug.Log("MachineRoomData " + msg); // data = JsonConvert.DeserializeObject(msg); // // Debug.Log("PlayerPrefs.HasKey(MachineRoomData) "); // //data = new MachineRoomData(); // //data.line = 4; // //data.list = 3; // //data.intervalW = 1; // //data.intervalL = 2; // //data.cabinetW = 1.2f; // //data.cabinetH = 2f; // //data.bladeSeverNumber = 4; // //data.bIntervalH = 0.2f; // //data.firstBladeSeverH = 0.4f; // //data.TagOffestPosY = 0; // //data.CameraFar = 3; // //data.roomName = "4A-23"; // //data.totalCapacity = 8520; // //data.usedCapacity = 4420; // //data.totalPower = 1278; // //data.usedPower = 846.24f; // //data.totalLoadBearing = 85.2f; // //data.usedBearing = 46.83f; // } // else // { // data = new MachineRoomData(); // data.line = 4; // data.list = 3; // data.intervalW = 1; // data.intervalL = 2; // data.cabinetW = 0.6f; // data.cabinetH = 2f; // data.bladeSeverNumber = 4; // data.bIntervalH = 0.2f; // data.firstBladeSeverH = 0.4f; // data.TagOffestPosY = 1f; // data.CameraFar = 3; // data.roomName = "4A-23"; // data.totalCapacity = 8520; // data.usedCapacity = 4420; // data.totalPower = 1278; // data.usedPower = 846.24f; // data.totalLoadBearing = 85.2f; // data.usedBearing = 46.83f; // } // // data.listCabinetData = null; // data.listEquipmentData = null; // data.listTagData = null; // // PlayerPrefs.DeleteAll(); // if (PlayerPrefs.HasKey("MachineRoomTagData")) // { // string msg = PlayerPrefs.GetString("MachineRoomTagData"); // Debug.Log("MachineRoomTagData " + msg); // data.listTagData = JsonConvert.DeserializeObject>(msg); // //data.listTagData = new List(); // //MachineRoomTagData data1 = new MachineRoomTagData(); // //data1.id = 65; // //data1.pos = new Vector3(4.5f, 0, 0); // //data1.rot = new Vector3(0, 180, 0); // //data1.offestPos = Vector3.zero; // //data1.offestrot = Vector3.zero; // //MachineRoomTagData data2 = new MachineRoomTagData(); // //data2.id = 22; // //data2.pos = new Vector3(4.5f, 0, 1.8f); // //data2.rot = new Vector3(0, 180, 0); // //data2.offestPos = Vector3.zero; // //data2.offestrot = Vector3.zero; // //MachineRoomTagData data3 = new MachineRoomTagData(); // //data3.id = 23; // //data3.pos = new Vector3(4.5f, 0, 3.7f); // //data3.rot = new Vector3(0, 180, 0); // //data3.offestPos = Vector3.zero; // //data3.offestrot = Vector3.zero; // //data.listTagData.Add(data1); // //data.listTagData.Add(data2); // //data.listTagData.Add(data3); // } // else // { // data.listTagData = new List(); // MachineRoomTagData data1 = new MachineRoomTagData(); // data1.id = 65; // data1.pos = new Vector3(4.5f, 0, 0); // data1.rot = new Vector3(0, 180, 0); // data1.offestPos = Vector3.zero; // data1.offestrot = Vector3.zero; // MachineRoomTagData data2 = new MachineRoomTagData(); // data2.id = 22; // data2.pos = new Vector3(4.5f, 0, 1.8f); // data2.rot = new Vector3(0, 180, 0); // data2.offestPos = Vector3.zero; // data2.offestrot = Vector3.zero; // MachineRoomTagData data3 = new MachineRoomTagData(); // data3.id = 23; // data3.pos = new Vector3(4.5f, 0, 3.7f); // data3.rot = new Vector3(0, 180, 0); // data3.offestPos = Vector3.zero; // data3.offestrot = Vector3.zero; // MachineRoomTagData data4 = new MachineRoomTagData(); // data4.id = 141; // data4.pos = new Vector3(4.5f, 2.5f, 3.7f); // data4.rot = new Vector3(0, 180, 0); // data4.offestPos = Vector3.zero; // data4.offestrot = Vector3.zero; // MachineRoomTagData data5 = new MachineRoomTagData(); // data5.id = 142; // data5.pos = new Vector3(4.5f, 2.5f, 3.7f); // data5.rot = new Vector3(0, 180, 0); // data5.offestPos = Vector3.zero; // data5.offestrot = Vector3.zero; // data.listTagData.Add(data1); // data.listTagData.Add(data2); // data.listTagData.Add(data3); // data.listTagData.Add(data4); // data.listTagData.Add(data5); // } // if (PlayerPrefs.HasKey("MachineRoomCabinetData")) // { // string msg = PlayerPrefs.GetString("MachineRoomCabinetData"); // // data.listCabinetData = JsonConvert.DeserializeObject>(msg); // data.listEquipmentData = JsonConvert.DeserializeObject>(msg); // } // } // private void Start() // { // //Init(); //#if UNITY_EDITOR // // Init(); //#endif // } // public void SceneInit() // { // SettingMachineRoomData.Instance.Init(data); // OpenXRCamera.Instance.head.GetComponent().farClipPlane = data.CameraFar; // MachineInit(); // // ServerInit(); // isDataInit = true; // } // private void Update() // { // if (state && tagData != null) // { // for (int i = 0; i < listEditorTag.Count; i++) // { // listEditorTag[i].gameObject.SetActive(!state); // if (listEditorTag[i].id == tagData.id) // listEditorTag[i].gameObject.SetActive(true); // } // } // if (tagData != null && foundTracking != null && DragManager.Instance.triggerState == TriggerState.No && !state) // { // tagObjPoint.transform.SetParent(foundTracking.transform); // tagObjPoint.transform.localEulerAngles = new Vector3(0, tagData.offestrot == Vector3.zero ? tagData.rot.y : tagData.offestrot.y, 0); // tagObjPoint.transform.localPosition = tagData.offestPos == Vector3.zero ? tagData.pos : tagData.offestPos; // transform.eulerAngles = new Vector3(0, tagObjPoint.transform.eulerAngles.y, 0); // transform.position = new Vector3(tagObjPoint.transform.position.x, foundTracking.transform.position.y + data.TagOffestPosY, tagObjPoint.transform.position.z); // } // if (Input.GetKeyDown(KeyCode.K)) // { // OnTrackingFound(foundTracking); // } // } // public List listObjes = new List(); // public void MachineInit() // { // listObjes.Clear(); // listObjes = new List(); // // 重新生成机柜组 // if (data.listEquipmentData == null || data.listEquipmentData.Count != (data.line * data.list)) // { // data.listEquipmentData = new List(); // for (int i = 0; i < data.line; i++) // { // for (int j = 0; j < data.list; j++) // { // MachineParameters mp1 = new MachineParameters(); // mp1.deviceId = (i * data.list + j + 1); // mp1.tagID = -1000; // mp1.offsetPos = new Vector3(-0.4f, 0, -0.3f); // mp1.eulerAxle = 3; // mp1.deviceName = "设备" + (i * data.list + j + 1).ToString(); // mp1.carryingSystem = "承载系统1"; // mp1.deviceLocation = "4A-23机房"; // mp1.equipmentType = "机柜"; // mp1.equipmentModel = null; // mp1.factory = null; // mp1.specification = null; // mp1.listDevicesParameters = new List(); // if (mp1.deviceId % 2 == 0) // mp1.listDevicesParameters.Add(dp1); // else // mp1.listDevicesParameters.Add(dp2); // data.listEquipmentData.Add(mp1); // } // } // for (int i = 0; i < listTagid.Count; i++) // { // if ((i + 1) < data.listEquipmentData.Count) // { // data.listEquipmentData[i].tagID = listTagid[i]; // } // else // break; // } // } // GameObject rDataItem = Resources.Load("DataItem"); // for (int i = 0; i < data.listEquipmentData.Count; i++) // { // GameObject obj = GameObject.Instantiate(cabinetObj, transform); // obj.transform.localScale = new Vector3(data.cabinetW, data.cabinetH, obj.transform.localScale.z); // Debug.Log(data.cabinetH + " " + data.cabinetW); // obj.name = data.listEquipmentData[i].deviceName; // // Debug.Log(obj.name + " " + new Vector3(j * (data.cabinetW + data.intervalW), 0, i * data.intervalL)); // obj.transform.localPosition = new Vector3((i % data.line) * (data.cabinetW + data.intervalW), 0, (i / data.line) * data.intervalL); // obj.GetComponent().Setting((i / data.line) % 2 == 0); // listObjes.Add(obj.GetComponent()); // listObjes[i].deviceParameters = data.listEquipmentData[i]; // GameObject item = GameObject.Instantiate(rDataItem); // DataItem dataItem = item.GetComponent(); // dataItem.Init(data.listEquipmentData[i]); // // item.SetActive(true); // for (int j = 0; j < data.listEquipmentData[i].listDevicesParameters.Count; j++) // { // dataItem.SetDeviceParametersData(data.listEquipmentData[i].listDevicesParameters); // } // listObjes[i].dataItem = dataItem; // } // //Debug.Log(data.line); // Vector3 leftPos = new Vector3(-1 * (data.cabinetW + data.intervalW), 0, 0); // Vector3 rightPos = new Vector3((data.cabinetW * data.list + data.intervalW * data.list+ data.cabinetW+data.intervalW), 0, 0); // WayFindingManager.Instance.SetLine(leftPos, rightPos); // SaveAllData(); // isInit = true; // } // public IEnumerator RandomRange() // { // yield return 2f; // int randomNum = UnityEngine.Random.Range(0, listObjes.Count - 1); // // WayFindingManager.Instance.SetServerItem(listObjes[randomNum].transform); // List listMachineObj = new List(); // for (int i = 0; i < 3; i++) // { // if (i < listObjes.Count - 1) // { // listMachineObj.Add(listObjes[i]); // } // } // WayFindingManager.Instance.NavigatorServer(listMachineObj); // } // public void SettingMachine() // { // if (listObjes != null) // { // for (int i = 0; i < listObjes.Count; i++) // { // listObjes[i].gameObject.SetActive(false); // } // listObjes.Clear(); // listObjes = new List(); // } // if (BladeServerManager.Instance.listTagTracking != null) // { // for (int i = 0; i < BladeServerManager.Instance.listTagTracking.Count; i++) // { // BladeServerManager.Instance.listTagTracking[i].gameObject.SetActive(false); // } // BladeServerManager.Instance.listTagTracking.Clear(); // } // data.listEquipmentData = new List(); // for (int i = 0; i < data.line; i++) // { // for (int j = 0; j < data.list; j++) // { // data.listEquipmentData = new List(); // MachineParameters mp1 = new MachineParameters(); // mp1.deviceId = (i * data.list + j + 1); // mp1.tagID = -1000; // mp1.offsetPos = new Vector3(0f, 0, 0f); // mp1.eulerAxle = 3; // mp1.deviceName = "设备" + (i * data.list + j + 1).ToString(); // mp1.carryingSystem = "承载系统1"; // mp1.deviceLocation = "4A-23机房"; // mp1.equipmentType = "机柜"; // mp1.equipmentModel = null; // mp1.factory = null; // mp1.specification = null; // mp1.listDevicesParameters = new List(); // if (mp1.deviceId % 2 == 0) // mp1.listDevicesParameters.Add(dp1); // else // mp1.listDevicesParameters.Add(dp2); // } // } // MachineInit(); // } // public void SettingCameraFar() // { // OpenXRCamera.Instance.head.GetComponent().farClipPlane = data.CameraFar; // } // public void OnTrackingFirst(TagTracking tracking) // { // if (isDataInit) // QueryTagData(tracking); // } // public void OnTrackingStay(TagTracking tracking) // { // } // public void OnTrackingFound(TagTracking tracking) // { // // UILogManager.Instance.SendLogText(2, tracking.TrackId.ToString()); // if (isDataInit) // QueryTagData(tracking); // } // public void OnTrackingLost(TagTracking tracking) // { // } // private void QueryTagData(TagTracking tracking) // { // if (isDataInit) // { // foundTracking = tracking; // tagData = null; // Debug.Log("DGJ ===> QueryTagData" + data.listTagData.Count); // for (int i = 0; i < data.listTagData.Count; i++) // { // if (data.listTagData[i].id == tracking.TrackId) // { // tagData = data.listTagData[i]; // break; // } // } // } // //if (state) // //{ // // for (int i = 0; i < listEditorTag.Count; i++) // // { // // listEditorTag[i].gameObject.SetActive(!state); // // if (listEditorTag[i].id == tracking.TrackId) // // listEditorTag[i].gameObject.SetActive(true); // // } // //} // } // bool state = false; // public void EditorTag(Text text) // { // text.text = state ? "打开" : "关闭"; // text.text += "场景编辑"; // state = !state; // DragManager.Instance.state = state; // cubeY.SetActive(state); // for (int i = 0; i < listObjes.Count; i++) // { // listObjes[i].MeshState(state); // } // if (!state && foundTracking != null) // { // for (int i = 0; i < listEditorTag.Count; i++) // { // listEditorTag[i].gameObject.SetActive(state); // } // for (int i = 0; i < data.listTagData.Count; i++) // { // //data.listTagData[i].offestPos = data.listTagData[i].tagModel.localPosition; // //data.listTagData[i].offestrot = data.listTagData[i].tagModel.localEulerAngles; // for (int j = 0; j < listEditorTag.Count; j++) // { // if (listEditorTag[j].id == data.listTagData[i].id) // { // //data.listTagData[i].offestPos+= listEditorTag[j].transform.localPosition; // //data.listTagData[i].offestrot+= listEditorTag[j].transform.localEulerAngles; // transform.SetParent(listEditorTag[j].transform.parent); // data.listTagData[i].offestPos = transform.localPosition; // data.listTagData[i].offestrot = transform.localEulerAngles; // transform.parent = null; // Debug.Log("DGJ ===> 保存 Tag " + listEditorTag[j].id); // } // } // } // selectTOldPos = Vector3.zero; // selectTOldRot = Vector3.zero; // DragManager.Instance.triggerState = TriggerState.No; // selectTrigger = null; // } // if (!state) // { // SaveAllData(); // } // } // public void SaveAllData() // { // PlayerPrefs.SetString("MachineRoomTagData", JsonConvert.SerializeObject(data.listTagData)); // PlayerPrefs.SetString("MachineRoomCabinetData", JsonConvert.SerializeObject(data.listEquipmentData)); // PlayerPrefs.SetString("MachineRoomData", JsonConvert.SerializeObject(data)); // Debug.Log(" 保存成功 " + JsonConvert.SerializeObject(data)); // } // private void SaveData() // { // if (data != null) // { // string _str = JsonConvert.SerializeObject(data); // System.IO.Directory.CreateDirectory(Application.persistentDataPath + "/Data"); // string NowTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss").Replace(" ", "_").Replace("/", "_").Replace(":", "_"); // Debug.Log(Application.persistentDataPath + "/Data"); // using (System.IO.StreamWriter writer = System.IO.File.CreateText(Application.persistentDataPath + "/Data" + "/" + NowTime + "_data.txt")) // { // writer.Write(_str); // //writer. // } // //UnityEditor.AssetDatabase.Refresh(); // } // } // private void OnDisable() // { // PlayerPrefs.SetString("MachineRoomTagData", JsonConvert.SerializeObject(data.listTagData)); // PlayerPrefs.SetString("MachineRoomCabinetData", JsonConvert.SerializeObject(data.listEquipmentData)); // PlayerPrefs.SetString("MachineRoomData", JsonConvert.SerializeObject(data)); // SaveData(); // } //}