ImgNoGoodWindow
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using UnityEditor;
using UnityEngine;
namespace Daemo
{
class ImgNoGoodWindow : EditorWindow
{
[MenuItem("Tools/UI RES/Assets Img No Good %#W")]
private static void ShowWindow()
{
ImgNoGoodWindow cw = (ImgNoGoodWindow)EditorWindow.GetWindow(typeof(ImgNoGoodWindow));
cw.minSize = new Vector2(500, 500);
}
private List<Texture2D> noGoodImages = new List<Texture2D>();
private List<Texture2D> goodImages = new List<Texture2D>();
private List<Texture2D> packImages = new List<Texture2D>();
private Vector2 scrollPos;
private Texture2D img = null;
private string[] btns = new string[] { "不规范图片组", "规范图片组","Pack图片组" };
private int selectIndex = 0;
public void Awake()
{
this.UpdateMsg();
}
private void UpdateMsg()
{
noGoodImages = EDCheckPrefabRef.GetNoGoodImgs();
noGoodImages.Sort(CompareSize);
goodImages = EDCheckPrefabRef.goodImgs;
goodImages.Sort(CompareSize);
packImages = EDCheckPrefabRef.packImgs;
packImages.Sort(CompareSize);
}
private int CompareSize(Texture2D t1, Texture2D t2) {
int t1Size = t1.width * t1.height;
int t2Size = t2.width * t2.height;
if (t1Size > t2Size)
{
return -1;
}
else if (t1Size == t2Size) {
return 0;
}
else
{
return 1;
}
}
private void OnGUI()
{
GUIContent title = new GUIContent();
title.text = "ImgNoGood";
this.titleContent = title;
GUILayout.Space(10);
if (GUILayout.Button("更新"))
{
this.UpdateMsg();
}
GUILayout.Space(10);
GUILayout.Label("功能说明:以下"+ noGoodImages.Count + "张图片尺寸不符合2的N次幂;"+goodImages.Count+ "张图片尺寸符合2的N次幂"+ packImages.Count+ "张Pack图片");
selectIndex = GUILayout.SelectionGrid(selectIndex, btns,3,GUILayout.MinWidth(100));
scrollPos =
EditorGUILayout.BeginScrollView(scrollPos, GUILayout.Width(500), GUILayout.Height(400));
List<Texture2D> showList = selectIndex == 0 ? noGoodImages : (selectIndex==1?goodImages:packImages);
for (int i = 0; i < showList.Count; i++)
{
EditorGUILayout.BeginHorizontal();
GUILayout.Label(showList[i].name + ":" + showList[i].width + "*" + showList[i].height + ":");
img = showList[i];
img = (Texture2D)EditorGUILayout.ObjectField(img, typeof(Texture2D), false, GUILayout.MinWidth(200f));
EditorGUILayout.EndHorizontal();
}
EditorGUILayout.EndScrollView();
}
}
}
ImgNoGoodWindow的更多相关文章
随机推荐
- 在虚拟机上安装gho、esd(wim)系统镜像文件
gho.esd(wim)等文件不能被虚拟机识别,但如果把它们打包成iso就可以了. 另外,还需用到能在虚拟机上运行的WinPE的iso文件,本文用的是微PE. 注意:安装虚拟机提示operating ...
- rabbitmq队列的exclusive,durability,auto-delete属性以及消息可靠传输设计
非集群下,简单的说:- 如果是excl,则设置durability没有意义,因为不管服务器挂了还是客户端主动/被动断开了,队列都会自动删除.- auto-delete,其实可简单的认为是同理,即使非e ...
- python简说(十六)第三方模块安装
安装第三模块 1.pip install xxx pip问题 1.提示没有pip命令的, 把python的安装目录. 安装目录下面的scripts目录加入到环境变量里面 2.Unknown or un ...
- vue2.0子组件修改父组件props数据的值
从vue1.0升级至2.0之后 prop的.sync被去除 因此直接在子组件修改父组件的值是会报错的如下: 目的是为了阻止子组件影响父组件的数据那么在vue2.0之后 如何在子组件修改父组件props ...
- replace 将逗号替换~
var reg = new RegExp(",","g"); //"g"表示全局替换var aa="qq,ww";aa= ...
- bzoj 2820 YY的GCD - 莫比乌斯反演 - 线性筛
Description 神犇YY虐完数论后给傻×kAc出了一题给定N, M,求1<=x<=N, 1<=y<=M且gcd(x, y)为质数的(x, y)有多少对kAc这种 傻×必 ...
- 牛客网数据库SQL实战(6-10)
6.查找所有员工入职时候的薪水情况,给出emp_no以及salary, 并按照emp_no进行逆序CREATE TABLE `employees` (`emp_no` int(11) NOT NULL ...
- topcoder srm 550 div1
problem1 link 因为数据比较小,直接开一个二维数组记录哪些格子已经遍历,哪些还没有.进行模拟即可. problem2 link 模拟一些小数据,可以发现,AB的形状以及要求的区间是下面的样 ...
- 数组中的元素 增加push用法 unshift() 方法 和减少pop() 方法 shift() 和其他位置增删 splice() 方法 join() 方法 reverse() 方法 sort() 方法
push用法 push 英 [pʊʃ] 美 [pʊʃ] vt. 推,推动; vt. 按; 推动,增加; 对…施加压力,逼迫; 说服; n. 推,决心; 大规模攻势; 矢志的追求 定义和用法 push( ...
- Python3 tkinter基础 Entry show textvariable 密码输入框
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...