ene 11 2010
Algoritmo de la Amistad
Este es algoritmo para hacer amigos, sacado de The Big Bang Theory, alguien se anima a hacerlo en diagrama N-S?
ene 11 2010
Este es algoritmo para hacer amigos, sacado de The Big Bang Theory, alguien se anima a hacerlo en diagrama N-S?
dic 14 2009
//Posiciones de fondonieve
//Fondo nieve es un símbolo que marca el cuadro donde caerá nieve
var left:Number = this.fondonieve.x;
var right:Number = left+this.fondonieve.width;
var top:Number = this.fondonieve.y;
var bottom:Number = top+this.fondonieve.height;
//Número de copos de nieve
var total:Number;
total=250;
//Variable que almacenará los copos de nieve
var miArray:Array;
//Crear el fondo, en este caso el Sprite donde va la nieve
//y la máscara para que los copos de nieve no salgan de ahí
function createBackground():void {
//Crear el Sprite para la nieve
var ele:Sprite =new Sprite();
ele.name="ele";
//Posicionarlo en el mismo lugar que fondonieve
ele.x=this.fondonieve.x;
ele.y=this.fondonieve.y;
//Agregalo
addChild(ele)
//Crear el Sprite mask2 que usaremos de máscara
var mask2:Sprite =new Sprite();
mask2.name="mask2";
//Posicionarlo en el mismo lugar que fondonieve
mask2.x=this.fondonieve.x;
mask2.y=this.fondonieve.y;
//Agregalo
addChild(mask2)
//Dibujar un rectángulo con las medidas de fondonieve
var g2:Graphics = mask2.graphics;
g2.beginFill(0x000000, 100);
g2.moveTo(0, 0);
g2.lineTo(this.fondonieve.width, 0);
g2.lineTo(this.fondonieve.width, this.fondonieve.height);
g2.lineTo(0, this.fondonieve.height);
g2.lineTo(0, 0);
g2.endFill();
//Establecer a mask2 como la máscara de ele
ele.mask=mask2;
}
//Creación los copos de nieve
function createParticles() {
//Obtener el Sprite ele del escenario
var ele:Sprite;
ele=Sprite(getChildByName("ele"));
//Instanciar el arreglo
miArray=new Array();
//Usar un for para crear los copos de nieve
for (var i:Number = 0; i<total; i++) {
//Nieve es una clase-símbolo con la imagen de un copo
var clip3:Nieve=new Nieve();
ele.addChild(clip3);
//Crear un Object con los atributos necesarios: el movieclip del copo de nieve(Sprite), posiciones x - y, velocidad de movimiento x - y, rotación, dos contadores ct y c para realizar los cambios de dirección y hasta donde deben caer fl
var obj:Object = {mc:clip3, mn:1+Math.random()*2, x:Math.random()*this.fondonieve.width, y:-100, movx:Math.random()*2-1, movy:Math.random()*3+0.5, r:Math.random()*10-5, ct:Math.ceil(Math.random()*60), c:0, fl:this.fondonieve.height-Math.random()*3};
//Unicar el copo de nieve en las posiciones establecidas
clip3.x=obj.x;
clip3.y=obj.y;
//Agregar el obj al arreglo
miArray.push(obj);
//Deformar y girar el copo de nieve para que no sean todos iguales
clip3.scaleX= 2+Math.random()*3;
clip3.scaleY= 2+Math.random()*3;
clip3.rotation=Math.random()*360;
}
}
//Funcion que se va a ejecutar en cada evento EnterFrame
function myForEachFunction (obj:Object, index:int, array:Array):void
{
//obj es cada Object que se tiene en miArray
//Recordar que obj.mc contiene el MovieClip del copo de nieve
var mc:MovieClip = obj.mc;
obj.c++;
//Verificar si hay que cambiar la dirección
//Esto es cuando el contador c pasa a ct
if (obj.c>obj.ct) {
//Cambiar la dirección y reestablecer c y ct
obj.movx = Math.random()*5-2.5;
obj.c = 0;
obj.ct = Math.floor(Math.random()*60);
}
//Hacer los cambios en obj
obj.x += obj.movx;
obj.y += obj.movy+obj.mn
//Aplicar los cambios en el movieclip del copo de nieve
mc.rotation += obj.r;
mc.y = obj.y;
mc.x = obj.x;
//Verificar si el copo de nieve ha salido de los bordes derecho o izquierdo
//De ser así reaparece por el borde contrario
if (mc.xthis.fondonieve.width+5) {
obj.x = left-2;
}
//Verificar si el copo de nieve ya cayo completamente
if (mc.y>obj.fl) {
obj.fl=this.fondonieve.height-Math.random()*3;
//Reubicar el copo de nieve arriba
obj.y -=this.fondonieve.height;
obj.movy = Math.random()*3+0.5;
}
}
//Función a realizar en cada evento Enter Frame
function onLoop(evt:Event):void {
//Ejecutar para cada elemento de miArray la función myForEachFunction
miArray.forEach(myForEachFunction)
}
//Agregar un listener al evento Enter Frame y darle la función onLoop
this.addEventListener(Event.ENTER_FRAME, onLoop, false,0, true);
//Llamadas a los métodos para crear todo
createBackground()
createParticles()
Pueden modificar valores como la cantidad de copos de nieve o mejor aún pueden agregarle sus propias imagenes y ver cómo cae la nieve. El resultado es algo así:
Para ver la animación real ir a este link:
Pueden descargar el archivo .fla AQUI
By Diego • Internet, Programación • 2 • Tags: Action Script, AS3, flash
dic 9 2009

