elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Tutorial básico de Quickjs


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Dibujar en java!!!!
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Dibujar en java!!!!  (Leído 10,153 veces)
danielo-

Desconectado Desconectado

Mensajes: 218


:)


Ver Perfil
Dibujar en java!!!!
« en: 12 Noviembre 2009, 05:46 am »

Hola de nuevo!!!! :o
Ya como es costumbre vuelvo a preguntarles para poder realizar un trabajo escolar, la chamba no se acaba...la diversión si... Pero lo bueno es que me divierto programando, jajaj...bueno, pues mi tarea es la siguiente, realizar un frame, que debe dibujar, algo, es algo asi como los protectores de pantalla de windows, esos que se dibujan lineas y en determinado tiempo cambian su trayectoria, pues algo asi debo crear, claro utilizando metodos java...en el frame se deben dibujar lineas...y controlado con un temporizador cambiar su trayectoria, lo del temporizador tengo la idea para poder hacerlo, pero lo del dibujo no, me imagino q se trata de especificar coordenadas y que se vallan dibujado una linea, pero pues la verdad no se como...ayudenme porfa!!!!
....gracias de antemano  ;-)


En línea

Leyer


Desconectado Desconectado

Mensajes: 786


leyer@elhacker.net


Ver Perfil WWW
Re: Dibujar en java!!!!
« Respuesta #1 en: 12 Noviembre 2009, 06:07 am »

ps no manejo mucho el dubujar pero espero que esto te sirva http://sunsite.dcc.uchile.cl/java/docs/JavaTut/Cap5/grafico.html.

Saludos y suerte.


En línea

danielo-

Desconectado Desconectado

Mensajes: 218


:)


Ver Perfil
Re: Dibujar en java!!!!
« Respuesta #2 en: 12 Noviembre 2009, 17:41 pm »

  :D gracias...aunque keria algo un poco mas concreto,  :P , creo que debi mencionar que ya se manejar los frame, crear paneles y utilizar el metodo paint de la clase Graphics, eso creo que todos lo saben, pero pues la duda era que si podrian indicarme la manera de diubujar, al menos un pequeño ejemplo para poder crearlo, un pequeño metodo que dibuje lineas basado en coordenadas o algo asi...solo para guiarme  ;D...
En línea

1mpuls0


Desconectado Desconectado

Mensajes: 1.186


Ver Perfil
Re: Dibujar en java!!!!
« Respuesta #3 en: 13 Noviembre 2009, 04:02 am »

Interesante...  :rolleyes:

La verdad nunca me habia puesto a pensar en hace mi propio protector de pantalla  :xD
Pero es buena idea

Hace tiempo mire esta pagina

http://www.eigelb.at/HP/Links/SpecialEffects/Grappa/BlueRandom/index.html

Está programado en Java

La verdad no se si exista el código libre, pero igual te podria ayudar a darte una idea, habia decompilado las clases  y si mal no recuerdo usaba Graphics

Saludos
En línea

abc
Leyer


Desconectado Desconectado

Mensajes: 786


leyer@elhacker.net


Ver Perfil WWW
Re: Dibujar en java!!!!
« Respuesta #4 en: 13 Noviembre 2009, 04:11 am »

ufff  :D imaginarme el code me da dolor de cabeza :)

Saludos,.
En línea

Leyer


Desconectado Desconectado

Mensajes: 786


leyer@elhacker.net


Ver Perfil WWW
Re: Dibujar en java!!!!
« Respuesta #5 en: 13 Noviembre 2009, 05:26 am »

este si te ayudaria bastante..

