Java - Cómo crear un cuadrado y un circulo a partir de las clases dadas

 
Vista:

Cómo crear un cuadrado y un circulo a partir de las clases dadas

Publicado por Fabian Montoya (1 intervención) el 15/09/2018 07:10:51
Hola. Soy muy principante y me gustaría saber cómo puedo crear y programar dos nuevas clases que permitan conceptualizar un cuadrado y un circulo respectivamente. Considerando utilizar la clase Punto o Linea, dependiendo de las necesidades de la función que te permita dibujar en el marco (JFrame).

Estas son las clases dadas:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
import javax.swing.JFrame; //nos da oportunidad de generar una ventana
import java.awt.Graphics;
import java.awt.Color;
import java.util.ArrayList;
class Ventana extends JFrame{
	ArrayList<Punto> puntos = new ArrayList<Punto>(); //permite almacenar varios puntos
	ArrayList<Linea> linea = new ArrayList<Linea>();
 
	public Ventana(){ //constructor
		this.setSize(500,500);//tamaño
		this.setTitle("Puntos con linea "); //titulo de la ventana no es necesario
		this.setLocationRelativeTo(null); //posicionamiento de la ventana
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //poder cerrarla
	}
 
	public void paint(Graphics g){//este metodo ya esta definido
		super.paint(g);
		g.setColor(Color.blue); //el color es un objeto
		//g.drawLine(50,50,150,150); //dibuja resiviendo las cordenadas iniciales y finales en este caso se dibuja el punto nadamas	
		for (int i = 0; i<puntos.size(); i++){
			g.drawOval(puntos.get(i).x,puntos.get(i).y,3,3);
			g.drawLine(linea.get(i).x,linea.get(i).y,linea.get(i).a,linea.get(i).b);
		}
	}
 
	public void setPunto(Punto p){
		puntos.add(p); //añade en el array list el punto 	
	}
 
	public void setLinea(Linea l){
		linea.add(l);
	}
 
}
 
 
class Linea{
	int x,y,a,b;
	Linea(){
 
	}
	Linea(Punto p1, Punto p2){
		x=p1.x;
		y=p1.y;
 
		a=p2.x;
		b=p2.y;
	}
	public void imprimeCoordenadas2(){
		System.out.println("Puntoinicial [x="+x+",y="+y+"]");
		System.out.println("PuntoFinal [x="+a+",y="+b+"]");
	}
 
}
 
 
class Punto{
 
	int x,y;
 
	Punto(){
 
	}
 
	Punto(int X, int Y){
		x=X;
		y=Y;
	}
 
	public void imprimeCoordenadas(){
		System.out.println("Punto[x="+x+",y="+y+"]");
	}
 
}
 
 
class Geometria{
	public static void main(String[] args) {
 
		Punto p1 = new Punto(100,100);
		Punto p2 = new Punto(200,200);
 
		Linea l1 = new Linea(p1,p2);
 
		p1.imprimeCoordenadas();
 
		Ventana frame = new Ventana();
 
		frame.setPunto(p1);
		frame.setPunto(p2);
 
		frame.setLinea(l1);
		frame.setVisible(true);
 
 
	}
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder