Java - Ayuda con Sugerencias. Figuras Geométricas en el Plano

 
Vista:
Imágen de perfil de Ricardo

Ayuda con Sugerencias. Figuras Geométricas en el Plano

Publicado por Ricardo (5 intervenciones) el 21/09/2015 18:18:58
Buenas a tod@s!

Tengo que realizar un programa de figuras geométricas pero no sé ni por dónde empezar, se trata de realizar varios ejercicios con figuras geométricas en un vector (Circulo, Triangulo, Cuadrado, Polígono regular de N lados).

Hay que inscribirlas en un plano de 100x100 y poder calcular las áreas, apotemas, perímetros, coordenadas, áreas compartidas si las hay, figuras concéntricas si se da el caso, superposición, yuxtaposición.

Lo que más problemas me da es el bendito plano de 100x100, no se me ocurre como crearlo ni como referenciar las figuras en el, según mi profesor no tiene por que ser gráfico todo el asunto, aunque podría ser.

Para no hacer más enredo les dejo adjunto el enunciado y espero con ansias sus sugerencias y consejos...

Saludos!
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

Ayuda con Sugerencias. Figuras Geométricas en el Plano

Publicado por Tom (1831 intervenciones) el 21/09/2015 21:11:11
Pues no sé, pero parece que "inscribirlas en el plano" en tu caso no es más que comprobar que ninguna coordenada de las figuras se sale de los límites (100 x 100).

Por lo demás, tendrás que aplicar tus conocimientos de Geometría ...

Una sugerencia:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
class Plano {
  final Dimension limites;
  private ArrayList<Figura> contenido;
  /* */
  public Plano(int x, int y, int w, int h) {
    limites = new Dimension(x, y, w, h);
    contenido = new ArrayList<>();
  }
  /* */
  public boolean inscribir(Figura f) {
    boolean ret = false;
    Dimension fdim = f.getDimension();
    if((fdim.x >= limites.x) && ((fdim.x + fdim.w)) <= (limites.x + limites.w))) {
      if((fdim.y >= limites.y) && ((fdim.y + fdim.h)) <= (limites.y + limites.h))) {
        contenido.add(f);
        return true;
      }
    }
    return false;
  }
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar