Jython Image Manipulation Создание сетки над изображением (JES)

Я пытаюсь сделать сетку поверх изображения, и мне удалось это сделать с помощью функции:

def grid(pic):
  width = getWidth(pic)
  height = getHeight(pic)
  size = 10
  for x in range(0, width, size):
    addLine(pic, x+size, 0, x+size, height)
  for y in range(0, height, size):
    addLine(pic, 0, y+size, width, y+size)

Теперь мне нужно сделать функцию с именем grid2(рис, размер). Эта функция должна взять код из предыдущей функции (grid(рис.)) И сделать так, чтобы линии сетки теперь были на расстоянии 20 пикселей друг от друга. Я не очень хорош с параметрами, поэтому я не совсем понимаю, как это сделать. Мне было интересно, если кто-нибудь может мне помочь, спасибо за тонну.

1 ответ

Эй, мы в одном классе; у меня работает, и все, что я сделал, это вынул переменную в первой функции и поместил ее в параметры. Остальная часть кода должна быть хорошей, чтобы остаться прежней.

def grid2(pic, size):
  width = getWidth(pic)
  height = getHeight(pic)

  # Add lines along the X axis.
  for x in range(0, width, size):
    addLine(pic, x+size, 0, x+size, height)

  # Add lines down the Y axis
  for y in range(0, height, size):
    addLine(pic, 0, y+size, width, y+size)

В командной строке вы получите:

p=makePicture(pickAFile())
grid2(p,20)

Проверьте это с большими числами, чтобы видеть, действительно ли это работает.

Другие вопросы по тегам