begin process at 2012 05 26 10:08:56
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Flash / Flash MX

 > 

Multimédia

 > 

Animation

 > 

Aide d'un polaroid en AS3


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Aide d'un polaroid en AS3

vendredi 11 décembre 2009 à 14:24:47 | Aide d'un polaroid en AS3

zuscrave

Voila j'ai une animation qui affiche des polaroids aléatoires avec fonction zoom.


Pouvez vous me traduire en urgence svp ce code en AS3 svp:


////////////////////////////////
// Project: Polaroid Gallery (v 1.01)
// Author: Christopher Einarsrud
// Edited: 16/07/2007
// This work is licensed under a Creative Commons Attribution-NonCommercial 3.0 License.
// For more information, read http://creativecommons.org/licenses/by-nc/3.0/
////////////////////////////////

////////////////////////////////
// <imports>
import flash.filters.*;
import flash.display.BitmapData;
// </imports>
////////////////////////////////

////////////////////////////////
// <vars>
var photoHolder = new Array();
var skalerTempo = 3;
var thumbStr = 30;
var stageHeight = Stage.height;
var stageWidth = Stage.width;
var fotoSkygge:DropShadowFilter = new DropShadowFilter(0, 45, 0x333333, 0.8, 10, 10, 2, 3);
var glow:GlowFilter = new GlowFilter(0x333333,100,150,150,1.5,3,true,true);
var bakgrunnPattern:BitmapData = BitmapData.loadBitmap("bakgrunn");
// </vars>
////////////////////////////////

////////////////////////////////
// <init>
_root.createEmptyMovieClip("bakgrunsHolder",_root.getNextHighestDepth());
_root.createEmptyMovieClip("sideGlow", _root.getNextHighestDepth());
// </init>
////////////////////////////////

////////////////////////////////
// <generer fotovariabler>
flickrTAGS = (flickrTAGS) ? flickrTAGS:"";
xmlURL = (xmlURL) ? xmlURL:"photos.xml";
xmlURL = (flickrID) ? "http://api.flickr.com/services/feeds/photos_public.gne?id="+flickrID+"&tags="+flickrTAGS+"&tagmode=any&format=rss_200":xmlURL;
////
// Flickr feed
////
var loadet_xml:XML = new XML();
loadet_xml.ignoreWhite = true;
loadet_xml.onLoad = function (success){
var loop = (flickrID) ? loadet_xml.firstChild.firstChild.childNodes:loadet_xml.firstChild.childNodes;
var num = 0;
if (flickrID) {
for (var i = 0;i < loop.length;i++) {
if (loop[i].nodeName == "item") {
var loop2 = loop[i].childNodes;
photoHolder[num] = new Array();
for (var i2 = 0;i2 < loop2.length;i2++) {
if (loop2[i2].nodeName == "media:content") {
photoHolder[num].url = loop2[i2].attributes.url;
}
else if (loop2[i2].nodeName == "title") {
photoHolder[num].desc = loop2[i2].firstChild;
}
}
num++;
}
}
}
else {
for (i=0;i < loop.length;i++) {
photoHolder[i] = loop[i].attributes;
}
}
delete loadet_xml;
byggBilder();
}
loadet_xml.load(xmlURL);
// </generer fotovariabler>
////////////////////////////////