Xoo Image es un hosting frances que fácilmente se puede considerar “un misterio”, o también una bendición dependiendo de como lo mires. No pide registro, es rápido, es gratis, y te permite subir cualquier tipo de archivo. Descubrí esta página hace un tiempo cuando buscaba algún hosting para archivos swf ya que lo necesitaba para mi blog, traté con varios pero o no aceptaban este tipo de archivos o no se veía bien al querer usarlos.
Su página principal no nos dice casi nada, tan solo tiene un mensaje “Subir una imagen o fichero” (al menos eso creo porque está en francés) y luego dos botones, uno para elegir el archivo y el otro dice “Envoyer” (enviar segun WordReference). Una vez que has subido el archivo que quieres Xoo te brinda una url (bastante simple la forma en que te devuelve la url) con la que puede acceder al archivo que subiste.
nov 23 2009
Leer archivos pdf en un programa hecho en visual basic .net es muy sencillo. Yo lo usé para una pequeña aplicación en la que se puede agregar anexos a un expedientes (sistema de trámite documentario – ISG
), como una solicitud, una copia de dni, un recibo de pago o cualquier documento (el cual se tiene en formato pdf obviamente).
A continuación pongo unos pasos que pueden seguir para lograrlo:
* Hay que decir primero que deben tener instalado el lector de pdfs Foxit Reader, que es el lector que voy a usar en este caso; también se puede usar el Adobe Reader pero tube unos problemas para hacer que funcione así que mejor somos Foxit =D.
Lo primero es crear un proyecto en Visual Studio (yo tengo el 2005) y agregar un Form.
Ir a la pestaña “Componentes COM” y poner un check en “FoxitReaderOCX Control”
Tendremos un nuevo elemento al final del cuadro de herramientas. Lo agregamos al Form y va a tener la forma de un panel blanco, extiendanlo según el tamaño que quieran.
Además vamos a agregar un OpenFileDialog, al que llamaremos “OpenFileDialog1″ (me olvidé de ponerle un mejor nombre antes de capturar la pantalla) y un botón “btnBuscar”
Ahora hacemos doble click en el botón “btnBuscar” y ponemos el siguiente código a ejecutarse cuandos e haga click en dicho botón
Y listo, ya tenemos un lector de pdfs en nuestro programa en visual basic .net
By Diego • Programación, Software • 3
nov 17 2009
Hola, soy Diego y este es mi primer post para Infomatrix. Bueno, hace tiempo venía leyendo este blog y ahora tengo la oportunidad de escribir aquí =D.
Para empezar prefiero ir a lo fácil y poner un vídeo que vi hace poco. Este vídeo me pareció bastante interesante, se trata sobre los cambios que se vienen dando en el mundo y los cambios que van a venir, sobre todo en el mundo de la tecnología.

Últimos comentarios