using System; using System.Collections; using System.Collections.Generic; using Unity.Mathematics; using UnityEngine; using Sirenix.OdinInspector; namespace UguiToolkit.Editor { public class CacheScriptObject : SerializedScriptableObject { public Dictionary panelCaches = new(); } [Serializable] public class PanelCache { [LabelText("源图片文件夹路径"), FolderPath] public string srcImgDirPath; [LabelText("目标图片信息文件(psd导出)"), FolderPath] public string layoutInfoFilePath; // Sample.layout.txt [LabelText("目标图片文件夹路径")] public string TargetImgDirPath { get { if (string.IsNullOrWhiteSpace(layoutInfoFilePath)) return ""; var dirName = System.IO.Path.GetDirectoryName(layoutInfoFilePath); var fileName = System.IO.Path.GetFileName(layoutInfoFilePath); var split = fileName.Split("."); if (split.Length == 0) return ""; return System.IO.Path.Join(dirName, split[0]); } } // 图片路径 -> 旋转缩放信息 public Dictionary> rotScaleInfos = new(); } [Serializable] public struct rotScaleInfoItem { public string imgPath; public float rotiation; public float2 scale; } }