Задача Java Swing AWT Geomtry, rectangle, Ellipse

216
18 декабря 2017, 13:59

Прямоугольная область задана координатами x1 y1, x2 y2 концов ее диагонали. Область разбита на прямоугольники так, что одна сторона разбита на n, а другая на m отрезков. В этой области задана окружность. Вычислить количество прямоугольников области, в которых лежит хотя бы одна точка окружности. Выделить искомые прямоугольники.

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        //ввод
        System.out.println("Input x1");
        int x1 = in.nextInt();
        int y1 = in.nextInt();
        int x2 = in.nextInt();
        int y2 = in.nextInt();
        int x3 = in.nextInt();
        int y3 = in.nextInt();
        int x = in.nextInt();
        int y = in.nextInt();
        int d = in.nextInt();
        int w = in.nextInt();
        int xe = in.nextInt();
        int ye = in.nextInt();
        int de = in.nextInt();
        int we = in.nextInt();
        int m = in.nextInt();
        int n = in.nextInt();
        MyFrame frame = new MyFrame();
        MyPanel panel = new MyPanel(x1, y1, x2, y2, x3, y3, x, y, d, w, xe, ye, de, we, m, n);
        frame.add(panel);
    }
}

import javax.swing.*;
import java.awt.*;
import java.awt.geom.Area;
import java.awt.geom.Ellipse2D;
import java.awt.geom.Rectangle2D;
public class MyPanel extends JPanel {
    int x1, y1, x2, y2, x3, y3;
    int x, y, d, w;
    int xe, ye, de, we;
    int m, n;
    MyPanel(int x1, int y1, int x2, int y2, int x3, int y3, int x, int y, int d, int w, int xe, int ye, int de, int we, int m, int n)
    {
        this.x1=x1;
        this.x2=x2;
        this.x3=x3;
        this.y1=y1;
        this.y2=y2;
        this.y3=y3;
        this.x=x;
        this.y=y;
        this.d=d;
        this.w=w;
        this.xe=xe;
        this.ye=ye;
        this.de=de;
        this.we=we;
        this.m=m;
        this.n=n;
    }
    public void paintComponent(Graphics g) {
        super.paintComponent(g);
        Graphics2D g2 = (Graphics2D)g;
        g2.setPaint(Color.RED);
        Rectangle2D rect = new Rectangle2D.Double((double)x, (double)y, (double)w, (double)d);
        g2.draw(rect);


        Ellipse2D elip = new Ellipse2D.Double((double)xe, (double)ye, (double)we, (double)de);
        g2.draw(elip);
    }
}

import javax.swing.*;
public class MyFrame extends JFrame{
    MyFrame() {
        setSize(700,700);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setVisible(true);
        setResizable(true);
    }
}

Учусь в универе. Вообще не представляю, что дальше делать, как вариант массив из прямоугольников, но как его сделать я не знаю. Буду очень благодарен за помощь и критику.

READ ALSO
Подключение к серверу с помощью Servlet и jetty

Подключение к серверу с помощью Servlet и jetty

Не получается подключиться к ServletДальше ошибка - HTTP ERROR 503 Подскажите в чем проблема?

200
Повернуть отдельный спрайт Android

Повернуть отдельный спрайт Android

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

231
Отсутствие return

Отсутствие return

Почему после последней фигурной скобки есть эта ошибка:missing return statement Весь код:

188
Android асинхронная запрос ViewPager

Android асинхронная запрос ViewPager

При старте Activity(в методе onCreate) отправляется запрос на сервер, с которого приходит количество элементов-фрагментов для ViewPagerViewPagerAdapter Требует...

185