Ширина (-1) и Высота (-1) не могут быть <= 0 - PullRequest
0 голосов
/ 26 декабря 2011

Я получаю странную ошибку в обработке, используя следующий маленький кусочек кода:

void setup() {
  size(200,200);
}

void draw() {
  background(0);
  loadPixels();
  updatePixels();
}

Ошибка: (с трассировкой стека)

    Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException: Width (-1) and height (-1) cannot be <= 0
    at java.awt.image.DirectColorModel.createCompatibleWritableRaster(DirectColorModel.java:1016)
    at java.awt.image.BufferedImage.<init>(BufferedImage.java:357)
    at sun.lwawt.macosx.CImage$Creator.createFromImage(CImage.java:101)
    at sun.lwawt.macosx.CPlatformWindow.getImageForTarget(CPlatformWindow.java:693)
    at sun.lwawt.macosx.CPlatformWindow.updateIconImages(CPlatformWindow.java:519)
    at sun.lwawt.macosx.CPlatformWindow.setVisible(CPlatformWindow.java:484)
    at sun.lwawt.LWWindowPeer$1.run(LWWindowPeer.java:260)
    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:705)
    at java.awt.EventQueue.access$000(EventQueue.java:101)
    at java.awt.EventQueue$3.run(EventQueue.java:666)
    at java.awt.EventQueue$3.run(EventQueue.java:664)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:675)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:240)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:157)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:146)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:142)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:134)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)

Теперь сначала яЯ подумал, что это ошибка, потому что ранее была еще одна ошибка, которая исчезла, когда я перезапустил Обработка.Кажется, у него все еще нет хорошей поддержки Mac OS X Lion (это то, что я использую).Но я попробовал и стабильный выпуск, и предварительный выпуск, и оба имеют ту же ошибку.Кто-нибудь еще получил это?Кто-нибудь знает как это исправить?Нужно ли устанавливать лучший JDK или что-то еще?

Ответы [ 2 ]

2 голосов
/ 27 декабря 2011

См. Пример для loadPixels: http://processing.org/reference/loadPixels_.html

Я думаю, вам нужно, чтобы данные изображения были в эскизе, прежде чем вы сможете загрузить их в массив из окна дисплея.

Попробуйте добавитьизображение и посмотрим, что произойдет.

0 голосов
/ 07 февраля 2012

Как ни странно, он начал нормально работать после нескольких перезапусков.Это странно, и я не знаю, почему он так себя вел.В любом случае, это работает сейчас.

...