Código
  1. import java.awt.*;
  2. import java.awt.event.*;
  3. import java.awt.geom.*;
  4. import java.awt.image.BufferedImage;
  5. import javax.swing.*;
  6. import javax.swing.event.*;
  7.  
  8. public class FreeHand extends JPanel
  9. {
  10.    /**
  11. *
  12. */
  13. private static final long serialVersionUID = 1L;
  14.    Color color;
  15.    Stroke stroke;
  16.  
  17.    public FreeHand()
  18.    {
  19.        color = Color.blue;
  20.        stroke = new BasicStroke(1f, BasicStroke.CAP_BUTT,
  21.                                     BasicStroke.JOIN_MITER);
  22.    }
  23.  
  24.    protected void paintComponent(Graphics g)
  25.    {
  26.        super.paintComponent(g);
  27.        if(image == null)
  28.            initImage();
  29.        g.drawImage(image, 0, 0, this);
  30.    }
  31.  
  32.    public void draw(Point start, Point end)
  33.    {
  34.        Graphics2D g2 = image.createGraphics();
  35.        g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
  36.                            RenderingHints.VALUE_ANTIALIAS_ON);
  37.        g2.setPaint(color);
  38.        g2.setStroke(stroke);
  39.        g2.draw(new Line2D.Double(start, end));
  40.        g2.dispose();
  41.        repaint();
  42.    }
  43.  
  44.    private void clearImage()
  45.    {
  46.        Graphics g = image.getGraphics();
  47.        g.setColor(getBackground());
  48.        g.fillRect(0, 0, image.getWidth(), image.getHeight());
  49.        g.dispose();
  50.        repaint();
  51.    }
  52.  
  53.    private void initImage()
  54.    {
  55.        int w = getWidth();
  56.        int h = getHeight();
  57.        image = new BufferedImage(w, h, BufferedImage.TYPE_INT_RGB);
  58.        Graphics2D g2 = image.createGraphics();
  59.        g2.setPaint(getBackground());
  60.        g2.fillRect(0,0,w,h);
  61.        g2.dispose();
  62.    }
  63.  
  64.    private JPanel getColorPanel()
  65.    {
  66.        Color[] colors = {
  67.            Color.red, Color.green.darker(), Color.blue, Color.orange
  68.        };
  69.        ActionListener l = new ActionListener()
  70.        {
  71.            public void actionPerformed(ActionEvent e)
  72.            {
  73.                JButton button = (JButton)e.getSource();
  74.                color = button.getBackground();
  75.            }
  76.        };
  77.        JPanel panel = new JPanel(new GridLayout(1,0));
  78.        for(int j = 0; j < colors.length; j++)
  79.        {
  80.            JButton button = new JButton("  ");
  81.            button.setFocusPainted(false);
  82.            button.setBackground(colors[j]);
  83.            button.addActionListener(l);
  84.            panel.add(button);
  85.        }
  86.        return panel;
  87.    }
  88.  
  89.    private JPanel getControlPanel()
  90.    {
  91.        JButton clear = new JButton("clear");
  92.        clear.addActionListener(new ActionListener()
  93.        {
  94.            public void actionPerformed(ActionEvent e)
  95.            {
  96.                clearImage();
  97.            }
  98.        });
  99.        final JSlider slider = new JSlider(JSlider.HORIZONTAL, 1, 6, 1);
  100.        slider.addChangeListener(new ChangeListener()
  101.        {
  102.            public void stateChanged(ChangeEvent e)
  103.            {
  104.                float value = ((Integer)slider.getValue()).floatValue();
  105.                stroke = new BasicStroke(value, BasicStroke.CAP_BUTT,
  106.                                                BasicStroke.JOIN_MITER);
  107.            }
  108.        });
  109.        JPanel panel = new JPanel();
  110.        panel.add(new JLabel("stroke"));
  111.        panel.add(slider);
  112.        panel.add(clear);
  113.        return panel;
  114.    }
  115.  
  116.    public static void main(String[] args)
  117.    {
  118.        FreeHand freeHand = new FreeHand();
  119.        DrawingListener listener = new DrawingListener(freeHand);
  120.        freeHand.addMouseListener(listener);
  121.        freeHand.addMouseMotionListener(listener);
  122.        JFrame f = new JFrame();
  123.        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  124.        f.getContentPane().add(freeHand.getColorPanel(), "North");
  125.        f.getContentPane().add(freeHand);
  126.        f.getContentPane().add(freeHand.getControlPanel(), "South");
  127.        f.setSize(400,400);
  128.        f.setLocation(200,200);
  129.        f.setVisible(true);
  130.    }
  131. }
  132.  
  133. class DrawingListener extends MouseInputAdapter
  134. {
  135.    FreeHand freeHand;
  136.    Point start;
  137.  
  138.    public DrawingListener(FreeHand fh)
  139.    {
  140.        this.freeHand = fh;
  141.    }
  142.  
  143.    public void mousePressed(MouseEvent e)
  144.    {
  145.        start = e.getPoint();
  146.    }
  147.  
  148.    public void mouseDragged(MouseEvent e)
  149.    {
  150.        Point p = e.getPoint();
  151.        freeHand.draw(start, p);
  152.        start = p;
  153.    }
  154. }
En línea

danielo-

Desconectado Desconectado

Mensajes: 218


:)


Ver Perfil
Re: Dibujar en java!!!!
« Respuesta #6 en: 16 Noviembre 2009, 23:40 pm »

  fracias por las aportaciones...ahora estoy checando el codigo y las painas... si termino mi tarea les paso el codigo para que vean como quedo...gracias!!
En línea

danielo-

Desconectado Desconectado

Mensajes: 218


:)


Ver Perfil
Re: Aqui les dejo el salvapantalla!!!!
« Respuesta #7 en: 20 Noviembre 2009, 10:54 am »

import java.net.URL;

import java.awt.Toolkit;

import java.awt.Graphics;

import java.awt.Graphics2D;

import java.awt.BasicStroke;

