com.soviby.unity.ui.ugui-to.../Assets/Editor/ScriptObject/CacheScriptObject.cs

51 lines
1.4 KiB
C#
Raw Normal View History

2024-10-08 15:19:05 +00:00
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<GameObject, PanelCache> 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<string, List<rotScaleInfoItem>> rotScaleInfos = new();
}
[Serializable]
public struct rotScaleInfoItem
{
public string imgPath;
public float rotiation;
public float2 scale;
}
}