Aufgabe 8.1

Disclaimer: Dieser Thread wurde aus dem alten Forum importiert. Daher werden eventuell nicht alle Formatierungen richtig angezeigt. Der ursprüngliche Thread beginnt im zweiten Post dieses Threads.

Aufgabe 8.1
Hey,
sollen die clear-Methoden auch implementiert werden?


Sehe dir doch die Basis-Klasse ein wenig genauer an.


ein ja oder nein tuts auch, ist doch hier kein reines rätselforum…
(als basisklasse gibts nur color. pixelpainter und drawable sind interfaces?? oder ist mit basisklasse formentest gemeint…)


Drawable kennt nur eine Methode, diese Methode heißt nicht [m]clear[/m].


Huhu,

ich weiß nicht, ob mir ein abendlicher Denkfehler untergekommen ist oder so… Um den FormenTest laufen zu lassen, wird ja javax.swing importiert… muss ich da bei mir am Rechner noch irgendwas zusätzlich installieren oder so, damit das geht? Ich checks nicht, bekomm nur ne Fehlermeldung an der Konsole, die mir auch beim googeln nicht viel (für mich) nützliche Info gebracht hat:

*** NSInvocation: warning: object 0x1094763c0 of class ‘ThreadUtilities’ does not implement methodSignatureForSelector: – trouble ahead
*** NSInvocation: warning: object 0x1094763c0 of class ‘ThreadUtilities’ does not implement doesNotRecognizeSelector: – abort

Benutz n MacBook mit OS X 10.6.8 …


Also offiziell wird deine OS-Version gar nicht mehr unterstützt: http://www.java.com/en/download/help/sysreq.xml

Vielleicht liegt es daran? (Kann ja sein, dass der Rest noch downward compatible ist, aber Swing nicht mehr)

Hätte jedenfalls auch mal eine kleine Frage zu der Aufgabe:
Sind Kreise mit Radius 0 und Rechtecke mit Höhe/Breite 0 legitim?
Ein Kreis zB hätte nach meiner Implementierung bei Radius 0 genau 1 Pixel. Man könnte natürlich sagen, er hat damit 0.5 Pixel Radius, was als int eine 0 ist, aber ich glaube, das ist hier keine gute Logik…


Die Java 7 Version hab ich über n paar Tricks zum Laufen gebracht, aber kann sein, dass das Problem ist… Hm, dann probier ich’s mal wo anders.


Ich habe gerade kleine Problemchen mit dem Kreis-Zeichnen…
Gibt es eine bessere Methode den Abstand eines Punktes vom Ursprung zu berechnen, als per c=sqrt(a²+b²)? Denn nutze ich das mit runden und in integer casten - male ich Pixel an Stellen an denen keine sein dürften und mir fehlen Pixel an stellen an denen sie sein müssten… (aber alle am “Rand”, also, hm. Vielleicht sollte ich das Runden mal weglassen)

Oder weiß jemand, wie die das Ergebnis überprüfen? Wenn Pixel-für-Pixel dann wärs ja falsch :confused:


oBdA:

Eine bessere Methode als Pythagoras? Nunja, wenn man Rechenzeit zu verbrennen hat kann man sich irgendeine Wegfindung implementieren, sowas wie A* oder so (gerne auch noch schlechter wenn mans einfacher moechte) und dann Pixel zaehlen.

Alternativ kann man sich die Wurzel sparen indem man mit c^2 vergleicht.


Hmm… dann blicke ich nicht mehr durch. In der 8.2 habe ich bei dem RGBG-Display auch ein Fehler (die anderen funktionieren ohne Pixelfehlermeldung und schaut auch “gut” aus) - aber da ist ja wieder das “Grünwert/sqrt(2)”, das dieses mal ja IMMER abgerundet werden soll. Diese Unterschiede bekommt man ja durch passendes kombinieren von round und cast hin. Fehler habe ich dennoch wieder. Ich könnte Wetten dass der Grünfarbton bei mir “falsch” berechnet wird.

Was mich wieder zu meinem ursprünglichen Problem führt. Er Zeichnet die 8.1 wunderbar, schaut für mich auch richtig aus, aber angeblich sind einzelne Pixel falsch (alle am Rand vom Kreis), was eigentlich nur an einem “ungenauen” Abstand>=radius - Vergleich liegen. Bei der 8.2 RGBG sind natürlich alle Pixel falsch…

Das mit dem Wurzel-weglassen werde ich wohl mal probieren. Muss mich nur ersteinmal entfrusten gehen.


arw: Ich mag mich irren, aber ich behaupte einfach mal, dass Manhattan kürzer ist ^^

EDIT: Uuups, da hatte ichn Fail im Kopf :stuck_out_tongue:
Ist natürlich Blödsinn, die Manhattan-Distanz lässt sich ja nicht mit dem Radius vergleichen


Och, es gibt schon einen Radius in einem Kreis in Manhattan-Metrik. Nur sind Manhattan-Kreise so unrund…

1 Like

Meine Frage ist nun aber etwas untergegangen :stuck_out_tongue:

Sind Kreise mit dem Radius 0 Pixel legitim? (Diese werden dann als 1 Pixel dargestellt mit Pythagoras, weil natürlich das Mittelpunktpixel zu sich selbst Abstand 0 hat…)


ich denke schon warum sollte das nicht legitim sein ?