Como gerar números aletórios em actionscript 3

16 05 2009

function random(v:int):int{
return Math.random() * v;
}

Exemplo: random(99);





Display List

30 01 2009

Display List sao os objetos visuais como botoes, videos, textfields, movieclips e outros.
A display list basicamente eh dividida em duas partes Display Object e Display Object Container. Sei que parece meio complicado, mais nao eh esse bixo de sete cabecas que parece, na realidade ficou bem melhor na minha opiniao.

Display Object
Sao os objetos de apresentacao que nao podem receber child(addChild) como textfields, shapes, botoes.

Display Object Container
Sao os objetos que podem conter outros objetos sendo estes iguais a si mesmos ou nao, como por exemplo o movieclip que pode ter botoes, textfields e ate mesmo outro(s) movieclips em si mesmo.

Abracos





Actionscript 3 – Functions

18 07 2008

Salve pessoal,

hoje vamos ver funções em actionscript 3, também serve para o actionscript 2 XD.

Bem, o importante é entedermos para o que serve uma uma função ou function. Uma é criada para facilitar a nossa vida e também para a reutilização de código. O conceito de função é conhecido como modularização de código, ou seja, são blocos de códigos utilizados somente quando necessário “chamados somente quando necessários”.

Imagine que você precise criar uma função que calcule a hipotenusa, bem, mais o que é necessário para o cálculo de uma hipotenusa, resumindo precisamos de duas medidas de um triângulo (ou catetos).

formúla para o cálculo: c2 = a2 + b2

no caso do flash a fórmula seria: hipotenusa = Math.sqrt( Math.pow(a, 2) + Math.pow(b, 2));

Importante:

  • Math.sqrt() – sqrt() é um método da classe matemática ‘Math’ que nos retorna a raiz quadrada.
  • Math.pow(base, expoente) -pow() é o método que nos retorna a base elevada ao expoente baseexpoente.

Bacana agora já sabemos o que devemos fazer, mais antes é necessário conhecer a sintaxe para a criação de uma função.

Sintaxe:


function Nome(parametros:Tipo):Retorno{

}

Essa é a sintaxe básica de uma função, agora vamos começar a criar a nossa função que deverá conhecer as duas medidas dos catetos e nos retornar com isso a hipotenusa.


function Hipotenusa(p_a:Number, p_b:Number):Number{
var hipotenusa:Number;
hipotenusa = Math.sqrt(Math.pow(p_a, 2) + Math.pow(p_b, 2));
return hipotenusa; /* aqui vimos que temos a keyword return, ou seja, é aqui que retornamos o resultado para onde a função foi chamada. */
}
// chamda da função
var res:Number = Hipotenusa(12, 30); // chamda da função com a passagem de parâmetros, o retorno desta função é armazenado na variável res.
// imprimindo o resultado
trace(res);

É isso aí galera, espero que tenham gostado e entendido.

qualquer dúvida postem aí.

abs





Voltando…

18 07 2008

Fala galerinha e leitores do blog.

Sei que faz um bom tempo que não passo por aqui, mais tenho ótimas notícias a todos estarei voltando a escrever pelo menos mais um artigo por semana e vou dar uma melhorada no blog falando sobre AIR, Flex, Remoting (AMF), FMS e por aí vai, AS2 e AS3 também.

Espero que gostem =)

Abs





Actionscript 3 – Webcam

25 02 2008

Fala aí pessoal,

Hoje vamos ver um pouco sobre o trabalho com webcam no actionscript 3. Na realidade não mudou quase nada =)

A idéia foi criar um container no stage, na realidade esse container é um empty movieclip. Nele será adicionado o nosso vídeo. Nesse post iremos criar uma classe para este lab.

 Primeiro vamos criar a nossa classe:

package labs.camera{
 // imports das classes necessárias ---------------------------------------------------------------//
 import flash.media.Camera;
  import flash.media.Video;
 import flash.display.MovieClip;

public class ClsWebcam_v2{
  // atributos ---------------------------------------------------------------------------------//
  // privados
  private var video:Video;

// métodos -----------------------------------------------------------------------------------//
  /**
  * construtor
  * parâmetros: pContainer - movieclip onde será adicionado o video
  * pLargura - largura do vídeo
  * pAltura - altura do vídeo
  */
  public function ClsWebcam_v2(pContainer:MovieClip, pLargura:Number, pAltura:Number){
  // variável local
  var camera:Camera = Camera.getCamera();
  // cria o video
  video = new Video(pLargura, pAltura);
  // adicionando a camera
  video.attachCamera(camera);
  // adicionando o video ao container (movieclip empty no stage)
  pContainer.addChild(video);
  }
 }
}

Após criar a classe, crie um novo arquivo para as3, crie um movie clip empty chamado mcVideo, que também será a sua instância. Também será necessário criar um nova camada chamada “as” para nosso código.


// importando a classe
import labs.camera.ClsWebcam_v2;
// instancia um objeto para classe
var objCam:ClsWebcam_v2 = new ClsWebcam_v2(mcVideo, 320, 240);

Vejam o resultado.

Abs





Actionscript 3 – Enter Frame (onEnterFrame)

23 02 2008

E aí leitores do meu blog, tudo bem com vocês!!!
Como o título do post já diz, vamos ver com funciona o evento onEnterFrame no actionscript 3. É bem simples.

