Klassenoptimierung mithilfe von getObjectsHere?

... komplette Frage anzeigen

1 Antwort

Das einfachste dürfte im Moment sein, die Klasse Pfeil abstrakt zu machen und PfeilNW, ... davon abzuleiten.

Welche Argumente nimmt isObjectHere() bzw. getObjectsHere entgegen? Falls es ein Punkt ist, kannst du der Klasse Pfeil ja eine Eigenschaft Offset mitgeben.

In C# sähe das ungefähr so aus:

class Pfeil: System.Drawing.Size {
bool kannDorthinLaufen(System.Drawing.Point p) {
return (!isBlockingObjectHere(p + this));
}
}

und dann bekommt das Objekt vom Typ Pfeil die Verschiebung mit, z. B.

Pfeil PfeilNW = New Pfeil(-1,-1);
Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von PWolff
30.11.2015, 10:07

Bzw.

  bool kannDorthinLaufen(System.Drawing.Point p) {
System.Drawing.Point neuerPunkt = p + this;
return (isWithinBounds(neuerPunkt) && !isBlockingObjectHere(neuerPunkt));
}
0

Was möchtest Du wissen?