repositories
/
Persons_Comparator.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Split the person panel into two sub panels : one for the current person, one for...
[Persons_Comparator.git]
/
src
/
Eye.java
diff --git
a/src/Eye.java
b/src/Eye.java
index ed2231b7aaa81da839726fea50b760f917f178f3..822e6f83dd3fc7aabc5bcf5d864671c828c6f999 100644
(file)
--- a/
src/Eye.java
+++ b/
src/Eye.java
@@
-1,17
+1,34
@@
import java.awt.Color;
import java.awt.Color;
+import java.util.Arrays;
-public class Eye implements Comparable<Eye> {
+public class Eye {
+ private String strColor;
private Color color;
private Color color;
- private String[] colorsList = {"black", "
green", "blue", "brow
n"};
+ private String[] colorsList = {"black", "
blue", "brown", "gree
n"};
Eye() {
Eye() {
+ sortColorList();
}
/**
* @param color
*/
Eye(String color) {
}
/**
* @param color
*/
Eye(String color) {
+ setStrColor(color);
setColor(color);
setColor(color);
+ sortColorList();
+ }
+
+ public String getStrColor() {
+ return strColor;
+ }
+
+ public void setStrColor(String strColor) {
+ if (validateColor(strColor)) {
+ this.strColor = strColor;
+ } else {
+ throw new IllegalArgumentException("Color must be" + this.colorListToString());
+ }
}
public String[] getColorsList() {
}
public String[] getColorsList() {
@@
-30,13
+47,16
@@
public class Eye implements Comparable<Eye> {
*/
public void setColor(String color) {
if (validateColor(color)) {
*/
public void setColor(String color) {
if (validateColor(color)) {
- if (color.equals("brown"))
+ if (color.equals("black"))
+ this.color = Color.black;
+ else if (color.equals("blue"))
+ this.color = Color.blue;
+ else if (color.equals("brown"))
this.color = new Color(88, 41, 0);
this.color = new Color(88, 41, 0);
- else
- this.color = Color.getColor(color);
-
+ else if (color.equals("green"))
+ this.color = Color.green;
} else {
} else {
- throw new IllegalArgumentException("Color must be
" + colorsList
);
+ throw new IllegalArgumentException("Color must be
" + this.colorListToString()
);
}
}
}
}
@@
-53,12
+73,15
@@
public class Eye implements Comparable<Eye> {
return false;
}
return false;
}
+ private void sortColorList() {
+ Arrays.sort(this.colorsList);
+ }
+
/**
* @param eye
* @return
*/
/**
* @param eye
* @return
*/
- @Override
- public int compareTo(Eye eye) {
+ public int distanceTo(Eye eye) {
double r_diff = this.getColor().getRed() - eye.getColor().getRed();
double g_diff = this.getColor().getGreen() - eye.getColor().getGreen();
double b_diff = this.getColor().getBlue() - eye.getColor().getBlue();
double r_diff = this.getColor().getRed() - eye.getColor().getRed();
double g_diff = this.getColor().getGreen() - eye.getColor().getGreen();
double b_diff = this.getColor().getBlue() - eye.getColor().getBlue();
@@
-66,4
+89,13
@@
public class Eye implements Comparable<Eye> {
Double distance = Math.sqrt(2 * Math.pow(r_diff, 2) + 4 * Math.pow(g_diff, 2) + 3 * Math.pow(b_diff, 2));
return distance.intValue();
}
Double distance = Math.sqrt(2 * Math.pow(r_diff, 2) + 4 * Math.pow(g_diff, 2) + 3 * Math.pow(b_diff, 2));
return distance.intValue();
}
+
+ private String colorListToString() {
+ StringBuilder stringBuilder = new StringBuilder();
+ for (String c : colorsList) {
+ stringBuilder.append(" ");
+ stringBuilder.append(c);
+ }
+ return stringBuilder.toString();
+ }
}
}