(category) LIST of posts

Farve-transformation

var myColor:ColorTransform = mc.transform.colorTransform;
myColor.color = 0xFF0000;
mc.transform.colorTransform = myColor;

Med nye værdier for hvert klik:

mc.buttonMode = true;
mc.addEventListener(MouseEvent.CLICK, clickHandler);
 
function clickHandler(e:MouseEvent):void {
    var rOffset:Number = transform.colorTransform.redOffset + 25;
    var bOffset:Number = transform.colorTransform.blueOffset - 25;
    mc.transform.colorTransform = new ColorTransform(1, 1, 1, 1, rOffset, 0, bOffset, 0);
}

Mere detaljeret:
http://www.republicofcode.com/tutorials/flash/as3colortransform/

Load til og fra php

Følgende eksempel udgøres af en php-fill og en actionscript-fil, og viser en tovejs kommunikation, hvor begge filer læser og skriver variabler til hinanden.

PHP-filen

Det medsendte navn læses, og benyttes i forbindelse med en dato til en string output.
Bemærk at php-filen alene, i linket nedenfor, ikke viser noget navn i den sætning den genererer, fordi navnet ikke bliver sendt via dette link, og derfor ikke bliver læst:
http://curlingthebrackets.com/flash/php/sendAndLoad.php.

<?php
	$name = $_POST["navn"];
	$time = date("F jS, Y"); 
	echo $name .", datoen er ". $time;
?>

FLASH-filen

http://curlingthebrackets.com/flash/php/sendAndLoad.html

brugerfladen

  • Et tekstfelt med egenskaben ‘input’, så bruger kan skrive til php: send_txt.
  • Et tekstfelt med egenskaben ‘dynamic’, så bruger kan læse fra php: vis_txt.
  • En knap så bruger kan sende og modtage: sendBut.

Actionscriptet

Samme objekter som med load php-eksemplet:
URLLoader – loader tekst
URLRequest – kommunikerer med en ekstern fil
Derudover:
URLRequest skal bruge værdier på yderligere 2 properties, for at kunne sende: data og method.
URLVariables – Til overførsel af variabler mellem filer

// Hvis problemer med at teste lokalt af-kommenteres følgende med domænenavn
//Security.allowDomain("curlingthebrackets.com");
 
var phpLoader:URLLoader = new URLLoader();// phploader
var flashVars:URLVariables = new URLVariables();// (ind- og) ud-bakke for flash
 
var phpReq:URLRequest=new URLRequest("http://curlingthebrackets.com/flash/php/sendAndLoad.php"); // php-filen // adressen
phpReq.data=flashVars;// udbakken med i forsendelsen 
phpReq.method=URLRequestMethod.POST;// forsendelsens overførsels-metode 
 
sendBut.addEventListener(MouseEvent.CLICK, sendRequest);
function sendRequest(e:MouseEvent) {
	flashVars.navn = send_txt.text; // output fra flash // php's input 
	phpLoader.load(phpReq);
}
phpLoader.addEventListener(Event.COMPLETE, showRespond);
function showRespond(e:Event) {
	vis_txt.text = e.target.data; // php's output gennem phploaderen

Flere variabler

I nedenstående eksempel sender flash et navn og en score-værdi til php (som man kunne tænke sig blev skrevet ind i en database) – og får tilbage fra php et bestemt navn og en score-værdi (Det kunne være en vinder fra databasen med højeste pointværdi.)
Det viste data i flash-filen er således fra php, mens det sendte ikke er synligt.
link til php:http://curlingthebrackets.com/flash/php/score.php
link til flash:http://curlingthebrackets.com/flash/php/score.html

Variabelpar specificeres fra flash med URLVariables-objektet og de tilknyttede variabelnavne hver især.
Variabelpar fra php outputtes i en string adskilt med “&” (uden mellemrum til højre for “&”).
Variabelpar til flash udtrækkes også med et URLVariables-objekt, og tilknyttede variabelnavne.

PHP-filen

<?php
// $_REQUESTudtrækker alle variabler sendt med GET eller POST
extract($_REQUEST);
/*
 $user og $score  er nu klar til at bruge (fx. i forbindelse  med database transaktioner)
*/
 $user="ib";
 $score = 10000000;
// Output: variabelpar med de nye verdier, og adskilt med "&" 
// Uden mellemrum mellem & og  variabelnavn!
echo "user={$user}&score={$score} ";  
?>

Actionscriptet

Den udkommenterede blok udgør funktionaliteten til de sendte variabler, for at vise den adskilt fra de hentede variabler (af hensyn til overblikket).

var req:URLRequest=new URLRequest("http://curlingthebrackets.com/flash/php/score.php");
/*
var variables:URLVariables = new URLVariables();
 
variables.score = String(Math.floor(Math.random()*10));
variables.user = "Anders And";
 
req.data = variables;
req.method = URLRequestMethod.POST ;
*/
var loader:URLLoader = new URLLoader();
loader.load(req);
 
loader.addEventListener(Event.COMPLETE, RESPONSE);
function RESPONSE(evt:Event):void {
	//trace(loader.data);
	var variables:URLVariables=new URLVariables(loader.data);
	//trace(variables.user +" - "+ variables.score );
	user.text=variables.user;
	score.text=variables.score;
}

Load fra PHP

FlashVars metoden

Hvis variabler skal med i fswf-filen fra starten af dens egen load-proces, kan de overføres via html elementet: ‘object’, med parametret < param name="FlashVars" value=" vaiabel1="værdi"&variabel2="værdi" " / >.
FlashVars kræver et par linier Actionscript for at kunne bruge medsendte variabler, og er beskrevet i et indlæg for sig selv.
Variabler kan skrives direkte eller være resultatet af udregninger fra fx. php, javascript, asp.
NB: Data er synlig i kodevisningen

URLLoader metoden

PHP-filen

Eksemplet er en ultra-simpel php-genereret string.
Direkte link: http://curlingthebrackets.com/flash/php/loadtest.php

<?php 
	$stringtest= "Dette er en string, som er genereret med php"; 
	echo $stringtest;
?>

FLASH-filen

Selve flash filen i dette samme eksempel indeholder kun følgende script. Tekstfeltet som skal bruges til at vise php-output’et, er genereret i scriptet:
Demo: http://curlingthebrackets.com/flash/php/loadtest.html

URLLoader – loader tekst
URLRequest – kommunikerer med en ekstern fil

var phpLoader=new URLLoader;
phpLoader.load(new URLRequest("http://curlingthebrackets.com/flash/php/loadtest.php"));
 
phpLoader.addEventListener(Event.COMPLETE, useData);
function useData(e:Event):void {
	var php:String=e.target.data.toString();
	var ttt:TextField=new TextField();
	ttt.width=500;
	ttt.text=php;
	addChild(ttt);
}

Send til php

Hvis der kun skal sendes nogle variabler videre til en php-fil fra flash, er det nemmeste at lægge dem i URL-adressen til php-filen. Med en tekst-link, eller med navigateToURL.
NB: Data er synligt i adresselinien

Flash player open source petition

På studerendes opfordring:

http://www.openplayer.net/

Page flip MegaZine

Download
http://megazine.mightypirates.de/index.php?id=home
Tutorial hvori siderne er lavet i indesign
http://mos.futurenet.com/pdf/computerarts/ART160_tut_flash.pdf
Forum
http://megazine.mightypirates.de/forum/index.php/topic,777.msg2911.html#msg2911
Dokumentation
Klik ind i de forskellige core-elementer for at få vist en liste over anvendelige xml-parametre
http://megazine.mightypirates.de/wiki/index.php/Category:Documentation

Her er xml-indholdet af dette ovenstående eksempels “megazine.mz3″, som åbnes fra en editor.

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE book SYSTEM "http://megazine.mightypirates.de/megazine2.dtd">
<book 
	pagewidth="500" 
	pageheight="600" 
	pagepreview="false"
	lang="da,en" 
	reflection="true"
	zoominit=".35"
	minscale="0.2"
	galleryzoommax="5"
	dragrange="200"
	ignoresides="true"
	plugins="anchors, backgroundsounds, batchpages, console, gallery, help, javascript, keyboardnavigation, links, navigationbar, overlays, print, slideshow, swfaddress, titles" >			
<!--  --------- -->
	<background>
		<box anchors="0,0,pw,ph" background="image(../filer/lag.jpg)"/>
	</background>
<!--  --------- -->
	<chapter anchor="chapter1">
		<page buffer="true" bgcolor="0x000033" stiff="true" >
		</page>
		<spreadpage buffer="true" foldfx="0">
			<img src="../filer/bil1.swf"
			position="center middle" 
			height="130"
			width="400" />
		</spreadpage>
		<spreadpage buffer="true" foldfx="0">
			<img  src="../filer/bil1.swf" 
			foldfx="0" position="0 middle" 
			scale=".5"/>	
		</spreadpage>
		<spreadpage foldfx="0" >
			<vid src="../filer/v.flv" 
			position="0 center" 
			onlywhenactive="true"
 			width="600" 
			height="400"
			gui="elements/vidgui.swf" 
			preview="../filer/ledning.jpg" />
		</spreadpage>
		<page buffer="true">
			<img src="../filer/kiefer.jpg"
			width="800"
			height="600" 
			hires="../filer/kiefer.jpg"
			gallery="../filer" />
		</page>
		<page>
			<vid src="../filer/v.flv"
			onlywhenactive="true"
			position="center middle" 
			gui="elements/vidgui.swf" 
			width="550"
			height="400" />
		</page>
		<page></page>
		<page bgcolor="0x01BCDEF1" foldfx="0" stiff="true" >
			<img src="../filer/ledning.jpg" />
			<snd src="../filer/sting.mp3" onlywhenactive="true"/>
		</page>
	</chapter>
	<chapter anchor="chapter2" bgcolor="0xFF9999">
		<page bgcolor="0x000033">
			<img src="../filer/nytegn.jpg" />
		</page>
		<page>    
			<nav align="center" position="center middle" color="#423e21" hover="#5e5934" >
				<lnk url="anchor:chapter1"><![CDATA[<font face="serif" size="24">Chapter1 - Features</font>]]></lnk>
				<lnk url="anchor:chapter2"><![CDATA[<font face="serif" size="24">Chapter2 - Elements And this is Some More text</font>]]></lnk>
				<lnk url="anchor:index"><![CDATA[<font face="serif" size="24">References</font>]]></lnk>
			</nav>
		</page>
		<page>
			<area width="200" height="100" url="anchors:index2"/>
		</page> 
		<spreadpage anchor="index" bgcolor="0x339999" foldfx="0" > 
            	<img src="../filer/2b.swf"
			position="center middle" 
			width="600"
			height="400" />
        	</spreadpage>
		<page stiff="true" >
			<img src="http://curlingthebrackets.com/flash/bat_ball/squash1.swf"
			position="center middle" 
			height="330"
			width="400" />
		</page>
	</chapter>
</book>