栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

我该如何比较Java中的颜色?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

我该如何比较Java中的颜色?

在Color类中实现相似方法。

然后使用:

public static ArrayList<Color> ColorList(int numOfColors) {    ArrayList<Color> colorList = new ArrayList<Color>();    for (int i = 0; i < numOfColors; i++) {        Color c = RandColor();        boolean similarFound = false;        for(Color color : colorList){ if(color.similarTo(c)){      similarFound = true;      break; }        }        if(!similarFound){ colorList.add(c);        }    }    return colorList;}

要实现likeTo:

看一下RGBA颜色空间中的颜色相似度/距离,并以编程方式找到相似的颜色。一种简单的方法可以是:

((r2-r1)2 +(g2-g1)2 +(b2-b1)2)1/2

和:

boolean similarTo(Color c){    double distance = (c.r - this.r)*(c.r - this.r) + (c.g - this.g)*(c.g - this.g) + (c.b - this.b)*(c.b - this.b)    if(distance > X){        return true;    }else{        return false;    }}

但是,您应该根据类似的想象找到X。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/496168.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号