#java #drawrect #graphics2d
#java #drawrect #graphics2d
Вопрос:
Как я могу надежно определить точную протяженность прямоугольника при его визуализации с использованием Graphics2D?
Предположим, у меня есть прямоугольник, который начинается с (20,40) и имеет ширину 200 пикселей и высоту 100 пикселей:
drawRect (20,40,200,100);
Ответ на мой вопрос прост, когда это простой прямоугольник, грубо нарисованный пером размером в 1 пиксель. Однако, каковы точные границы, которые затрагиваются в процессе рендеринга, когда размер пера составляет 2 пикселя, 3 пикселя или более? И будет ли прямоугольник «перетекать» на соседние пиксели при использовании сглаживания?
Какой самый надежный способ вычислить точные границы, которыми будут манипулировать?
Ответ №1:
Если вам нужно знать границы обведенной фигуры, вы можете обвести ее самостоятельно и проверить границы.
Graphics2D g;
g.getStroke().createStrokedShape(myRect).getBounds();