123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141 |
- using UnityEngine;
- using UnityTexture2D = UnityEngine.Texture2D;
- using System;
- namespace UnityEditor.U2D.Sprites
- {
- internal abstract class ITexture2D
- {
- public abstract int width { get; }
- public abstract int height { get; }
- public abstract TextureFormat format { get; }
- public abstract Color32[] GetPixels32();
- public abstract FilterMode filterMode { get; set; }
- public abstract string name { get; }
- public abstract void SetPixels(Color[] c);
- public abstract void Apply();
- public abstract float mipMapBias { get; }
- public static bool operator==(ITexture2D t1, ITexture2D t2)
- {
- if (object.ReferenceEquals(t1, null))
- {
- return object.ReferenceEquals(t2, null) || t2 == null;
- }
- return t1.Equals(t2);
- }
- public static bool operator!=(ITexture2D t1, ITexture2D t2)
- {
- if (object.ReferenceEquals(t1, null))
- {
- return !object.ReferenceEquals(t2, null) && t2 != null;
- }
- return !t1.Equals(t2);
- }
- public override bool Equals(object other)
- {
- throw new NotImplementedException();
- }
- public override int GetHashCode()
- {
- throw new NotImplementedException();
- }
- public static implicit operator UnityEngine.Object(ITexture2D t)
- {
- return object.ReferenceEquals(t, null) ? null : t.ToUnityObject();
- }
- public static implicit operator UnityEngine.Texture2D(ITexture2D t)
- {
- return object.ReferenceEquals(t, null) ? null : t.ToUnityTexture();
- }
- protected abstract UnityEngine.Object ToUnityObject();
- protected abstract UnityEngine.Texture2D ToUnityTexture();
- }
- internal class Texture2DWrapper : ITexture2D
- {
- UnityTexture2D m_Texture;
- public Texture2DWrapper(UnityTexture2D texture)
- {
- m_Texture = texture;
- }
- public override int width
- {
- get { return m_Texture.width; }
- }
- public override int height
- {
- get { return m_Texture.height; }
- }
- public override TextureFormat format
- {
- get { return m_Texture.format; }
- }
- public override Color32[] GetPixels32()
- {
- return m_Texture.GetPixels32();
- }
- public override FilterMode filterMode
- {
- get { return m_Texture.filterMode; }
- set { m_Texture.filterMode = value; }
- }
- public override float mipMapBias
- {
- get { return m_Texture.mipMapBias; }
- }
- public override string name
- {
- get { return m_Texture.name; }
- }
- public override bool Equals(object other)
- {
- Texture2DWrapper t = other as Texture2DWrapper;
- if (object.ReferenceEquals(t, null))
- return m_Texture == null;
- return m_Texture == t.m_Texture;
- }
- public override int GetHashCode()
- {
- return m_Texture.GetHashCode();
- }
- public override void SetPixels(Color[] c)
- {
- m_Texture.SetPixels(c);
- }
- public override void Apply()
- {
- m_Texture.Apply();
- }
- protected override UnityEngine.Object ToUnityObject()
- {
- return m_Texture;
- }
- protected override UnityEngine.Texture2D ToUnityTexture()
- {
- return m_Texture;
- }
- }
- }
|