////////////////////////////////
// <bygg polaroids>
function byggBilder() {
for (i=0;i < photoHolder.length;i++) {
mc = _root.attachMovie("fotoHolder","fotoHolder"+i,_root.getNextHighestDepth(),{_xscale:thumbStr, _yscale:thumbStr,_rotation:30 - 60*Math.random()});
mc.txt.text = photoHolder[i].desc;
if (Math.round(Math.random()*1) == 1) {
// tilfeldig y akse
mc._y = (Stage.height*Math.random())+(mc._height*2);
if (Math.round(Math.random()*1) == 1) mc._x = Stage.width+(mc._width*2);
else mc._x = -(mc._width*2);
}
else {
// tilfeldig x akse
mc._x = (Stage.width*Math.random())+(mc._width*2);
if (Math.round(Math.random()*1) == 1) mc._y = Stage.height+(mc._height*2);
else mc._y = -(mc._height*2);
}
mc.newX = Math.round((mc._width/2) + (Stage.width-mc._width)*Math.random());
mc.newY = Math.round((mc._height/2) + (Stage.height-mc._height)*Math.random());
mc.oldRotation = mc._rotation;
mc.oldX = mc.newX;
mc.oldY = mc.newY;
mc.startX = mc._x;
mc.startY = mc._y;
mc.oldHeight = mc._yscale;
mc.oldWidth = mc._xscale;
mc.id = i;
mc.onEnterFrame = fotoAnimer;
mc.filters = [fotoSkygge];
mc.dragPol.onPress = drag;
mc.dragPol.onReleaseOutside = mc.dragPol.onRelease = stopdrag;
photoHolder[i].mc = mc;
lastBilde(mc,photoHolder[i].url);
delete mc;
}
antallBilder = i;
}
function lastBilde(mc, url) {
mc.createEmptyMovieClip("tmp",mc.getNextHighestDepth());
lastBildeH.loadClip(url, (flickrID) ? mc.bildeHolder:mc.tmp);
}
var lastBildeH:MovieClipLoader = new MovieClipLoader();
var lastBildeHL:Object = new Object();
lastBildeHL.onLoadStart = function(mc:MovieClip):Void {
mc._parent.attachMovie('preLoader','preloader',mc._parent.getNextHighestDepth());
loaderFarge = new Color(mc._parent.preloader);
mc._parent.preloader.loadtxt.text = "";
loaderFarge.setRGB(0xFFFFFF);
mc._parent.preloader._y = -10;
mc._visible = false;
}
lastBildeHL.onLoadProgress = function(mc:MovieClip, numBytesLoaded:Number, numBytesTotal:Number):Void {
var numPercentLoaded:Number = numBytesLoaded / numBytesTotal * 100;
mc._parent.preloader.percent._width = numPercentLoaded;
}
lastBildeHL.onLoadInit = function(mc:MovieClip) {
mc._parent.preloader.removeMovieClip();
var mc2 = mc._parent.bildeHolder;
if (!flickrID) {
var myBitmap = new BitmapData(mc._width, mc._height,true,0xFFFFFF);
myBitmap.draw(mc);
mc._parent.bildeHolder.attachBitmap(myBitmap, mc._parent.bildeHolder.getNextHighestDepth(), "auto", true);
mc.removeMovieClip();
}

/////
// scale and place image
////

var wP = 468/mc2._width;
var hP = 450/mc2._height;
mc2._width *= (wP < hP) ? hP:wP;
mc2._height *= (wP < hP) ? hP:wP;
mc2._x += -((mc2._width-468)/2);
mc2._y += -((mc2._height-450)/2);
mc2._visible = true;
}
lastBildeH.addListener(lastBildeHL);
// </bygg polaroids>
////////////////////////////////

////////////////////////////////
// <hjelpeboks>
_root.attachMovie("help","help",_root.getNextHighestDepth());
help._x = 42;
help._y = 48;
help.filters = [fotoSkygge];
// </hjelpeboks>
////////////////////////////////

