|
JAVA BUFFEREDIMAGE
|
|||
---|---|---|---|
#18+
только начинаю работать с Java, хочу нарисовать поле из правильных шестиугольников(гексагонов). использую BufferedImage, рисую линии методом брезенхема. не могу понять в чем дело, при некоторых параметрах радиуса поле не рисуется, более того, даже тулбар странно отображается Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: Coordinate out of bounds! выдает такую ошибку, но я не понимаю что делать дебажил, значения все существуют да и странно, при радиусе 70 работает, а 50 нет АЛГОРИТМ: public void Bresenham(double x0, double y0, double x1, double y1) { double x, y, dx, dy, incx, incy, pdx, pdy, es, el, err; dx = x1 - x0;//проекция на ось икс dy = y1 - y0;//проекция на ось игрек incx = sign(dx); incy = sign(dy); dx = Math.abs(dx); dy = Math.abs(dy); if (dx > dy) //определяем наклон отрезка: { pdx = incx; pdy = 0; es = dy; el = dx; } else { pdx = 0; pdy = incy; es = dx; el = dy;//тогда в цикле будем двигаться по y } x = x0; y = y0; err = el / 2; image.setRGB((int) Math.round(x), (int) Math.round(y), Color.BLACK.getRGB()); for (int t = 0; t < el; t++) { err -= es; if (err < 0) { err += el; x += incx; y += incy; } else { x += pdx; y += pdy; } image.setRGB((int) Math.round(x), (int) Math.round(y), Color.BLACK.getRGB()); //ОШИБКА ТУТ } } ЗДЕСЬ РИСУЮ ОДИН ГЕКСАГОН: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2019, 16:35 |
|
JAVA BUFFEREDIMAGE
|
|||
---|---|---|---|
#18+
dim_simException in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: Coordinate out of bounds! Судя по этому сообщению у вас координаты вышли за пределы области рисования. Посмотртите под отладчиком что происходит перед ошибкой. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2019, 09:32 |
|
|
start [/forum/topic.php?fid=59&msg=39783885&tid=2121445]: |
0ms |
get settings: |
9ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
41ms |
get topic data: |
13ms |
get forum data: |
2ms |
get page messages: |
60ms |
get tp. blocked users: |
1ms |
others: | 321ms |
total: | 472ms |
0 / 0 |