miércoles, 28 de enero de 2009

Poner una imágen como textura en Java 3D

Como siempre programando en Java3D, cree un box, pero me dije, ¿Porqué el box no puede tener como textura una foto o imágen que desee?.

Terminando de cuestionarme, investigue por internet como colocar las texturas y por fin llegue a mi respuesta. Se deben crear ciertos objetos que serán parámetros para las figuras geométricas.

  • Crear un objeto para el tipo de textura:
  • int paratextura = Primitive.GENERATE_NORMALS + Primitive.GENERATE_TEXTURE_COORDS;
  • /*Nota: Esta sentencia pide ciertas librerías, las cuales en Netbeans 5 ó superior indica cuales son las que deben declararse o incluirse.*/
  • Crear objetos de Carga de textura,textura y apariencia:
  • TextureLoader loader=null;
  • Texture texture=null;
  • Appearance ap=null;
  • Inicializar con parámetros:
  • loader = new TextureLoader("pared.jpg","INTENSITY", new Container());
  • /*Nota: "pared.jpg" es la imagen que deseamos sea la textura para nuestra figura geométrica.*/
  • texture = loader.getTexture();
  • ap = new Appearance();
  • ap.setTexture(texture);
  • Ahora damos la textura a la figura geométricacon los parámetros ya creados
  • Box cabeza=new Box(1.2f,1.25f,1.25f,paratextura,ap);
  • /*Nota: Ahora ingresamos el primer parámetro de paratextura, y el otro porsupuesto de apariencia, y listo.*/

Y podemos ver los resultados,  para una pared que en si es un box:

Saludos....