hey wir haben ein problemchen..wenn wir versuchen den nachbarn vorm nachbarn zu laden,wirds in der vorscheife nicht um i erhöht..WARUM??
wär ganz nett wenn ihr uns weiterhelfen könntet (hab die stelle markiert)
liebe grüße und schönes wochenende erstmal;)
alyssa
///////////////////////////////////////////////////////////////////////////////////
import controlP5.*;
import lastfm.*;
Lastfm fm;
Lastfm fm2;
Lastfm fm3;
Lastfm fm4;
LastfmUser user;
LastfmUser user2;
LastfmUser user3;
LastfmUser user4;
ControlP5 c5;
Textfield fieldUser;
Textfield fieldUser2;
Textfield fieldUser3;
Textfield fieldUser4;
///////////////////////////////////////////////////////////////
PFont font;
int u;
int u2;
int u3;
int u4;
void setup(){///////////////////////////////////////////////////SETUP
size(1600,780);
background(254);
smooth();
noLoop();
strokeCap(SQUARE);
font = createFont (“GravurCondensed-Thin”, 12);
textFont (font, 12);
c5=new ControlP5(this);
fieldUser=c5.addTextfield(“user”,20,50,200,20);
fieldUser2=c5.addTextfield(“user2″,20,90,200,20);
fieldUser3=c5.addTextfield(“user3″,20,90,200,20);
fieldUser4=c5.addTextfield(“user4″,20,90,200,20);
fieldUser.setValue(“redregar”);
fieldUser2.setValue(“ranzen”);
fieldUser3.setValue(“aliasen”);
fieldUser4.setValue(“comkee”);
////////////////////////////////////////////////////////////USERNAMEDARSTELLUNG
fill(0,120);
textAlign(RIGHT);
String name =fieldUser.getText().toUpperCase();
text(name,200,50);
textAlign(LEFT);
String name2 =fieldUser2.getText().toUpperCase();
text(name2,550,50);
textAlign(RIGHT);
String name3 =fieldUser3.getText().toUpperCase();
text(name3,1050,50);
textAlign(LEFT);
String name4 =fieldUser4.getText().toUpperCase();
text(name4,1400,50);
}
void draw(){///////////////////////////////////////////////////DRAW
}
void controlEvent(ControlEvent theEvent){
float mx,my,mx2,mx3,colo,strok;
if (fieldUser.getText().length()>0 && fieldUser2.getText().length()>0 && fieldUser3.getText().length()>0 && fieldUser4.getText().length()>0){//BEGINNBEDINGUNG
///////////////////////////////////////////////////////////////USER WIRD GELADEN
fieldUser.hide();
fieldUser2.hide();
fieldUser3.hide();
fieldUser4.hide();
fm=new Lastfm(fieldUser.getText(),”",”b42dba2f01b313eaa0091de60394e7d6″,”638dd9d802c2a94c3348678d3b00d894″);
fm2=new Lastfm(fieldUser2.getText(),”",”b42dba2f01b313eaa0091de60394e7d6″,”638dd9d802c2a94c3348678d3b00d894″);
fm3=new Lastfm(fieldUser3.getText(),”",”b42dba2f01b313eaa0091de60394e7d6″,”638dd9d802c2a94c3348678d3b00d894″);
fm4=new Lastfm(fieldUser4.getText(),”",”b42dba2f01b313eaa0091de60394e7d6″,”638dd9d802c2a94c3348678d3b00d894″);
user=new LastfmUser(fieldUser.getText());
user2=new LastfmUser(fieldUser2.getText());
user3=new LastfmUser(fieldUser3.getText());
user4=new LastfmUser(fieldUser4.getText());
user.topArtists(3);
user2.topArtists(3);
user3.topArtists(3);
user4.topArtists(3);
int leading = 13;///Y ABSTÄNDE SCHRIFT UND BEZIER
////////////////////////////////////////////////////////////////////////////////////////////////////////////////————–>HIER IST DAS PROBLEMCHEN!!!<——————
int anz=5;
String[] nebo= new String[anz];
// String erster =user.getNeighbours().get(1);
user.neighbours();
String name = user.getNeighbours().get(0).getUsername().toUpperCase();
nebo[1] = name;
println(nebo.length);
for(int i=1; i < anz-1; i++){
name = nebo[i];
println (name + ” ” + i);
fieldUser.setValue(name);
String name1;
println(nebo[i-1] + ” : ” + nebo[i+1]);
if (nebo[i-1] ==nebo[i+1]){ //gegen wiederholungen
i+=1;
name1 = user.getNeighbours().get(round(random(4))).getUsername().toUpperCase();
}
else{
i+=1;
name1 = user.getNeighbours().get(0).getUsername().toUpperCase();
}
nebo[i+1]=name1;
}
//n1 = user.getNeighbours().get(1);
//String Neighbour1[1];
//////////////////////////////////////////////////////////////////////////////
for(int i=0;i<user.getTopArtists().size() ;i++){
int[] ArtistsUser = new int[user.getTopArtists().size()];
int[] ArtistsUser2 = new int[user2.getTopArtists().size()];
int[] ArtistsUser3 = new int[user3.getTopArtists().size()];
int[] ArtistsUser4 = new int[user4.getTopArtists().size()];
u = user.getTopArtists().get(i).getPlayCount();
u=ArtistsUser[i];
u2 = user2.getTopArtists().get(i).getPlayCount();
u2=ArtistsUser[i];
u3 = user3.getTopArtists().get(i).getPlayCount();
u3=ArtistsUser[i];
u4 = user4.getTopArtists().get(i).getPlayCount();
u4=ArtistsUser[i];
String us =user.getTopArtists().get(i).getName();
String us2 =user2.getTopArtists().get(i).getName();
String us3 =user3.getTopArtists().get(i).getName();
String us4 =user4.getTopArtists().get(i).getName();
int b2 = us2.length();//ARTISTNAMENANZAHL
int b3 = us3.length();//ARTISTNAMENANZAHL
//int text2x= 600- b2;
int text1x= 200;
int text2x= 550;
int text3x= 1050;
int text4x= 1400;
int texty= 70+ leading * (i+1); //Y-VERSETUNG WIRD DURCHGEFÜHRT…
mx=(text1x +text2x)/2;
mx2=(text2x +text3x)/2;
mx3=(text3x +text4x)/2;
my=height/2;
////////////////////////////TEXT WIRD GEZEICHNET
fill(0,120);
textAlign(RIGHT);
text (us, text1x,texty);
textAlign(LEFT);
text (us2, text2x,texty);
textAlign(RIGHT);
text (us3, text3x,texty);
textAlign(LEFT);
text (us4, text4x,texty);
//println(fieldUser.getText()+”: “+user.getTopArtists().get(i).getName()+” – “+ user.getTopArtists().get(i).getPlayCount() +” _____________ “+ fieldUser2.getText()+”: “+user2.getTopArtists().get(i).getName()+” – “+ user2.getTopArtists().get(i).getPlayCount());
colo=random(0,255);
strok =random(20,80);
strokeCap(ROUND);
stroke(colo,0,0,strok);
fill(colo,0,0,strok);
noFill();
//if(us.equals(us2) == true||us.equals(us3) == true||us.equals(us4) == true){
int d=50;
//1
strokeWeight(user.getTopArtists().get(i).getPlayCount()/d);
bezier(text1x+3,texty -3.8,(text1x+mx)/2,texty,(text1x+mx)/2,my,mx,my);
strokeWeight(user2.getTopArtists().get(i).getPlayCount()/d);
bezier(mx,my,(text2x+mx)/2,my,(text2x+mx)/2,texty,text2x-3,texty -3.8);
//2
strokeWeight(user2.getTopArtists().get(i).getPlayCount()/d);
bezier(text2x-3,texty -3.8,(text2x+mx2)/2,texty,(text2x+mx2)/2,my,mx2,my);
strokeWeight(user3.getTopArtists().get(i).getPlayCount()/d);
bezier(mx2,my,(text3x+mx2)/2,my,(text3x+mx2)/2,texty,text3x-3,texty -3.8);
//3
strokeWeight(user3.getTopArtists().get(i).getPlayCount()/d);
bezier(text3x-3,texty -3.8,(text3x+mx3)/2,texty,(text3x+mx3)/2,my,mx3,my);
strokeWeight(user4.getTopArtists().get(i).getPlayCount()/d);
bezier(mx3,my,(text4x+mx3)/2,my,(text4x+mx3)/2,texty,text4x-3,texty -3.8);
}
}
}


One Comment
Hallo ihr Beiden,
da das Laden der Daten eine Ewigkeit dauert, ist es mir nicht möglich eueren Sketch auszuführen. Ich würde euch empfehlen einen Teil der benötigten Daten lokal in die entsprechende .xml zu speichern, um die Wartezeit zu verkürzen.
Auf den ersten Blick fällt mir auf, dass ihr 4 Lastfm Instanzen erzeugt – eine würde vollkommen ausreichen. Alles weitere am Mittwoch, schöne Grüße