Я делаю зеркальное отражение изображения в горизонтальной и вертикальной осях. Теперь я сделаю диагональ.Зеркальное отражение изображения Python
Я сделал ширину hori и verti шириной два для циклов, которые в сценарии hori пересекают все пиксели высоты и только половину пикселей по ширине. Затем он получает цвет пикселя и устанавливает тот же цвет на пиксель с другой стороны. Переход от getWidth(pic)
к центру.
Тогда у меня есть зеркало в середине рисунка. Как сделать диагональный путь?
Edit:
img_src = makePicture(pickAFile())
W = getWidth(img_src)
H = getHeight(img_src)
for x in range(W):
for y in range(H):
p = getPixel(img_src, x, y)
colorInSrc = getColor(getPixel(img_src, x, y))
destPixel = getPixel(img_src, H-y-1, W-x-1)
setColor(destPixel, colorInSrc)
Это, похоже, не очень вопрос на python, а просто алгоритм управления матрицей. Там нет ничего особенного в языке «как это сделать». Оптимальное решение/алгоритм - это кросс-язык – DrFalk3n
Я не уверен, что делают getPixel и setColor, но похоже, что вы изменяете одно и то же изображение. В моем примере вам нужно создать новое изображение с измененной шириной и высотой (т.высота исходного изображения станет шириной нового изображения) и установите пиксели на новом изображении. Если вы просто хотите сохранить одну и ту же ширину и высоту и изменить один и тот же образ, переходите к тому, что сказал Свен Хехт, и используйте существующий код для вертикальной перемотки, а затем горизонтально на одно и то же изображение. – rslite