function rensFilm() {
for (i=0;i<antallBilder;i++) {
mc = eval("fotoHolder"+i);
mc.oldY = mc.startY;
mc.oldX = mc.startX;
mc.onEnterFrame = fotoAnimerTilbake;
removeMovieClip(navigering);
}
}
function fotoAnimer() {
this._y += (this.newY-this._y)/skalerTempo;
this._x += (this.newX-this._x)/skalerTempo;
if (Math.round(this._y) == this.newY) delete this.onEnterFrame;
}
function fotoAnimerTilbake() {
this._y += (this.oldY-this._y)/skalerTempo;
this._x += (this.oldX-this._x)/skalerTempo;
this._xscale += (this.oldWidth-this._xscale)/skalerTempo;
this._yscale += (this.oldHeight-this._yscale)/skalerTempo;
this._rotation += (this.oldRotation-this._rotation)/skalerTempo;
this.nesteKnapp._alpha += (0-this.nesteKnapp._alpha)/skalerTempo;
this.forrigeKnapp._alpha += (0-this.forrigeKnapp._alpha)/skalerTempo;
if ((Math.round(this._y) == this.oldY) && (Math.round(this._x) == this.oldX)) {
delete this.nesteKnapp.onRelease;
delete this.forrigeKnapp.onRelease;
delete this.onEnterFrame;
}
}
function fotoSkaler() {
this._xscale += (100-this._xscale)/skalerTempo;
this._yscale += (100-this._yscale)/skalerTempo;
this._rotation += (this.newRotation-this._rotation)/skalerTempo;
this._x += ((Stage.width/2)-this._x)/skalerTempo;
this._y += ((Stage.height/2)-this._y)/skalerTempo;
this.nesteKnapp._alpha += (60-this.nesteKnapp._alpha)/skalerTempo;
this.forrigeKnapp._alpha += (60-this.forrigeKnapp._alpha)/skalerTempo;
if (Math.round(this._width) == this.newWidth) {
delete this.onEnterFrame;
}
}
function drag() {
if ((fotoSomBlirVist != this._parent) && (!this._parent.onEnterFrame)) this._parent.startDrag();
if (!this.click) {
this.click = true;
this.timer = getTimer()/1000;
}
else {
this.timer2 = getTimer()/1000;
if ((this.timer2-this.timer)<.25) {
visFoto(this._parent);
}
else {
this.timer = getTimer()/1000;
this.click = true;
}
}
this._parent.swapDepths(_root.getNextHighestDepth());
if (fotoSomBlirVist) fotoSomBlirVist.swapDepths(_root.getNextHighestDepth());
}
function stopdrag() {
mc = this._parent;
mc.stopDrag();
if ((fotoSomBlirVist != mc) && (!mc.onEnterFrame)) {
mc.oldX = Math.round(mc._x);
mc.oldY = Math.round(mc._y);
}
}
function visFoto(mc:MovieClip) {
if (fotoSomBlirVist == mc) {
fotoSomBlirVist.onEnterFrame = fotoAnimerTilbake;
delete fotoSomBlirVist;
}
else {
fotoSomBlirVist.onEnterFrame = fotoAnimerTilbake;
mc.newRotation = 0;
mc.oldRotation = mc._rotation;
mc.nesteKnapp.onRelease = function() { visNeste(); }
mc.forrigeKnapp.onRelease = function() { visForrige(); }
mc.onEnterFrame = fotoSkaler;
fotoSomBlirVist = mc;
}
if (fotoSomBlirVist) fotoSomBlirVist.swapDepths(_root.getNextHighestDepth());
}
function visNeste() {
var nb = 0;
if (fotoSomBlirVist) {
nb = fotoSomBlirVist.id +1;
if (nb == antallBilder) nb = 0;
}
visFoto(eval("fotoHolder"+nb));
}
function visForrige() {
var fb = 0;
if (fotoSomBlirVist) {
fb = fotoSomBlirVist.id -1;
if (fb < 0) fb = antallBilder-1;
}
visFoto(eval("fotoHolder"+fb));
}
var stageL:Object = new Object();
stageL.onResize = function() {
for (i=0;i<antallBilder;i++) {
mc = eval("fotoHolder"+i);
if (mc != fotoSomBlirVist) {
mc._x = Math.round(Stage.width * (mc._x/stageWidth));
mc._y = Math.round(Stage.height * (mc._y/stageHeight));
}
else {
fotoSomBlirVist._x = Stage.width/2;
fotoSomBlirVist._y = Stage.height/2;
}
mc.oldX = Math.round(Stage.width * (mc.oldX/stageWidth));
mc.oldY = Math.round(Stage.height * (mc.oldY/stageHeight));
mc.newX = Math.round(Stage.width * (mc.newX/stageWidth));
mc.newY = Math.round(Stage.height * (mc.newY/stageHeight));
mc.startX = Math.round(Stage.width * (mc.startX/stageWidth));
mc.startY = Math.round(Stage.height * (mc.startY/stageHeight));
}
stageWidth = Stage.width;
stageHeight = Stage.height;
fillBG();
fyllGlow();
}
Stage.addListener(stageL);


////////////////////////////////
// <bakgrunn>

function fillBG() {
with (bakgrunsHolder) {
clear();
beginBitmapFill(bakgrunnPattern);
moveTo(0,0);
lineTo(Stage.width,0);
lineTo(Stage.width,Stage.height);
lineTo(0,Stage.height);
lineTo(0,0);
endFill();
}
}

function fyllGlow() {
with (sideGlow) {
clear();
filters = [glow];
beginFill(0xFFFFFF);
moveTo(0, 0);
lineTo(Stage.width, 0);
lineTo(Stage.width, Stage.height);
lineTo(0, Stage.height);
lineTo(0, 0);
endFill();
}
}

fillBG();
fyllGlow();
// </bakgrunn>
////////////////////////////////


Merci d'avance!!

Julien
vendredi 11 décembre 2009 à 14:51:34 | Re : Aide d'un polaroid en AS3

pegase31

Membre Club Administrateur CodeS-SourceS
mais bien sûr : ça fera 250¤, facturé à quel nom ?

Peg'
lundi 14 décembre 2009 à 10:37:53 | Re : Aide d'un polaroid en AS3

bali_balo

celle là je l'a met dans mes favoris !!!
(Perso moi je propose 200¤, histoire de faire de la concurrence à Peg' )

bali_balo....=]
lundi 14 décembre 2009 à 10:39:23 | Re : Aide d'un polaroid en AS3

bali_balo


Ah oui.... pas sure que Mr Christopher Einarsrud soit contant que tu lui piques son code... Sauf si tu nous dis où l'as-tu eut et avec ou non l'autorisation de l'auteur de cette source...

bali_balo....=]
samedi 19 décembre 2009 à 13:46:16 | Re : Aide d'un polaroid en AS3

top30

Et en plus le mec, il a même pas les couilles de répondres !!!

Top30[hopeMultimedias]


Cette discussion est classée dans : var, xml, root, stage, lineto


Répondre à ce message

Sujets en rapport avec ce message

Problème de onPress dans une boucle [ par Reno007 ] Bonjour à tous et toutes,Je débute en flash et j'ai un problème pour ma galerie de photos. J'affiche une photo et les miniatures.Le problème c'est que mon get url a des problemes [ par tonydanza ] Bonjour à tous, voila j'ai un petit probleme de code et je ne voie pas l'erreur :si je laisse le code comme ça l'animation est gelée, mais les liens f Ajouter du texte depuis mon xml dans loadClip..; au secours [ par barytonlyrique ] Bonsoir à tous...Je débute en Flash et je souhaite créer une pellicule qui affiche toutes mes images par mon xml et qui navigue droite/gauche selon la Ajouter du reflet sur un objet plane style carrousel [ par Alex001 ] Bonjour à tous, Je code actuellement un site en flash AS3. Avec l'aide de plusieurs sources j'ai fini par créer des planes qui charges des images a p Arrêt du carrousel ou arrêt de fonction [ par cash1 ] Bonjour à tous,Voilà mon problème, j'ai trouvé le code source pour crée un carrousel effet 3D. Il fonctionne très bien mes images sont bien chargées, movie clip [ par nahlaone ] Bonjour,Je déboute en action script et j'avoue que je nage un peu !!!!Alors voila j'ai recupere une super source pour un menu en caroussel. Le problem Mask et coloriage en ligne innovateur (je pense) [ par antbilly ] Allô à tous,Je veux concevoir un coloriage en ligne nouveau. Je ne veux pas qu'on clique des zones pour y appliquer une couleur (ce serait facile) mai lancer une video par symbole clip avec un carrousel. [ par lacourriette ] Bonjour à tous,J'ai un carrousel de 14 images ( symbole clip "MonClip1", MonClip2 etc) et je voudrai lancer la video correspondante à l'image de l'art problème avec défilement de ruban photo_actionscript [ par dawink ] Bonjour,J'ai un petit soucis avec mon slider en ActionScript.en fait quand la souris ce déplace à gauche ou à droite mes images défilent dans un sens transformer xml en objet --> AS3 [ par inaden ] Bonjour,avant toute chose, désolé pour ce long bout de code.J'essaie de créer des objets dans un tableau à partir d'un XMLLe XML est de la forme :   


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,154 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales