private void BreakReceiving() { if (VisualizerWindow != null) { VisualizerWindow.Close(); DestroyImmediate(VisualizerWindow); VisualizerWindow = null; } IsReceiving = false; Status = null; Data.Clear(); }
private void CheckStatus() { foreach (ReceivingStatus status in Status) { if (status == ReceivingStatus.NoData || status == ReceivingStatus.OK) { continue; } return; } Debug.Log("Check success"); VisualizerWindow = EditorWindow.GetWindow <TextureVisualizer>("Texture Visualizer"); DirectoryInfo binaryDirectory = new DirectoryInfo(DirectoryPath); int x_min = int.MaxValue; int x_max = int.MinValue; int y_min = int.MaxValue; int y_max = int.MinValue; foreach (FileInfo fileToDecompress in binaryDirectory.GetFiles("*.bin")) { string[] name = fileToDecompress.Name.Split('_'); if (int.TryParse(name[0], out int coord_x)) { if (coord_x > x_max) { x_max = coord_x; } if (coord_x < x_min) { x_min = coord_x; } } if (int.TryParse(name[1], out int coord_y)) { if (coord_y > y_max) { y_max = coord_y; } if (coord_y < y_min) { y_min = coord_y; } } } int x_delta = x_max - x_min; int y_delta = y_max - y_min; byte[, ][] data = new byte[x_delta + 1, y_delta + 1][]; foreach (FileInfo fileToDecompress in binaryDirectory.GetFiles("*.bin")) { string[] name = fileToDecompress.Name.Split('_'); if (int.TryParse(name[0], out int coord_x) && int.TryParse(name[1], out int coord_y)) { int x = x_max - coord_x; int y = y_max - coord_y; data[x, y] = (File.ReadAllBytes(fileToDecompress.FullName)); } } VisualizerWindow.Initialize(x_delta, y_delta, data); VisualizerWindow.Show(); }