O primeiro passo é criar um novo documento no seu cs3. Renomeie a sua camada para as ou actions ;)
E digite esse código abaixo.


// criando o event listener
addEventListener(Event.ENTER_FRAME, fncOnEnterFrame);

function fncOnEnterFrame(evt:Event):void{
trace("onEnterFrame -> " + evt.type);
// removendo o listener
removeEventListener(Event.ENTER_FRAME, fncOnEnterFrame);
}

O mais importante é saber onde aplicar o evento, que geralmente é utilizado para animações como movimentação e outros.

Até a próxima, abs.





Actionscript 3 – Drag (startDrag e stopDrag)

20 02 2008

Nesse post vamos ver o nosso famoso arrasta e solta (drag), então vamos ao que interessa.
Bem o primeiro passo é criar um movie clip no stage com instância “mcMc”. Tendo este passo feito vamos ao código:


// habilitando o cursor como modo botão para o movie clip
mcMc.buttonMode = true;

// adicionando os event listeners
mcMc.addEventListener(MouseEvent.MOUSE_DOWN,fncStartDrag);
mcMc.addEventListener(MouseEvent.MOUSE_UP,fncStopDrag);

// funções
function fncStartDrag(evt:Event):void{
mcMc.startDrag();
}

function fncStopDrag(evt:Event):void{
mcMc.stopDrag();
}

Simples né =).





PHP – Frameworks

18 02 2008

É isso aí hoje vamos falar um pouco sobre frameworks php.

Tenho visto muito em vários Blogs sobre frameworks, qual o melhor, qual o pior e outras coisas. Bem o interessante é ver o qual você se adpata melhor, nível de documentação, suporte caso precise, fóruns. No mais, os mais comentados são codeIgniter, cakephp e o zendframework.

Para mim adaptação foi o codeIgniter, por possuir documentação em português ganhei algum tempo no aprendizado e além disso já desenvolvi alguns projetos na Bonopepper com meu brother Rafael Kendy que também gostou muito do framework.
Mais tenho um amigo de minas, que é consultor cake php, o Túlio – tuliofaria.net que gosta muito do cake o que me trouxe a pesquisar mais no uso desta framework. Para a framework da zend também vi muitos tutorias, artigos e um deles me trouxe um certo interesse também que o site do Felipe Tonello que descobri através do Google.
Daqui alguns dias estarei aprofundando mais nesse tema e criarei alguns posts sobre o codeIgniter aqui também.

Abs





Actionscript 3 – MouseEvent

18 02 2008

Esse é o segundo post de hoje, como estou com um pouco mais de tempo sobrando, resolvi tirar a dúvida de alguns alunos da Atterweb sobre os antigos eventos onRelease, onPress, onRollOver onRollOut.
O primeiro passo deste post é criar um botão”Button” no stage(palco) nesse post sua instância será “btBotao”, também será necessário criar um TextField com a Text Toll no palco, esse text field será dinâmico e sua instância “txt”. Esse text field irá receber um texto quando um dos nossos eventos ocorrer.
Outro fator importante é ter conhecimento da classe MouseEvent “import flash.events.MouseEvent”, para isso deem uma olhada no help (F1). Quase me esqueci dos eventListeners “ouvintes” acho que muitos já conhecem.

Agora vamos para o código:

// Adicionando os ouvintes -> addEventListener(Tipo.Evento, funcao)
btBotao.addEventListener(MouseEvent.MOUSE_DOWN, fncOnPress);
btBotao.addEventListener(MouseEvent.MOUSE_UP, fncOnRelease);
btBotao.addEventListener(MouseEvent.MOUSE_OVER, fncOnRollOver);
btBotao.addEventListener(MouseEvent.MOUSE_OUT, fncOnRollOut);

// Funções
function fncOnPress(evt:Event):void{
txt.text = "OnPress";
}

function fncOnRelease(evt:Event):void{
txt.text = "OnRelease";
}

function fncOnRollOver(evt:Event):void{
txt.text = "OnRollOver";
}

function fncOnRollOut(evt:Event):void{
txt.text = "OnRollOut";
}

Bem como podem ver as funções são chamadas como os nossos antigos eventos do AS2. Abs T+





Actionscript 3 – Aplicando CSS em TextField

18 02 2008

Fala aí galera,

Faz alguns dias que não escrevo aqui. Mais vou me dedicar mais ao Blog.

Bem hoje vamos ver como aplicar CSS a TextField =)

Agora vamos ao que interessa [Code], é bem simples.


// criando o objeto da classe de css
var meuCss:StyleSheet = new StyleSheet();
//o parseCSS é um método público da classe StyleSheet, ele recebe uma String,
// ou seja nossa CSS, ele simplesmente carrega o CSS.
meuCss.parseCSS("h1{font-family:Verdana;font-size:14px;color:#333CC}");
// criando o objeto da classe textfield
var meuTF:TextField = new TextField();
// adicionando o style ao textfield
meuTF.styleSheet = meuCss;
// ajustando o autosize
meuTF.autoSize = "left";
//tirando a seleção do texto
meuTF.selectable = false;
// adicionando nosso contéudo html ao textfield
meuTF.htmlText = "[h1]Thiago Augusto M. Coelho[/h1]"; // substituir por [ = < e outro por ] = >
// adicionando nosso textfield ao stage
addChild(meuTF);

Agora é ver o resultado no flash! Abs e até a próxima.