PDA

Volledige versie bekijken : [CS3][AS2] Rotationwaarde uit een XML bestand [Opgelost]


KolkMedia
%Europe/Berlin %407 %2009, 10:47
Medeflashers,

ik ben bezig om de weersinformatie in een flashfile te zetten. hiervoor gebruik ik de informatie van xml.buienradar.nl nu wil ik een mooie kaart maken met de windrichting hierop etc, maar nu wil ik een pijl maken die dus het aantal graden uit de xml leest en daarmee de pijl in de juiste richting draait.

Nu lijkt het er op dat _rotation om de een of ander reden niet kan omgaan met de informatie die uit de xml komt.


windrichting_mc._rotation = 3 //werkt

var wind:Number = 3
windrichting_mc._rotation = wind //werkt

var volkel = weer.firstChild.firstChild.childNodes[7].firstChild.childNodes[45];
var windrgr:Number = volkel.childNodes[9].firstChild;
windrichting_mc._rotation = windrgr //werkt niet!


heeft iemand enig idee hoe dit komt en hoe ik het kan oplossen?

alvast bedankt!

Jan
%Europe/Berlin %410 %2009, 10:50
var windrgr:Number = volkel.childNodes[9].firstChild;
trace(windrgr)
windrichting_mc._rotation = Number(windrgr)
//of
//windrichting_mc._rotation = parseInt(windrgr)

Dat script staat toch in een xml.onLoad handler/functie ?

Groeten;
Jan

KolkMedia
%Europe/Berlin %415 %2009, 10:58
werk idd met xml.onLoad
met trace krijg ik ook wel de juiste waarde.
helaas werkt de oplossing die je gegeven hebt niet :(

Jan
%Europe/Berlin %439 %2009, 11:33
helaas werkt de oplossing die je gegeven hebt niet
Allebei niet?

tja blijven tracen in die onLoad...

En zolang we het met 3regels script moeten stellen, kunnen we enkel gokken.


var windrgr:Number = volkel.childNodes[9].firstChild;
trace(windrichting_mc);
trace(windrichting_mc._rotation);

Groeten;
Jan

KolkMedia
%Europe/Berlin %444 %2009, 11:39
Uitgebreide actionscript is niet veel meer maar misschien kunnen jullie er iets mee


//XML inladen
weer = new XML();
weer.ignoreWhite = true;
weer.load("http://xml.buienradar.nl/");
weer.onLoad = function(success) {
if (success) {
var volkel = weer.firstChild.firstChild.childNodes[7].firstChild.childNodes[45];
var stationid = volkel.childNodes[0].firstChild;
var meetstation = volkel.childNodes[1].firstChild;
var lat = volkel.childNodes[2].firstChild;
var lon = volkel.childNodes[3].firstChild;
var datum = volkel.childNodes[4].firstChild;
var luchtvochtigheid = volkel.childNodes[5].firstChild;
var temperatuur = volkel.childNodes[6].firstChild;
var windms = volkel.childNodes[7].firstChild;
var windbf = volkel.childNodes[8].firstChild;
var windrgr:Number = volkel.childNodes[9].firstChild;
var windr = volkel.childNodes[10].firstChild;
var luchtdruk = volkel.childNodes[11].firstChild;
var zichtmeters = volkel.childNodes[12].firstChild;
var windstotenms = volkel.childNodes[13].firstChild;
var regenmmpu = volkel.childNodes[14].firstChild;
var iconactueel = volkel.childNodes[15].firstChild;
var iconnaam = volkel.childNodes[15].attributes.zin;
var bronurl = volkel.childNodes[16].firstChild;
var draai = windrgr

trace("Stationid: " + stationid);
trace("Station: " + meetstation);
trace("Lat: " + lat);
trace("Lon: " + lon);
trace("Datum: " + datum);
trace("Luchtvochtigheid: " + luchtvochtigheid)
trace("Temperatuur: " + temperatuur);
trace("wind meters per seconde: " + windms);
trace("wind beaufort: " + windbf);
trace("windrichting in graden: " + windrgr);
trace("windrichting: " + windr);
trace("Luchtdruk: " + luchtdruk);
trace("Aantal meters zicht: " + zichtmeters);
trace("Windstoten Meters per seconde: " + windstotenms);
trace("Millimeters regen per minuut: " + regenmmpu);
trace("URL van Icon: " + iconactueel);
trace("Naam van Icon: " + iconnaam);
trace("URL van de bron: " + bronurl);

windrichting_mc._rotation = Number(windrgr)
}
}

Jan
%Europe/Berlin %447 %2009, 11:43
Allebei niet?

tja blijven tracen in die onLoad...



var windrgr:Number = volkel.childNodes[9].firstChild;
trace(windrichting_mc);
trace(windrichting_mc._rotation);

Groeten;
Jan
firstChild (XMLNode.firstChild property)
public firstChild : XMLNode [read-only]
....
http://www.google.be/search?hl=en&client=firefox-a&rls=org.mozilla:en-US:official&hs=F57&ei=jEYmSo-7BcGb-AaKxMTNDw&sa=X&oi=spell&resnum=0&ct=result&cd=1&q=beginners+tutorial+actionscript+xml&spell=1

KolkMedia
%Europe/Berlin %453 %2009, 11:52
helaas allebei niet inderdaad.


windrichting_mc._rotation = Number(windrgr)
trace(windrichting_mc._rotation)


komt 0 uit als verwacht...

Jan
%Europe/Berlin %454 %2009, 11:54
tja wat jij volgens mij doet is:
windrichting_mc._rotation = XMLNode
Gebruik de link en lees wat beginnerstutorials over hoe je een xml file juist (uit)leest.

Groeten;
Jan

KolkMedia
%Europe/Berlin %467 %2009, 12:13
Ik heb hoe ik het nu doe ook met een beginners tutorial geleerd maar zal het eens doorlezen. Overigens werkt de waarde uit de xml wel gewoon als ik het bijvoorbeeld als _x waarde.

Jan
%Europe/Berlin %478 %2009, 12:28
Ik heb hoe ik het nu doe ook met een beginners tutorial geleerd
Slechte tutorial dan...
Je moet nodeValue oid gebruiken of desnoods toString()
windrichting_mc._rotation = windrgr.nodeValue;

windrichting_mc._rotation = Number(windrgr.toString())

var windrgr:Number = volkel.childNodes[9].firstChild;
Dat kan niet want dat komt neer op:
var windrgr:Number = XMLNode

var windrgr:Number = Number(volkel.childNodes[9].firstChild.nodeValue);


Groeten;
Jan

KolkMedia
%Europe/Berlin %506 %2009, 13:09
windrichting_mc._rotation = Number(windrgr.toString())



bedankt, dat werkt.