jueves, 18 de abril de 2013

MOVIMIENTO


Movimiento de gráficos mediante botones en Java

Se debe partir de un panel (jPanel) integrado en una ventana (jFrame) tal como se ha explicado en el artículo Gráficos en Java.

Esta explicación se basa en un ejemplo que realiza el movimiento de una bola utilizando cuatro botones para subir, bajar y desplazar a la derecha e izquierda. Descarga del ejemplo completo para NetBeans.

Hay declarados dos atributos en la clase Tablero (jPanel) con las coordenadas donde se debe mostrar la bola, que inicialmente están inicializados para que se muestre en la parte central del tablero. A través de la actualización de los valores de esos atributos se realizará el movimiento de la bola.

public class Tablero extends javax.swing.JPanel {
    private int posX = 45;
    private int posY = 45;

La bola se dibujará en el método paint utilizando las coordenadas anteriores, con un tamaño 10.

    public void paint(Graphics g)
    {
        super.paint(g);
        g.fillOval(posX, posY, 1010);
    }

En el códido del panel se han definido una serie de métodos que realizan las operaciones de movimiento deseado. En cada movimiento se modifica el atributo correspondiente para cambiar la posición de la bola y se hace la llamada al métodorepaint para que se ejecute de nuevo el código del paint visto antes y que se encarga de mostrar la bola.

    public void moverArriba()
    {
        posY--;
        repaint();
    }

    public void moverAbajo()
    {
        posY++;
        repaint();
    }

    public void moverDerecha()
    {
        posX++;
        repaint();
    }

    public void moverIzquierda()
    {
        posX--;
        repaint();
    }

Los botones que permiten al usuario realizar el movimiento se han incluido en la ventana, fuera del panel.


A cada botón se le ha asignado el código necesario para que realice la llamada al método que corresponda del panel para hacer el movimiento de la bola.

    private void botonArribaActionPerformed(java.awt.event.ActionEvent evt)
    {                                              
        tablero1.moverArriba();
    }                                          

    private void botonAbajoActionPerformed(java.awt.event.ActionEvent evt)
    {                                              
        tablero1.moverAbajo();
    }                                        

    private void botonIzquierdaActionPerformed(java.awt.event.ActionEvent evt)
    {                                                  
        tablero1.moverIzquierda();
    }                                            

    private void botonDerechaActionPerformed(java.awt.event.ActionEvent evt)
    {                                                
        tablero1.moverDerecha();
    }

Hay que observar el nombre que ha recibido el panel al integrarlo en la ventana. En este caso le ha dado el nombre tablero1. Este nombre puede verse en las propiedades al seleccionar el panel.


miércoles, 10 de abril de 2013

ARREGLOS EN JAVA

Los arreglos se pueden definir como objetos en los que podemos guardar mas de una variable, es decir, al tener un unico arreglo, este puede guardar multiples variables de acuerdo a su tamaño o capacidad, es importante recordar que las variables guardadas deben ser del mismo tipo, por ejemplo: Si tenemos un arreglo de tipo Numerico que puede almacenar 10 variables, solo podra almacenar 10 numeros diferentes, no otras variables como caracteres o Strings.
Existen 2 tipos de arreglos, los unidimensionales, y los multidimensionales(generalmente 2 dimensiones y se les denomina matrices), en esta lección veremos como declarar y utilizar los arreglos unidimensionales, estos son mas sencillos y faciles de comprender, y pueden servirnos para muchas aplicaciones.

Declaración:

La estructura de declaración de un arreglo es la siguiente:
tipo_dedato [] nombre_variable;  //tambien puede declararse “tipo_dedato nombre_variable[];”
ejemplos:
1String array[]; //donde array es un arreglo que guardara variables tipo Strings
2double array2[]; //donde array2 es un arreglo que guardara variabels tipo double
3int [] array3;   //donde array3 es un arreglo que guardara variables tipo int(numericas)
Definir tamaño de arreglos:
Para asignar a un arreglo su tamaño o capacidad, se hace de la siguiente forma:

arreglo = new tipo_dedato[capacidad];
ejemplo:
1array = new String[10];   //el arreglo array guardara hasta un maximo de 10 variables de tipo String
Para realizar una declaración de un arreglo y definir su tamaño en una misma linea se puede usar la siguiente estructura:
1String array[] = new String[10];  //se declara un arreglo y se asigna su tamaño en una misma linea

Asignación de valores a elementos del array

Una vez se tiene declarado un arreglo, y al mismo se le ha asignado un tamaño o capacidad, podemos accesar a los datos dentro del mismo y asignarle valores. Para hacer esto es necesario proceder de la siguiente forma:
arreglo[indicador]=valor;
ejemplos:
1array[0] = "Ejemplo"//aqui se asigna el valor "Ejemplo" a un arreglo de String en su primera posicion
2array2[3] = 5;      //se asigna un valor de 5 al 4to elemento de un arreglo numerico;
Es importante recordar que para accesar a los datos guardados en un arreglo se utilizan indicadores iniciando desde el “0″, si un arreglo tiene un tamaño de 10 variables, entonces se puede accesar a sus elementos con los indicadores del 0 al 9.

martes, 9 de abril de 2013

domingo, 7 de abril de 2013

GEOTECNIA


ELEMENTOS BÁSICOS DE LA GEOTECNIA
La geotecnia es un conjunto de técnicas que permiten conocer el terreno para usarlo como elemento de construcción.
El terreno se usa como:
+ elemento de construcción: caminos, diques
+ elemento para asentar las cimentaciones
+ causante de acciones
La geotecnia tiene una base científica, la mecánica de suelos (ciencia sobre la que se soporta la geotecnia)
  • Fases del suelo
    • Gaseosa: aire y gases que puede haber en los huecos del terreno
    • Líquida: agua y sales disueltas
    • Sólida: partículas minerales. Parte más importante. Es muy heterogénea
    Lo que más nos interesa es la fase sólida. La fase líquida va a influir en la disposición de las partículas. La fase gaseosa nos interesa para hacerla lo menor posible. Para hablar de estas fases usamos el peso específico (kg/dm3, T/m3, g/cm3)
  • Normas NLT
  • Para conocer el suelo se realizan ensayos normativizados en las normas NLT (desarrolladas por el CEDEX). Estas normas están en vigor hasta que se establezcan las normas UNE (unificación de las Normas españolas).
    Las NLT son copiadas de las normas americanas y alemanas.
    Las normas NLT se establecen con 3 dígitos, que indican el ensayo, y una barra, que corresponde al año donde se estableció, o se hizo, la última revisión, de la norma. Ej: NLT-103/89.
  • Técnicas de muestreo
  • Hay dos modos de coger muestras:
    • inalteradas: se conserva la estructura del suelo
    • alteradas: se usa más porque interesa la textura, no la estructura. Son las que usamos.
    Se usa la norma NLT-101/72 (“Preparación de muestras de suelos”)
  • Granulometría. Análisis granulométrico
  • Es el ensayo más importante. Se trata de determinar la textura del suelo, es decir, el %, en peso, que hay de cada una de las partículas de diferente tamaño que conforman el suelo.
    Define el ensayo la norma NLT-104/91.
  • clasificación del suelo por el tamaño de sus partículas
  • Con él podemos denominar el tipo de suelo.
    Ej: si la mayor cantidad de partículas son arcillas hablamos de suelo arcilloso.
  • Tamices
  • Se usan tamices para saber la cantidad de partículas con cierto diámetro.
    Se han normalizado una serie de tamices, caracterizados por la abertura de su malla.
    Hay dos series:
    • gruesa
    • fina
    Los limos y las arcillas no se pueden clasificar por tamices.
    Se usan las normas de la UNE (española) y ASTM (americana).
    La norma americana usa pulgadas para la serie gruesa y números para la fina (número de mallas que entran en una pulgada). La norma española usa mm.
    Los tamices más finos son los de 0,04 mm y hay partículas más finas que eso, por lo que hay que usar otros ensayos para clasificar esas partículas.
  • Curva granulométrica
  • Para hacer el ensayo se cogen 7-8 tamices y se colocan en columna, ordenándolos de mayor a menor abertura.
    En la serie fina se suelen coger el nº4, el nº10, el nº40 y el nº200.
    Se echa la muestra y se agita, quedando en cada tamiz cierta cantidad de suelo, que está comprendida entre el tamiz anterior y este. Una vez hecho esto el análisis se presenta como una gráfica.
    La gráfica se hace en función del tamaño de las partículas (eje horizontal) y el %, del total de suelo, que pasa por cada tamiz eje vertical).
    La escala del %, de material que pasa, es normal y la del tamaño de partículas es logarítmica. La gráfica obtenida es semilogarítmica.
    Si la gráfica es muy tendida, fundamentalmente, hay partículas finas.
    Los ensayos no suelen ir más allá del tamiz 0,08.
    Suelo A: Tiene fundamentalmente elementos gruesos. Por el tamiz de 5 mm no pasa nada.
    Suelo C: Por el tamiz 0,06 pasa el 72% del total. Es un suelo muy arcilloso.
    Suelo B: bien graduado. Tiene tamaños de gran número de partículas.
  • Coeficientes
  • Coeficiente de uniformidad: relación entre el tamaño máximo de partículas que pasan en el 60%, con respecto al tamaño por el que pasa el 10%.
    Dx: apertura de malla por cuyo tamiz pasa X%.
    D60: pasa 60%.
    D10: pasa 10%.
    Indica la uniformidad de las partículas
    Cuándo hay un coeficiente menor que 5 la granulometría es uniforme. Si es menor de 2,5 la granulometría es muy uniforme.
    Coeficiente de curvatura
    Coeficiente entre 1 - 3: suelo bien graduado
    Suelo grava con coeficiente mayor que 4: suelo bien graduado
    Suelo arena con coeficiente mayor que 6: suelo bien graduado
  • Límites de Atterberg
  • Sirven para conocer el estado físico del suelo
  • Estado de coherencia/consistencia
  • La forma de un suelo depende de la cantidad de agua que hay en él (al faltar agua el suelo disminuye su tamaño).
    Atterberg cogió un suelo y lo secó totalmente observando que el suelo estaba duro. Él fue echando agua y llegó a un punto en el que el suelo comenzó a expandirse, pudiéndose desmenuzar (estado semisólido). Siguió aumentando la humedad y el suelo llegó a ser moldeable (estado plástico). Al seguir echando agua se convirtió en viscoso y podía fluir (estado líquido). Nos interesan suelos duros o blandos, pero no viscosos.
    Fijó los puntos donde variaba el estado, que son los límites de Atterberg.
    • Límite de retracción: De sólido a semisólido
    • Límite plástico: de semisólido a plástico
    • Límite líquido: de plástico a líquido
    Los límites vienen en % de agua, respecto al peso del suelo.

    jueves, 4 de abril de 2013

    BOTONES

    LOS BOTONES QUE SE HABÍAN PROPUESTO, AUNQUE PRESENTO INCONVENIENTES CON LA ASIGNACIÓN DE EVENTOS