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

 

 


Tema destacado: Sigue las noticias más importantes de seguridad informática en el Twitter! de elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Manejo de hilos
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Manejo de hilos  (Leído 5,311 veces)
Antoniio

Desconectado Desconectado

Mensajes: 121



Ver Perfil
Manejo de hilos
« en: 5 Mayo 2016, 03:38 am »

Hola, buenas. Estoy intentanto hacer una versión de la "Alfombra de Sierpinski":     
https://es.wikipedia.org/wiki/Alfombra_de_Sierpinski

El problema es que se me solicita que el programa maneje un hilo para cada cuadrado que se va a rellenar. Así, cuando se deban rellenar sub-cuadrados, se deben crear nuevos hilos.
Cuál es la manera de hacer eso??,  espero alguien pueda responder, dejo el programa aquí abajo.

https://mega.nz/#!aVhDkISI!oMxyyf_qaqi_3QE8pHrpdo8hnof1Wy8rX15g2Zbc6e8

Saludos !!


En línea

+ 1 Oculto(s)

Desconectado Desconectado

Mensajes: 298


un defecto se puede convertir en una virtud


Ver Perfil WWW
Re: Manejo de hilos
« Respuesta #1 en: 6 Mayo 2016, 16:24 pm »

tu mismo lo dijiste tienes que crear por cada cuadrado un hilo


pero tambien se puede hacer sin hilos


En línea

Antoniio

Desconectado Desconectado

Mensajes: 121



Ver Perfil
Re: Manejo de hilos
« Respuesta #2 en: 6 Mayo 2016, 23:30 pm »

Ese es el problema, no fui la última semana de clase y no tengo idea de cómo trabajar con hilos, investigué en internet pero no puedo hacer que funcione usando hilos para cada cuadrado @.@
En línea

+ 1 Oculto(s)

Desconectado Desconectado

Mensajes: 298


un defecto se puede convertir en una virtud


Ver Perfil WWW
Re: Manejo de hilos
« Respuesta #3 en: 7 Mayo 2016, 21:44 pm »

puedes postear tu codigo asi podre ayudarte
En línea

Antoniio

Desconectado Desconectado

Mensajes: 121



Ver Perfil
Re: Manejo de hilos
« Respuesta #4 en: 7 Mayo 2016, 22:17 pm »

Este es:

Código:
import java.awt.*;import java.awt.event.ActionEvent;
import javax.swing.*;
public class SierpinskiCarpet extends JPanel {
    private final int dim = 513;
    private final int margin = 20;
    private int limit = dim;
    public SierpinskiCarpet() {
        setPreferredSize(new Dimension(dim + 2 * margin, dim + 2 * margin));
        setBackground(Color.white);
        setForeground(Color.black);
        new Timer(2000, (ActionEvent e) -> {
            limit /= 3;
            if (limit <= 3)
                limit = dim;
            repaint();
        }).start();
    }
    void drawCarpet(Graphics2D g, int x, int y, int size) {
        if (size < limit)
            return;
        size /= 3;
        for (int i = 0; i < 9; i++) {
            if (i == 4) {
                g.fillRect(x + size, y + size, size, size);
            } else {
                drawCarpet(g, x + (i % 3) * size, y + (i / 3) * size, size);
            }
        }
    }
    @Override
    public void paintComponent(Graphics gg) {
        super.paintComponent(gg);
        Graphics2D g = (Graphics2D) gg;
        g.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
                RenderingHints.VALUE_ANTIALIAS_ON);
        g.translate(margin, margin);
        drawCarpet(g, 0, 0, dim);
    }
    public static void main(String[] args) {
        SwingUtilities.invokeLater(() -> {
            JFrame f = new JFrame();
            f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            f.setTitle("Alfombra de Sierpinski");
            f.setResizable(false);
            f.add(new SierpinskiCarpet(), BorderLayout.CENTER);
            f.pack();
            f.setLocationRelativeTo(null);
            f.setVisible(true);
        });
    }
}
En línea

+ 1 Oculto(s)

Desconectado Desconectado

Mensajes: 298


un defecto se puede convertir en una virtud


Ver Perfil WWW
Re: Manejo de hilos
« Respuesta #5 en: 7 Mayo 2016, 22:59 pm »

lo que deberias hacer es:
1.- crear una clase cuadrado
2.- en un metodo con un for crear varios objetos de esa clase cuadrado y almacenarlos en un arreglo
3.- dar start a todos los objetos del arreglo para que empieces a moverse o rellanarse lo que tu quieras...

saludos 
« Última modificación: 7 Mayo 2016, 23:02 pm por qwery.azc » En línea

Antoniio

Desconectado Desconectado

Mensajes: 121



Ver Perfil
Re: Manejo de hilos
« Respuesta #6 en: 8 Mayo 2016, 08:38 am »

Mmmm no comprendo la lógica :S
En línea

Antoniio

Desconectado Desconectado

Mensajes: 121



Ver Perfil
Re: Manejo de hilos
« Respuesta #7 en: 9 Mayo 2016, 17:45 pm »

Bueno, ya lo he resuelto :P

Gracias ;D
En línea

+ 1 Oculto(s)

Desconectado Desconectado

Mensajes: 298


un defecto se puede convertir en una virtud


Ver Perfil WWW
Re: Manejo de hilos
« Respuesta #8 en: 9 Mayo 2016, 22:48 pm »

no tuve mucho tiempo para poder ayudarte de la manera correcta


hiciste algo parecido a lo que te mencione?
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Tutos: obtener datos y manejo de windows con c#... tuto_1: manejo de procesos
Scripting
tongoxcore 2 9,411 Último mensaje 21 Julio 2008, 23:44 pm
por Zaraki_lkenpachi
Hilos en C
Programación C/C++
mapers 2 6,338 Último mensaje 13 Junio 2011, 10:21 am
por mapers
crear una biblioteca de manejo de Hilos
Programación C/C++
lama 1 2,685 Último mensaje 25 Abril 2012, 01:45 am
por david_BS
Hilos C « 1 2 »
Programación C/C++
<<<-Basura->>> 10 6,086 Último mensaje 27 Febrero 2013, 17:53 pm
por <<<-Basura->>>
manejo de controles en los hilos background worker
.NET (C#, VB.NET, ASP)
d91 1 2,863 Último mensaje 8 Enero 2016, 15:43 pm
por Eleкtro
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines