- Registriert
- 11.05.07
- Beiträge
- 3.878
Code:
-(void)drawRect:(id)sender{
int Farbtiefe;
Farbtiefe=100;
float reC,imC,reZ,imZ,reZ_minus1,imZ_minus1,zelle,i;
float reZo,imZo; // Julia-Menge
zelle=0.0027; // Apfelmännchen=0.00425, Julia-Menge=0.0027
reC=-0.8; // Julia-Menge
imC=0.2; // Apfelmännchen=-2.10375, Julia-Menge=0.2
imZo=-1.3365; // Julia-Menge -1.3365
for(int y=0; y<=980;y++){ //980
reZo=-1.971; // Apfelmänchen reC=-3.1025; Julia-Menge reZo=-1.971;
for(int x=0; x<=1560;x++){ //1560
reZ_minus1=reZo; // Julia-Menge
imZ_minus1=imZo; // Julia-Menge
//reZ_minus1=0; // Apfelmännchen
//imZ_minus1=0; // Apfelmännchen
for(i=0;i<=Farbtiefe;i++){
imZ=2*reZ_minus1*imZ_minus1+imC;
reZ=reZ_minus1*reZ_minus1-imZ_minus1*imZ_minus1+reC;
if(reZ*reZ+imZ*imZ>4){
break;
}
reZ_minus1=reZ;
imZ_minus1=imZ;
}
NSBezierPath * path=[NSBezierPath bezierPath];
NSPoint startPoint={x,y};
NSPoint endPoint={x+1,y};
[path moveToPoint: startPoint];
[path lineToPoint: endPoint];
[[NSColor colorWithDeviceRed:i/Farbtiefe green:i/Farbtiefe blue:i/Farbtiefe alpha:1.0] set];
[path stroke];
reZo=reZo+zelle; // Apfelmännchen reC=reC+zelle; Julia-Menge reZo=reZo+zelle;
}
imZo=imZo+zelle; // Apfelmännchen imC=imC+zelle; Julia-Menge imZo=imZo+zelle;
}
}
erste Frage:
wie kann cih anstatt Linien zu zeichnen direkt irgendwelche Punkte einfärben?
zweite Fabre: wie soll ich die NSView-Methoden im gesamten Programm anordnen, damit mein RAM nicht permanent überladen wird?
dritte Frage:
was muss ich machen, damit diese Methode nciht immer ausgeführt wird, wenn das Programm gestartet wird, ich das FEnster bewege oder nur einmal auf den Imhalt klicke?
Danke