Foros del Web » Programación para mayores de 30 ;) » Java »

Ayuda con Graphics2D

Estas en el tema de Ayuda con Graphics2D en el foro de Java en Foros del Web. Bueno muchachos, estoy teniendo un pequeño problema... resulta que estoy haciendo unas gráficas de funciones para la facultad y estoy usando la librería JFreeChart ... ...
  #1 (permalink)  
Antiguo 04/09/2010, 12:46
 
Fecha de Ingreso: septiembre-2010
Mensajes: 5
Antigüedad: 14 años, 2 meses
Puntos: 0
Ayuda con Graphics2D

Bueno muchachos, estoy teniendo un pequeño problema... resulta que estoy haciendo unas gráficas de funciones para la facultad y estoy usando la librería JFreeChart ...

(para los que no la conocen aquí la página http://www.jfree.org/jfreechart/)

Resulta que uno de los métodos que necesito usar, me pide como parámetro "Graphics2D g2" osea el graphics device y me estoy volviendo loco para hacerlo funcionar. Por lo que estuve leyendo el graphics2D no se puede instanciar y nose como hacerlo andar (soy bastante nuevo en java también)

Por favor necesito ayuda sobre como hacerlo andar

Acá pongo más info sobre el método que necesito implementar

Código:
drawDomainGridLine

public void drawDomainGridLine(java.awt.Graphics2D g2,
                               XYPlot plot,
                               ValueAxis axis,
                               java.awt.geom.Rectangle2D dataArea,
                               double value)

    Draws a grid line against the domain axis.

    Parameters:
        g2 - the graphics device.
        plot - the plot.
        axis - the value axis.
        dataArea - the area for plotting data (not yet adjusted for any 3D effect).
        value - the value.
Desde ya muchas graciass!!
  #2 (permalink)  
Antiguo 04/09/2010, 13:45
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 20 años, 1 mes
Puntos: 454
Respuesta: Ayuda con Graphics2D

Hola:

Coge cualquier componente de Swing (JPanel, JLabel, ...) vale cualquiera que tengas instanciado y que debe ser en el que quieres pintar. Pídele el getGraphics() y te devolverá un Graphics. Ese Graphics es en realidad un Graphics2D, así que puedes hacer un "cast".

Código java:
Ver original
  1. Graphics2D g2d = (Graphics2D)unComponenteCualquiera.getGraphics();

Se bueno.
__________________
Apuntes Java
Wiki de Programación
  #3 (permalink)  
Antiguo 04/09/2010, 19:59
 
Fecha de Ingreso: septiembre-2010
Mensajes: 5
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: Ayuda con Graphics2D

Cita:
Iniciado por chuidiang Ver Mensaje
Hola:

Coge cualquier componente de Swing (JPanel, JLabel, ...) vale cualquiera que tengas instanciado y que debe ser en el que quieres pintar. Pídele el getGraphics() y te devolverá un Graphics. Ese Graphics es en realidad un Graphics2D, así que puedes hacer un "cast".

Código java:
Ver original
  1. Graphics2D g2d = (Graphics2D)unComponenteCualquiera.getGraphics();

Se bueno.
Muchas gracias por responder, te comento que hice lo que me aconsejas, pero me tira un graphics con valor null.

Lo que tengo es un chartPanel cp al que le tiro el metodo que me dijiste y me arroja como dije arriba null... estaré haciendo algo mal?
  #4 (permalink)  
Antiguo 04/09/2010, 21:23
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 20 años, 1 mes
Puntos: 454
Respuesta: Ayuda con Graphics2D

¿Qué es un chartPanel? ¿Está visible cuando le pides el Graphics?

Se bueno.
__________________
Apuntes Java
Wiki de Programación
  #5 (permalink)  
Antiguo 05/09/2010, 09:45
 
Fecha de Ingreso: septiembre-2010
Mensajes: 5
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: Ayuda con Graphics2D

jeje no estaba visible ese era el problema... un chartPanel es un tipo de JPanel que trae la libreria JFreeChart para poder agregarle las gráficas.

Muchas gracias por la respuesta, todavia estoy renegando pero creo que voy por buen camino

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:47.