Universidade do Vale do Paraíba Colégio Técnico Antônio Teixeira Fernandes Disciplina...
Transcript of Universidade do Vale do Paraíba Colégio Técnico Antônio Teixeira Fernandes Disciplina...
Universidade do Vale do ParaíbaColégio Técnico Antônio Teixeira Fernandes
Disciplina Programação Orientada a objetos II.
Material IV-BimestreCriação de clips em movimentos
reproduzindo sons, controle de sons Uso de Bibliotecas, Criando um filme.
Detecção de colisões,Criação de Aplicações.
e-mail : http://www1.univap.br/~wagner
Prof. Responsáveis
Wagner Santos C. de Jesus
2
Criação de Movimentos
Filme(forma) Evento
Programa(ActionScript)
Animação
3
gotoAndPlay(): Método que dispara uma seqüência de quadros
Ao criar quadros para uma animação basta usar o método gotoAndPlay() em um evento para disparar uma animação.
Exemplo :
on (press) {
_root.gotoAndPlay (1);
}
4
Animação por Interpolação
Animação por interpolação em recurso do Que permite que uma figura possa ser posicionada em um local do quadro sem a necessidade ter que mudar de quadro cada posição do objeto será gravada em novo quadrado dando a simulação do movimento.
5
Exemplo: Interpolador movimento
Basta selecionar a opção marca e realizar deslocamento da figura
6
Interpoladores
Quadro1 Quadro2 Quadro3
Valores(quadro por segundo)
7
Passos para criação de animação por Interpolação
1. Selecionar o objeto (figura) que será interpolada.
2. Selecionar ponto preto na linha do tempo.3. Na barra de propriedades escolha interpolação
de movimentos.4. Em seguida selecione a quantidade de
quadros que deseja criar.5. Selecione Inserir Quadros chave.6. Translade a figura para o ponto desejado.7. Selecione CTRL+<ENTER> (Veja a
animação).
8
Movendo quadros
prevFrame() : Move para quadro anterior.
nextFrame() : Move para o próximo quadro.
9
Criando um filme
O Flash permite que todas as aplicações de animação confeccionadas possam ser transformadas em filmes; que poderão ser reproduzidos por programas como mediaplayer ou lidos por programas escritos em linguagens de programação como Delphi, C++ e visualBasic e outras.
10
Criando um filme
Selecione a opção indicada
11
Determine o nome do filme a ser criado e seu formato
Avi, mov ou outros
Selecione o botão salvar e aguarde.
12
Feitas as operações anteriores
Atributos do filme normalmente podemos deixar o padrão, caso contrario altere e selecione o botão ok.
13
Essa opção permite determinar operações de compactação de vídeo ou não
Selecione o botão ok em seguida o vídeo será criado.
14
Colocando som em uma aplicação
Classe : Sound() permita reprodução de sons pelo AS.
Exemplo da criação de um objeto Sound.
Meu_som = new Sound();
15
Sound (Reprodução de Sons)
Sound() Biblioteca Arquivo(s)
mp3
wav
......
volume Estéreo
Reprodução
Start()
16
Método : attachSound()
Determina o arquivo de som da biblioteca que será reproduzido.
Exemplo :
<objSom>.attachSound(String);
17
Método: setVolume()
Determina a altura do volume a ser reproduzido podendo ser usado um valor de 0 a n.
Exemplo :
<objSom>.setVolume(<expN>);
18
Método:setPan()
Determina em caso de estéreo se som será emitido no canal esquerdo ou direito, (-100) faz com o som seja emitido no canal esquerdo e (100) emite som apenas o canal direito caso deseje emitir no dois canais basta colocar o parâmetro (0).
Exemplo : <objSom>.setPan(<expN>);
19
Método : stop()
Para a reprodução do som.
Exemplo : <objSom>.stop();
20
Exemplo : Sons
on (press) {
som = new Sound();
som.attachSound("musica");
som.setVolume(200);
//som.setPan(100);
som.start();
}
21
Método : fscommand()
Permite que o filme Flash se comunique com o Flash Player ou com o programa que hospeda o Flash Player, como um navegador da Web. Você também pode usar a ação fscommand para passar mensagens para o Macromedia Director ou para o Visual Basic, Visual C++ e outros programas que possam hospedar controles ActiveX.
22
Comandos Parâmetros Objetos
quit Nenhum Fecha o projeto
fullscreen true ou false A especificação de true define o Flash Player no modo de tela cheia. A especificação de false faz o exibidor voltar à exibição de menu normal.
showmenu true ou false A especificação de true ativa o conjunto completo de itens do menu de contexto. A especificação de false torna esmaecidos todos os itens do menu de contexto, exceto Sobre o Flash Player.
exec Caminho para o aplicativo Executa um aplicativo no projetor.
23
Movimento de figuras Transformação Geométrica
Transformação vem a ser o conceito de transladar, atribuir uma escala ou rotação de uma figura.
24
Par ordenado (_x, _y) para tratar as coordenadas
_x (Coluna)
_y(Linha)
25
Exemplo : Translação (_x,_y)
on (press) {
_root["quadrado"]._x+=10 ;
}
+-on (press) {
_root["quadrado"]._y+=10 ;
}
+
-
26
Exemplo : Escala
Propriedades:
_xscale : altera a largura do objeto de um filme.
_yscale : altera a altura do objeto de um filme.
27
Exemplo de escala
x (Largura)
y (Altura)
28
Exemplo prático de escala
on (press) {
_root["triangulo"]._xscale+= 100;
_root["triangulo"]._yscale+= 100;
}
29
Exemplo de rotação
Determina a rotação para um figura usando valores positivos para sentido horário e negativo para sentido anti-horário.
Exemplo : _rotation – valor deverá ser em graus.
30
Exemplo de rotação
+-
31
Exemplo prático de rotação
on (press) {
_root["triangulo"]._rotation += 45;
}
32
Arrastando uma figura com movimentos do mouse
Objeto (figura)
startDrag()
Ativa mouse
Movimentos
stopDrag()
33
Métodos : startDrag()startDrag(<string>,<booleano>);
String – Determina o nome do clipe que será movimentado em caso de ser o próprio não é necessário informar esse parâmetro.
boolean – Determina o local liberado para arrastar uma figura. Dever ser usado true.
34
Métodos : stopDrag()
stopDrag() – Interrompe o recurso de arrastar cancelando o método startDrag().
35
Exemplo prático :
on (press) {
startDrag("",true);
}
on (release) {
stopDrag();
}
36
Operador this
O operador this assim como o new são operadores reservados do AS, o this permite realizar a referência quando estamos falando do próprio objeto.
Exemplo : _root["quadro2"]._xscale = 200; this._xscale = 200;
Obs: Não precisa fazer referência ao nome do objeto inteiro.
37
Propriedade : _xmouse e _ymouse
Essas propriedades permitem capturar a posição das coordenadas (x,y); coluna e linha onde o mouse foi passado.
Exemplo:
trace(_root._xmouse);
trace(_root._ymouse);
38
Arrastando uma figura usando o evento onClipEvent()
onClipEvent (enterFrame) {if(drag) {
this._x = _root._xmouse;this._y = _root._ymouse;
}}
39
Usando variável drag.
on (press) {
drag = true; // pressionar
}
on (release) {
drag = false; // Soltar
}
40
Detecção de colisões
Pelas leis da física dois corpos não podem ocupar o mesmo lugar em um espaço; quando esse fenômeno eventualmente ocorre chamamos colisão. Para simularmos computacionalmente a colisão de dois objetos devemos calcular se suas posições em algum ponto são iguais p(x,y) ou os pontos das extremidades dos objeto.
41
Para realizarmos o teste de uma colisão em AS, devemos usar o método hitTest.
Sintaxe :
this.hitTest(x,y,booleano);
x – posição horizontal y – posição vertical
booleano – formato exato do objeto (true) ou a área retangular do mesmo(false).
42
Diagrama de colisão
Objeto hitTest (posição do mouse)
this.hitTest (objeto)
43
Exemplo teste colisão com mouse
onClipEvent (enterFrame) {
if(this.hitTest(_root._xmouse,_root._ymouse,true)) {
this._x = int(Math.random()*550);this._y = int(Math.random()*400);
}
}
44
Exemplo teste colisão entre objetos
onClipEvent (enterFrame) {
if(_root["q2"].hitTest(_root["q1"])) {
_root.gotoAndPlay(2);
}else
_root["q1"]._x+=5;
}