В чем ошибка в моей программе создания перекрывающихся объектов GOval с использованием GraphicsProgram - PullRequest
0 голосов
/ 21 января 2012

Я пытаюсь создать три концентрических круга разного цвета, используя GraphicsProgram. Однако круги никогда не кажутся концентрическими ... они кажутся оттесненными по бокам друг друга, как будто пытаясь показать другое измерение. Я просто создаю и добавляю объекты GOval. Может быть, я что-то упустил. Есть ли способ установить прозрачность кругов?

Добавление кода ниже:

import acm.graphics.*;
import acm.program.*;
import java.awt.*;

public class Target extends GraphicsProgram {   

    final static double radiusOuterCircle = 72.0;
    final static double radiusMiddleCircle = 47.0;
    final static double radiusInnerCircle = 22.0;


    public void run() {


        final double centerX = this.getWidth() / 2.0;
        final double centerY = this.getHeight() / 2.0;


        GOval g = makeCircle(centerX, centerY,radiusOuterCircle , Color.RED);
        add(g);


        g = makeCircle(centerX, centerY,radiusMiddleCircle , Color.WHITE);
        add(g);


        g = makeCircle(centerX, centerY,radiusInnerCircle , Color.RED);
        add(g);


    }



    private GOval makeCircle(double centerX, double centerY, double radius, Color color)
    {

        GOval g = new GOval(centerX, centerY, radius, radius);
        g.setFillColor(color);
        g.setFilled(true);

        return g;

    }
}

1 Ответ

1 голос
/ 21 января 2012

Согласно руководству , первые два параметра четырехпараметрического конструктора GOval являются координатами верхнего левого угла ограничительной рамки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...