Files
plugin-library/Assets/02.InformationSave/RunTime/RectTransformInfo.cs

47 lines
1.9 KiB
C#
Raw Normal View History

2025-03-26 09:34:52 +08:00

using UnityEngine;
namespace Stary.Evo.InformationSave
{
public class RectTransformInfo : AbstractInformation<RectTransformInfo.Information>
{
public override void Save(int index)
{
var rectTransform = GetComponent<RectTransform>();
_list[index].anchorPosition = rectTransform.anchoredPosition3D.GetVector3Data();
_list[index].sizeDelta = rectTransform.sizeDelta.GetVector2Data();
_list[index].eulerAngles = rectTransform.eulerAngles.GetVector3Data();
_list[index].localScale = rectTransform.localScale.GetVector3Data();
_list[index].anchorMin = rectTransform.anchorMin.GetVector2Data();
_list[index].anchorMax = rectTransform.anchorMax.GetVector2Data();
_list[index].pivot = rectTransform.pivot.GetVector2Data();
}
public override void Switch(int index)
{
var rectTransform = GetComponent<RectTransform>();
rectTransform.anchoredPosition3D =_list[index].anchorPosition.SetVector3Data();
rectTransform.sizeDelta = _list[index].sizeDelta.SetVector2Data();
rectTransform.eulerAngles =_list[index].eulerAngles.SetVector3Data();
rectTransform.localScale = _list[index].localScale.SetVector3Data();
rectTransform.anchorMin =_list[index].anchorMin.SetVector2Data();
rectTransform.anchorMax =_list[index].anchorMax.SetVector2Data();
rectTransform.pivot =_list[index].pivot.SetVector2Data();
}
[System.Serializable]
public sealed class Information : InformationBase
{
public Vector3Data anchorPosition;
public Vector2Data sizeDelta;
public Vector3Data eulerAngles;
public Vector3Data localScale;
public Vector2Data anchorMin;
public Vector2Data anchorMax;
public Vector2Data pivot;
}
}
}