| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Mar 2004
Beiträge: 9
|
Hallo Leute, ich habe da ein kleines Problem. Ich möchte gerne ein Diagramm in Flash zeichnen. Ich zeige euch mein Skript: meinLoadVars = new LoadVars(); werte = new Array(); datenHolen("daten.txt"); function datenHolen(dateiname) { trace("daten geholt"); meinLoadVars.load(dateiname); // load lädt Variablen von der angegebene URL herunter //trace("das ist "+dateiname); } meinLoadVars.onLoad = function(status) { // onLoad wird verwendet wenn ein load Vorgang abgeschlossen ist //trace("onLoad"); if (status) { //trace("onLoad ok"); //gelesene Daten verarbeiten //trace(meinLoadVars.toString()); werte = meinLoadVars.daten.split(";"); // werte ist das Array trace("werte "+werte); //trace(meinLoadVars.daten); balken(); } else { trace("onLoad nicht ok"); } }; balken = function () { breite=10; abstand=10; x=100; y=100; for (i=0; i<werte.length; i++) { hoehe=werte[i]; //trace("hohe"+werte[i]); lineStyle(3,0x000000); moveTo(x,y); beginFill(0xcdff00); LineTo(x,(y-werte[i])); LineTo(x-hoehe,(y-werte[i])); LineTo(x-hoehe,y); LineTo(x,y); trace("y: "+y); //LineTo(x,(y+hoehe)); //LineTo(x+breite,(y*werte[i])+abstand); endFill(); //trace("hallo"); } }; Hier sind die werte aus der daten.txt: &daten=120;50;40;70;35;50 Eigentlich sollen ungefähr sechs balken erscheinen die sich nach den werten aus der txt richten. Leider ist dies nicht der Fall. Ich weiß wo mein Fehler liegt komme aber einfach nicht auf die richtige Lösung. Hoffe mit kann jemand helfen Bis dann dann |
| | |
| | #3 (permalink) |
| ... Registriert seit: Oct 2002 Ort: Nürnberg
Beiträge: 3.611
|
habs mal ein bischen umgeschrieben, so müsste es gehen: ActionScript:
|
| | |
| | #4 (permalink) |
| Neuer User Registriert seit: Oct 2001
Beiträge: 166
| von punkt zu punkt eine linie zeichen
Hallo ich habe folgendes Problem. Ich möchte auch ein Diagramm zeichnen, aber ich möchte per as von Punkt zu Punkt eine Linie zeichnen. Ich bae also ein gefülltes Array mit lauter Objekten (MovieClips)... diese (dot) positionier ich in einer Schleife und mit duplicateMoviClip auf der Bühne. Hier mein nicht funtionierendes Beispiel: Code:
var gMainGridHeight:Number = 207;
var gXpositions:Array = new Array(2,4,6,8);
var incomingValues:Array = new Array(10, 20, 30, 16);
setupDots(incomingValues);
function setupDots(incomingValues:Array) {
for (count=0; count<incomingValues.length; count++) {
//trace(incomingValues[count]);
var dot:MovieClip = dot.duplicateMovieClip("dot"+count,_root.getNextHighestDepth());
dot._x = gXpositions[count];
dot._y = gMainGridHeight-incomingValues[count];
// draw a line between
var targetline:MovieClip = this.createEmptyMovieClip("targetline"+count, count*3000);
targetline._x = gXpositions[count];
targetline._y = gMainGridHeight-incomingValues[count];
//die xPositionen der targetline stimmen schon
//jetzt möchte ich das von jedem punkt zum nächsten eine Linie gezeichnet wird und komm nicht dahinter.. wie es geht.
targetline.lineStyle(1, 0x000000, 100, true, "none", "round", "round");
targetline.lineTo(gXpositions[count], ?????);
}
} LG |
| | |
| | #5 (permalink) |
| . Registriert seit: May 2003 Ort: bayern
Beiträge: 1.117
|
ich habe nicht recht verstanden was du mit hiermit bezweckst PHP-Code: PHP-Code:
__________________ [mooseMash] |
| | |
| | #6 (permalink) |
| Neuer User Registriert seit: Oct 2001
Beiträge: 166
| supi, daaanke
das mit dem dot war im grunde nur zur übersicht, ob die punkte am richtigen platz sitzen. Kann man aber auch benützen, wenn man das will. Is ja nur ein MovieClip auf der Bühne Namens dot :-)) vielen dank, hier das fertige script: Code: function setupDots(incomingValues:Array) {
trace(gXpositions[0]);
trace(gMainGridHeight-incomingValues[0]);
//setze die linie an den ausgangspunkt der zeichnung
var targetline:MovieClip = this.createEmptyMovieClip("targetline", _root.getNextHighestDepth());
targetline.lineStyle(1, 0x000000, 100, true, "none", "round", "round");
targetline.moveTo(gXpositions[0], gMainGridHeight-incomingValues[0]);
for (count=0; count<incomingValues.length; count++) {
var dot:MovieClip = dot.duplicateMovieClip("dot"+count, _root.getNextHighestDepth());
dot._x = gXpositions[count];
dot._y = gMainGridHeight-incomingValues[count];
//trace(gMainGridHeight-incomingValues[count]);
//setze die zeichnung fort zum nächsten punkt
targetline.lineTo(gXpositions[count], gMainGridHeight-incomingValues[count]);
}
} |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |