EDUARDO WALMOTT (226 pts)

SASHA GUDEY (235 pts)

JOTA LAGO (40 pts)

KEN AWAMURA (130 pts)

NETO LEAL (116 pts)

FLASHGURU (155 pts)

GUILHERME SCHEIBE (49 pts)

ILVA RUDEV (90 pts)

MUZAK (45 pts)

PANDOGO (82 pts)

RICARDO TAKAHASHI (180 pts)

DEN IVANOV (260 pts)
Treinamento PontoFlash de Flash e ActionScript

Como carregar um swf numa cena ou num frame específico?

Gostaria de no mouse over sobre um texto, ele parasse, e no mouse out, prosseguisse de onde parou.

Um preload (carregador) para carregar swf, jpg, mp3, txt, asp, php e xml.

Qual é o comando para quando um HTML abrir redirecione para outro automaticamente?

Quero fazer uma função que duplique movieclips e defina suas propiedades.

Como faço para carregar vários filmes ao mesmo tempo?

Como movimentar na horizontal um objeto no mouse Over?

Como faço para carregar um movie clipe da cena 2 na cena1 do mesmo swf?

Quero criar uma animação em Flash que fique igual a uma galáxia.

Preciso mudar a direção de um movimento via actionscript.

Como fazer com que a rotação de um ponteiro demore 10 segundos?

Alguém tem um modelo de contrato para websites?

Quando transformo uma imagem em símbolo, preciso manter na biblioteca a imagem original e o símbolo?

Dicas para fazer um executável no flash.
Flash Turbine (integração Flash com PHP ou ASP)

Menu circular em 3D personalizável

Inserir dados no ASP via formulário no Flash.

Objeto Movieclip - Endereçamento (segunda parte)

Voltar à Timeline principal usando a função "Call"

Degradé com tons metálicos - Fireworks

Criando uma nova categoria (paleta) na Barra Insert do seu Dreamweaver.

Jogo da Forca

Objeto array - Classificar uma array (sorting) e e arrays multidimensionais

Objeto Movieclip - Endereçamento (primeira parte)

Enviando EMAIL com ASP, COLDFUSION E PHP

Ilustrando com effects e gradientes no Fireworks
Outlines

Scroll Whell

Lens flare

X Position

Corrente

Menu móvel

Hit test

Senha múltipla

Txt com preloader

Calendário

campo de texto no Down

Scrolling image
HOME | TUTORIAIS
3D Wireframe.
por Helen Triolo

(Nota: Para impedir o filme seja redesenhado a cada quadro e devorar assim todo o poder do seu processador, clique no botão de reset - isto fará com que o objeto volte para sua posição não girada e interromperá o re-desenho até queseja pressionado a tecla render ou um dos botões de rotação).

Classes para suportar desenho em 3D

Há algumas semanas atrás, dei uma olhada no artigo de Chad Corbin sobre como criar objetos 3D em tempo real em Flash, um exemplo atrativo para mim porque mostra como criar e fazer girar uma outra coisa além de um cubo. Cubos em 3D girando são legais em seu movimento, mas sempre considerei que seria mais interessante saber como criar alguma coisa curva e então ter esta coisa curva se movendo também. Desde que uma forma pode ser tão perfeitamente definida (como uma série de curvas bezier quadráticas e/ou segmentos de linha) e produzidas no Flash, pensei em como seria maravilhoso permitir ao usuário definir sua própria forma (uma série de curvas) e então estender esta forma para fazer um objeto em 3D completo, ou por extrusão, ou pela criação de um objeto radialmente simétrico (esta amostra é um simples exemplo desse último).

Assim, da maneira usual, despendi alguns dias desmembrando o código do Chad para descobrir o que ele fazia e então outros poucos dias recolocando-o de volta dentro de alguma coisa útil que eu pudesse usar genericamente em futuros projetos. No processo, coloquei alguns métodos de classe Math juntos para criar e manipular uma matriz transformadora, para encontrar um ponto ao longo de uma curva bezier, e executar multiplicações matriz-matriz e matriz-vetor (necessárias para projetar definições 3D em um espaço 2D).

Para configurar a cena

A classe controladora neste exemplo é Scene, que inclui propriedades para definir a linha de tempo na qual a cena será criada, um conjunto de formas que contêm movieclips de forma individualizada, e um fator de perspectiva. Após desenhar a forma padrão, a primeira coisa a ser feita no filme é definir um objeto Scene com esta instrução:

var wireFrame = new Scene(this.mcShow, 300, false, 17);

