Я работаю над программой, которая рисует график, поэтому я бы хотел нарисовать очки! Я бы хотел, чтобы точки были круглыми, так как это обычно показывает точки, и, насколько мне известно, g2.fillOval(x, y, height, width)
должен нарисовать заполненный овал с высотой height
и шириной width
по адресу (x, y)
. Это мой код на данный момент:Java AWT fillOval() не работает
private void drawCenteredCircle(Graphics g, int x, int y, int radius) {
Graphics2D g2 = (Graphics2D) g.create();
g2.setColor(pointColor);
g2.fillOval(x-radius, y-radius, 2*radius, 2*radius);
g2.dispose();
}
которая затем вызывается в paintComponent()
методом JPanel
. Он делает рисовать, так что я знаю, что код работает, но по какой-то причине, он рисует квадрат, например, так: my square oval :(
Я также попытался это:
private void drawCenteredCircle(Graphics g, int x, int y, int radius) {
Graphics2D g2 = (Graphics2D) g.create();
g2.setColor(pointColor);
g2.fill(new Ellipse2D.Float(x-radius, y-radius, 2*radius, 2*radius);
g2.dispose();
}
Но есть тот же результат. Любая помощь в том, как нарисовать заполненный круг/эллипс, будет высоко оценена.
Я предполагаю, что без приличного [mcve] вы не получите достойного ответа. Если время имеет существенное значение, посмотрите на эту ссылку и подумайте о создании и публикации одного из них. Также обратите внимание, что весь код должен быть размещен здесь, а не в ссылке. –
За исключением, возможно, на этот раз ваша проблема связана с неправильной настройкой RenderingHints. Проверьте это. –
В ссылке не было отправлено кода, это было изображение того, как выглядел мой результат. Кроме того, спасибо за минимальную, полную и проверяемую страницу примера, я обязательно прочитаю это и опубликую вопросы, используя этот формат. – Shannon