repositories
/
TP_POO.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Create a generic Node class and make use of it.
[TP_POO.git]
/
TP2
/
Image.java
diff --git
a/TP2/Image.java
b/TP2/Image.java
index 37bc6c3fc4d6b724c94db174b78f3e3bd79a8670..c2b0b84d7f758b70e7bcc0d66675bf954ec9ba64 100644
(file)
--- a/
TP2/Image.java
+++ b/
TP2/Image.java
@@
-1,5
+1,12
@@
+import java.util.Comparator;
-class Image extends Forme implements Compactable {
+@ClassPreamble (
+ author = "Jérôme Benoit",
+ date = "09/11/2009"
+)
+public class Image extends Forme implements Compactable,
+ Comparable<Image>,
+ Comparator<Image> {
final int IMAGE_MAX_SIZE = 100;
Forme[] formeCollection;
int formeNumber;
final int IMAGE_MAX_SIZE = 100;
Forme[] formeCollection;
int formeNumber;
@@
-16,6
+23,10
@@
class Image extends Forme implements Compactable {
formeNumber = 0;
}
formeNumber = 0;
}
+ public int getSize() {
+ return formeNumber;
+ }
+
private boolean isEmpty() {
return (formeNumber == 0);
}
private boolean isEmpty() {
return (formeNumber == 0);
}
@@
-67,10
+78,25
@@
class Image extends Forme implements Compactable {
}
public void compacter(int nElements) {
}
public void compacter(int nElements) {
- int minIndex = formeNumber - nElements - 1;
+ // Heavy solution
+ /* int minIndex = formeNumber - nElements - 1;
for (int i = formeNumber - 1; (i > minIndex && !isEmpty()); i--) {
supprimer(i);
for (int i = formeNumber - 1; (i > minIndex && !isEmpty()); i--) {
supprimer(i);
+ } */
+ // Lightweight solution
+ if (formeNumber - nElements > 0) {
+ formeNumber -= nElements;
+ } else {
+ formeNumber = 0;
}
}
}
}
+ public int compareTo(Image image) {
+ return formeNumber - image.getSize();
+ }
+
+ public int compare(Image image1, Image image2) {
+ return (int)(image1.getpOri().getY() - image2.getpOri().getY());
+ }
+
}
}