деление изображения на четыре равные части в JAI - PullRequest
1 голос
/ 03 февраля 2010

Пожалуйста, дайте мне код для разделения изображения на четыре части от центра в Java Advanced Imaging ..

Ответы [ 3 ]

2 голосов
/ 03 февраля 2010

Не уверен насчет JAI, но вот подход BufferedImage, который вы можете использовать в качестве входных данных для JAI. Так что, возможно, это работает для вашего варианта использования

public static BufferedImage[] divide(BufferedImage source) {
  // for odd widths or heights, the last row or column will be ignored
  // fixing this behaviour is left as an exercise to the eager
  int height = source.getHeight() / 2;
  int width = source.getWidth() / 2;

  return new BufferedImage[] {
    source.getSubimage(0, 0, width, height), // top left
    source.getSubimage(width, 0, width, height), // top right
    source.getSubimage(0, height, width, height), // bottom left
    source.getSubimage(width, height, width, height) // bottom right
  };
}
1 голос
/ 09 ноября 2011

В этом примере ширина должна быть первой, чем высота. То есть:

source.getSubimage(0, 0,width, height ), // top left
source.getSubimage(width, 0, width, height), // top right
source.getSubimage(0, height, width, height), // bottom left
1 голос
/ 03 февраля 2010

Есть интересный фрагмент trompe-l'oeil в Sun's Java2D * с использованием четырех неравных частей .

* См. Правый нижний квадрант вкладки Images.

...