modif deletearea
This commit is contained in:
1 parent
dfc453ac5b
commit
423f8bdc54
1 file changed
+49
-11
@@ -731,27 +731,65 @@ public final class ImageProcessing {
|
|||||||
} else if (filling == FillingType.LEFT) {
|
} else if (filling == FillingType.LEFT) {
|
||||||
int ind = xMin - (i - xMin);
|
int ind = xMin - (i - xMin);
|
||||||
if (ind < 0) {
|
if (ind < 0) {
|
||||||
ind = 0;
|
ind = -ind;
|
||||||
|
}
|
||||||
|
while (ind > 2 * xMin) {
|
||||||
|
ind -= 2 * xMin;
|
||||||
|
}
|
||||||
|
if (ind > xMin) {
|
||||||
|
ind = xMin - (ind - xMin);
|
||||||
}
|
}
|
||||||
setRGBValue(input, i, j, getRGBValue(input, ind, j));
|
setRGBValue(input, i, j, getRGBValue(input, ind, j));
|
||||||
} else if (filling == FillingType.RIGHT) {
|
} else if (filling == FillingType.RIGHT) {
|
||||||
int ind = xMax + (xMax - i);
|
int ind = xMax;
|
||||||
if (ind >= input.width) {
|
boolean decrease = false;
|
||||||
ind = input.width - 1;
|
for (int k = xMax; k >= i; k--) {
|
||||||
|
if (decrease) {
|
||||||
|
ind--;
|
||||||
|
if (ind == xMax) {
|
||||||
|
decrease = false;
|
||||||
|
ind++;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
ind++;
|
||||||
|
if (ind == input.width) {
|
||||||
|
decrease = true;
|
||||||
|
ind--;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
setRGBValue(input, i, j, getRGBValue(input, ind, j));
|
setRGBValue(input, i, j, getRGBValue(input, ind, j));
|
||||||
} else if (filling == FillingType.TOP) {
|
} else if (filling == FillingType.TOP) {
|
||||||
int ind = yMin - (i - yMin);
|
int ind = yMin - (j - yMin);
|
||||||
if (ind < 0) {
|
if (ind < 0) {
|
||||||
ind = 0;
|
ind = -ind;
|
||||||
}
|
}
|
||||||
setRGBValue(input, i, j, getRGBValue(input, i, yMin - (j - yMin)));
|
while (ind > 2 * yMin) {
|
||||||
|
ind -= 2 * yMin;
|
||||||
|
}
|
||||||
|
if (ind > yMin) {
|
||||||
|
ind = yMin - (ind - yMin);
|
||||||
|
}
|
||||||
|
setRGBValue(input, i, j, getRGBValue(input, i, ind));
|
||||||
} else if (filling == FillingType.BOTTOM) {
|
} else if (filling == FillingType.BOTTOM) {
|
||||||
int ind = yMax + (yMax - i);
|
int ind = yMax;
|
||||||
if (ind >= input.height) {
|
boolean decrease = false;
|
||||||
ind = input.height - 1;
|
for (int k = yMax; k >= j; k--) {
|
||||||
|
if (decrease) {
|
||||||
|
ind--;
|
||||||
|
if (ind == yMax) {
|
||||||
|
decrease = false;
|
||||||
|
ind++;
|
||||||
}
|
}
|
||||||
setRGBValue(input, i, j, getRGBValue(input, i, yMax + (yMax - j)));
|
} else {
|
||||||
|
ind++;
|
||||||
|
if (ind == input.height) {
|
||||||
|
decrease = true;
|
||||||
|
ind--;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
setRGBValue(input, i, j, getRGBValue(input, i, ind));
|
||||||
} else {
|
} else {
|
||||||
setRGBValue(input, i, j, getRGBValue(input, i, j));
|
setRGBValue(input, i, j, getRGBValue(input, i, j));
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in new issue
Block a user