Isto cria um objeto chamado wireFrame do tipo Scene que irá residir na linha de tempo mcShow, tendo fator de perspectiva 300, sem eixos mostrados e que contém 17 formas. Cada uma dessas formas será representada por um movieclip, cuja referência é armazenada no conjunto aShapes (uma propriedade do objeto Scene). Estas formas incluem a forma curva original (definida pelo usuário, ou utilizando a forma padrão) situadas horizontalmente no plano xy, mais 7 duplicatas dela, dispostas à volta do eixo y em ângulos de 45 graus, mais 9 círculos horizontais ao longo do comprimento da figura.

Para definir a forma

Cada forma é definida por 4 pontos de ancoragem (pontos finais, mostrados como pontos no filme acima) e 3 pontos de controle (triângulos), todos os quais podem ser arrastados, dentro de certas limitações, pelo usuário. Para converter a forma selecionada pelo usuário em um objeto utilizável em Flash, empreguei uma estrutura usada para objetos 2D, que nada mais é do que um objeto com estas propriedades:

ptStart: um ponto 3d (com propriedades x, y, z) que mostra onde a forma começa

aCurves: um conjunto de objetos com propriedades p e c. Cada objeto no conjunto define uma curva, ou uma curva atual (com um ponto de controle) ou um segmento de linha (neste caso o ponto de controle é nulo). p é o 3º ponto final da curva, e c é o 3º ponto de controle se a curva tiver um.

isClosed: um valor booleano que diz se a curva é fechada ou não. Se fechada, um preenchimento será aplicado. Se aberta, a curva não terá preenchimento.

lineweight: espessura da linha (em pixels)

linecolour: cor da linha, se você for Britânico (Deixei os nomes das variáveis como os da amostra do Chad)

linealpha: transparência da linha

fillcolour: cor de preenchimento (não utilizada neste exemplo)

fillalpha: transparência do preenchimento

No filme, a curva que define a forma do objeto 3d é definida no movieclip mcDraw, e o objeto 3D wireframe é então criado no movieclip mcShow. Quando uma forma tiver sido definida e o usuário clicar Render, a função makeFrame é chamada. makeFrame traduz os pontos especificados no mcDraw em pontos utilizáveis dentro do mcShow, com instruções como:

var p0x = mcDraw.p0._x - mcDraw.p3._x;
var p0y = mcDraw.p0._y - offset;
var p1x = mcDraw.p1._x - mcDraw.p3._x;
var p1y = mcDraw.p1._y - offset;
...

var c1x = mcDraw.c1._x - mcDraw.p3._x;
var c1y = mcDraw.c1._y - offset;

onde p0x/p0y define o ponto de partida (no plano xy), p1x/p1y define o ponto final da primeira curva na forma, e c1x/c1y define o ponto de controle da primeira curva. Quando estes pontos foram estabelecidos, o método setShapeProps do wireFrame (um objeto do tipo Scene) é chamado. Isto passa todas as propriedades da forma (ponto de partida, conjunto de definições de curva, espessura da linha, etc) para o movieclip que as representarão (salvas em wireFrame.aShapes[0]):

// faz as linhas verticais: #1 position at z=0
wireFrame.setShapeProps(0, {x:p0x, y:p0y, z:0},
                    [ new Curve( {x:p1x, y:p1y, z:0}, {x:c1x, y:c1y, z:0} ),

                    new Curve( {x:p2x, y:p2y, z:0}, {x:c2x, y:c2y, z:0} ),
                    new Curve( {x:0, y:p3y, z:0}, {x:c3x, y:c3y, z:0} ) ],
                    false, 1, 0xffffff, 100, 0, 0);

Uma curva é um objeto da classe Curve, definido por dois pontos: o ponto final da curva, e seu ponto de controle. A instrução acima configura a primeira forma na cena (index=0) para iniciar a um ponto definido por p0x/p0y/0, então curve para um ponto em p1x/p1y/0 usando c1x/c1y/0 como controle, então curve para o ponto p2x/p2y/0 usando c2x/c2y/0 como controle, etc. O parâmetro "false" especifica que a curva não é fechada (e então nenhum preenchimento será aplicado), e os parâmetros remanescentes definem a linha (branca, amplitude do pixel 1, alfa -transparência- 100) e preenchimento (nenhum, mas colocamos cor e transparência de qualquer modo para mostrar onde um preenchimento deverá entrar).

Para duplicar a forma (segunda parte)

Tradução:
Sérgio Ramalho



Devido à reformulação implementada no site, pode ser que você encontre alguns links quebrados. Por favor, ajude-nos a corrigir eventuais problemas nos informando links quebrados
0 comentário