Fale Julio! tu disse: "ainda existem algumas letras brancas.", na verdade, é só a letra C q aparece branca! Existe outro detalhe, as imagem caem, mas depois de uns 10 caracters da lista vertical, ela some, na verdade, desde o primeiro caracter que cai, ele vai perdendo o brilho!! daria de fazer isso em shell script? tipo, ir perdendo a nitidez até o proximo caracter desaparecer? é assim que aparece no filme! E, eu estava assistindo ao filme, e, primeiramente, ca a primeira linha de códigos sozinha, e só depois caem umas 13 de uma vez!
2009/9/18 Julio C. Neves <[email protected]> > > > Fala Wellton > No 1o. matrix que postei na lista, disse que eu que tinha feito. Me > enganei! > Aquele matrix foi um trabalho colaborativo que pintou na lista, mas no qual > tive grande colaboração, mesmo não tendo visto o filme. > Depois algumas pessoas me pediram que fizesse algumas modificações e tb > tive > opotunidade de ver o filme (acho que foi em DVD, pois já havia saído dos > cinemas há muito tempo) e foi então que fiz o outro matrix o qual mencionei > no e-mail anterior. > > Pois é, este 2o Matrix que desenvolvi a partir do 1o, foi o que vc > descobriu > na internet e postou, só que inseriram algumas coisas que estavam dando > erros. > > Dei uma revisada rápida que o deixou funcional, mas ainda não está legal, > pois ele só deveria começar a sobrescrever qdo a tela estivesse cheia e > ainda existem algumas letras brancas. > > Vou postá-lo assim mesmo para desafiar vcs a melhorar o código. > > $ cat matrix2.sh > #!/bin/bash > > trap "echo -e '\033[m0';clear;tput cnorm;exit" 2 > > clear > prepara () { > tput civis > > > > Chars="abcdefghijklmnopqrstuvxywzabcdefghijklmnopqrstuvxywz012345678...@#$%¨&*()_-+=^~{}[];:?" > while true; do > lin=0 > lin1=$((RANDOM%$(tput lines))) > # [ xxx -eq $(($(tput cols)-2)) ] && unset Cols > while true; do > COL=$((RANDOM%$(tput cols))) > [ "${Cols[$COL]}" ] && continue > Cols[$COL]=1 > break > done > while true; do > COL2=$((RANDOM%$(tput cols))) > [ "${Cols[$COL2]}" ] && continue > Cols[$COL2]=1 > break > done > COR=$(tput sgr0; tput setf 2) > COR2=$(tput bold; tput setf 2) > coluna1 > done > } > > coluna1 () { > while [ $lin -lt $(tput lines) ]; do > Char=$(echo $Chars | cut -c$((RANDOM%86+1))) > for i in `seq 1 3`;do > Char1=$(echo $Chars | cut -c$i) > tput cup $lin $COL; echo -en "\e[37;1m$Char1" > done > tput cup $lin $COL; echo -en "$COR$Char" > let lin++ > coluna2 > done > prepara > } > > coluna2 () { > while [ $lin1 -lt $(tput lines) ]; do > Char=$(echo $Chars | cut -c$((RANDOM%86+1))) > for i in `seq 1 3`;do > Char1=$(echo $Chars | cut -c$i) > tput cup $lin1 $COL2; echo -en "\e[37;1m$Char1" > done > tput cup $lin1 $COL2; echo -en "$COR2$Char" > let lin1++ > coluna1 > done > [ $lin1 -eq $(tput lines) ] && lin1=$((RANDOM%$(tput lines))); > COL2=$((RANDOM%$(tput cols)));coluna2 > # coluna1 > } > > prepara > > Abraços, > Julio > Cursos de Shell e Zenity em 2 fins de semana? > - Em SP ligue (11) 2125-4747; > - Em DF ligue (61) 3223-3000; > - No RJ ligue (21) 2561-0867; > - Turmas fechadas em outras cidades ligue (21) 8112-9988. > > 2009/9/18 Wellton Costa de Oliveira > <[email protected]<wco.linux%40gmail.com> > > > > > > > > > > Tava pesquisando na internet, e achei esse aqui! há um problema aí, fala > > que > > Tem muitos']' > > > > > > #!/bin/bash > > > > trap "echo -e '\033[m0';clear;setterm -cursor on;exit" 2 > > > > clear > > > > prepara () { > > > > setterm -cursor off > > > > Chars="abcdefghijklmnopqrstuvxywzABCDEFGHIJKLMNOPQRSTUVXYWZ01234567890! > > @#$%¨ > > > > &*()_-+=^~{}[];:?" > > > > while true; do > > > > lin=0 > > > > lin1=$((RANDOM%$(tput lines))) > > > > [ [EMAIL PROTECTED] -eq $(($(tput cols)-2)) ] && unset Cols > > > > while true; do > > > > COL=$((RANDOM%$(tput cols))) > > > > COL2=$((RANDOM%$(tput cols))) > > > > [ "${Cols[$COL]}" ] && continue > > > > Cols[$COL]=1 > > > > break > > > > done > > > > COR="\e[32;1m" > > > > COR2="\e[32;1m" > > > > coluna1 > > > > done > > > > } > > > > coluna1 () { while [ $lin -lt $(tput lines) ]; do > > > > Char=$(echo $Chars | cut -c$((RANDOM%86+1))) > > > > for i in `seq 1 3`;do > > > > Char1=$(echo $Chars | cut -c$i);sleep 0.000001 > > > > tput cup $lin $COL; echo -en "\e[37;1m$Char1" > > > > done > > > > tput cup $lin $COL; echo -en "$COR$Char";sleep 0.0001 > > > > let lin++ > > > > coluna2 > > > > done > > > > prepara > > > > } > > > > coluna2 () { while [ $lin1 -lt $(tput lines) ]; do > > > > Char=$(echo $Chars | cut -c$((RANDOM%86+1))) > > > > for i in `seq 1 3`;do > > > > Char1=$(echo $Chars | cut -c$i);sleep 0.000001 > > > > tput cup $lin1 $COL2; echo -en "\e[37;1m$Char1" > > > > done > > > > tput cup $lin1 $COL2; echo -en "$COR2$Char";sleep 0.0001 > > > > let lin1++ > > > > coluna1 > > > > done > > > > [ $lin1 -eq $(tput lines) ] && lin1=$((RANDOM%$(tput lines))); > > COL2=$((RANDOM%$(tput cols)));coluna2 > > > > # coluna1 > > > > } > > > > prepara > > > > 2009/9/18 Jeferson Santos > > <[email protected]<jefersondossantos%40gmail.com> > <jefersondossantos%40gmail.com> > > > > > > > > > > > > > > no colors, seria legal se desse pra colocar apenas as nuances de verde, > > pra > > > ficar igual a matrx mesmo... > > > > > > 2009/9/17 Julio C. Neves <[email protected]<julio.neves%40gmail.com> > <julio.neves%40gmail.com><julio.neves% > > 40gmail.com>> > > > > > > > > > > > > > > > > > > > > > Pessoal, > > > > muito se falou em Matrix e fui no histórico da lista procurar um que > > fiz. > > > > Achei esse aqui, mas acho que já fiz outro melhor, só que não achei. > > > > > > > > #!/bin/bash > > > > > > > > trap "echo -e '\033[m0';clear;setterm -cursor on;exit" 2 > > > > > > > > setterm -cursor off > > > > > > > > > > > > > > > > > > Chars="abcdefghijklmnopqrstuvxywzabcdefghijklmnopqrstuvxywz012345678...@#$%¨&*()_-+=^~{}[];:?" > > > > clear > > > > while true; do > > > > lin=0 > > > > [ ${#co...@]} -eq $(($(tput cols)-2)) ] && unset Cols > > > > while true; do > > > > COL=$((RANDOM%$(tput cols))) > > > > [ "${Cols[$COL]}" ] && continue > > > > Cols[$COL]=1 > > > > break > > > > done > > > > COR="\e[3$((RANDOM%7+1));1m" > > > > while [ $lin -lt $(tput lines) ]; do > > > > Char=$(echo $Chars | cut -c$((RANDOM%86+1))) > > > > for i in `seq 1 5`;do > > > > Char1=$(echo $Chars | cut -c$i);sleep 0.000001 > > > > tput cup $lin $COL; echo -en "\e[37;1m$Char1" > > > > done > > > > tput cup $lin $COL; echo -en "$COR$Char";sleep 0.0001 > > > > let lin++ > > > > done > > > > done > > > > > > > > Abraços, > > > > Julio > > > > Cursos de Shell e Zenity em 2 fins de semana? > > > > - Em SP ligue (11) 2125-4747; > > > > - Em DF ligue (61) 3223-3000; > > > > - No RJ ligue (21) 2561-0867; > > > > - Turmas fechadas em outras cidades ligue (21) 8112-9988. > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > > > > > > > > > > > > -- > > > Abraços, > > > Jeferson Santos > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > > > > > > > -- > > Wellton Costa de Oliveira > > Mestrando > > Universidade Tecnológica Federal do Paraná - UTFPR > > Programa de Pós-graduação em Engenharia Elétrica e Informática Industrial > - > > CPGEI > > Laboratório de Imagem e Instrumentação Eletrônica - LABIEM > > http://www.labiem.cpgei.cefetpr.br > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > -- Wellton Costa de Oliveira Mestrando Universidade Tecnológica Federal do Paraná - UTFPR Programa de Pós-graduação em Engenharia Elétrica e Informática Industrial - CPGEI Laboratório de Imagem e Instrumentação Eletrônica - LABIEM http://www.labiem.cpgei.cefetpr.br [As partes desta mensagem que não continham texto foram removidas]