import java.awt.Color;

import java.awt.Image;

import javax.swing.JFrame;

import java.awt.event.WindowAdapter;

import java.awt.event.WindowEvent;

import java.util.Random;



import java.awt.Rectangle;

import java.awt.GraphicsEnvironment;

import java.awt.GraphicsDevice;

import java.awt.event.MouseListener;

import java.awt.event.MouseMotionListener;

import java.awt.event.MouseEvent;

import javax.swing.*;



import java.awt.Robot;

import java.awt.Dimension;

import java.awt.Toolkit;

import java.awt.Image;



class Borrado extends JFrame implements MouseListener, MouseMotionListener{

   

   Image img;

   Random r;

   

   GraphicsDevice grafica;   

   int Alto,Ancho;   

   

   int xi=200,yi=200,xf,yf;

   

   Toolkit toolkit;

   Dimension dq;

   Robot rob;                     

//   Image img;

   

   public Borrado(){      

      try{

         toolkit = Toolkit.getDefaultToolkit();

         dq = toolkit.getScreenSize();

         rob = new Robot();                     

         img = rob.createScreenCapture(new Rectangle(dq));

      }

      catch(Exception e){}

      

      Toolkit tk = Toolkit.getDefaultToolkit();

      Dimension d = tk.getScreenSize();

      Alto = d.height;

      Ancho = d.width;



      setUndecorated(false);

      

      addMouseMotionListener(this);

      grafica= GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice();

      grafica.setFullScreenWindow(this);

      

      setTitle("Borrado");



      setVisible(true);

      addWindowListener(wa);

      r=new Random();

      

      refrescar();

   }

   

   public void mouseClicked( MouseEvent evento ){}

   public void mousePressed( MouseEvent evento ){}

   public void mouseReleased( MouseEvent evento ){}

   public void mouseEntered( MouseEvent evento ){}

   public void mouseExited( MouseEvent evento ){}

   public void mouseDragged( MouseEvent evento ){}

   

   public void mouseMoved( MouseEvent evento ){

      System.exit(1);

   }



   

   WindowAdapter wa=new WindowAdapter(){

      public void windowClosing(WindowEvent we){

         System.exit(0);

      }

   };

   

   public void paint(Graphics g){

      setBackground(Color.black);

      g.drawImage(img, 0, 0, this);

   }

   

   public void refrescar(){

      try{

         Thread.sleep(1000); // Pausa de un segundo

         Graphics g=getGraphics();

         int ro=0;

         //while(ro<800){

            Graphics2D g2 = (Graphics2D) g;

            g2.setStroke(new BasicStroke(15.0f));      

            g.setColor( Color.BLACK);         

         

            Thread.sleep(r.nextInt(300));

            //xf=r.nextInt(1000);

            //xf=r.nextInt(1000);

            xf=300;

            yf=100;

            

            System.out.println("xi= "+xi);

            System.out.println("yi= "+yi);

            

            //g.drawArc( xi,yi,xf,yf,r.nextInt(180),r.nextInt(180));   

            g.drawArc( 100,100,300,300,180,180);

            g.drawArc( 380,90,300,400,160,210);

            //g.drawArc( 100,100,300,300,100,100);

            Thread.sleep(300);

            g2.setStroke(new BasicStroke(15.0f));      

            g.setColor( Color.RED);         

            //g.drawArc( xi,yi,xf,yf,90,300);

            //g.drawArc( 100,100,300,300,100,100);

            //g.drawLine( 0,0,300,126);

            g.drawLine( 0,0,250,100);

            

            //xi=xf;

            //yi=yf;

            ro++;

            System.out.println("xf= " +xf);

            System.out.println("yf= "+yf);

         //}

      }

      catch (Exception e){

            System.out.println("MMMM");

      }

      //repaint();

      refrescar();

   }

   public static void main(String arg[]){

      Borrado b=new Borrado();

   }

}
« Última modificación: 21 Noviembre 2009, 22:39 pm por danyelk_6u5 » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Dibujar forma en C#
.NET (C#, VB.NET, ASP)
TomaSs 1 2,697 Último mensaje 3 Octubre 2012, 16:00 pm
por seba123neo
Dibujar Arbol
Programación C/C++
SantyXDz 3 3,393 Último mensaje 5 Noviembre 2013, 08:03 am
por edr89
Dibujar con putchxy
Programación C/C++
julianbesso1 2 2,426 Último mensaje 24 Agosto 2014, 01:57 am
por julianbesso1
dibujar y borrar
Desarrollo Web
bengy 5 3,386 Último mensaje 21 Abril 2015, 01:35 am
por EFEX
Java Dibujar Engrane
Java
Darkshadic 1 2,467 Último mensaje 21 Mayo 2017, 10:15 am
por 3n31ch
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines