Closed elenajenny closed 4 years ago
Euer Ansatz ist sehr richtig, insbesondere mit dem Wort "ungefähr" bei der Prüfung der Gleichheit der Positionen. Da liegt nämlich ein Fallstrick, die Positionen werden so gut wie niemals exakt gleich sein. Das bedeutet, ihr müsst eine entsprechende Toleranz zulassen. Schaut euch das Lektionsvideo "Implementation 2 - Hauptprogramm" von 10:00 bis 20:00 nochmal an, da wird genau das für die Treffer der Asteroiden gemacht.
PS: statt die Entfernung in beiden Dimensionen getrennt zu betrachten, kann man auch die Länge des Differenzvektors ausrechnen (Pythagoras) und zur Beurteilung der Nähe heranziehen. Gerade bei eher kreisförmigen Objekten passt das besser, das wird auch noch später bei den Asteroiden so umgebaut.
Okay danke das hat auf jeden Fall weitergeholfen! Wir sind gerade noch etwas verwirrt, du hast ja in der Lektion die Position deines Cursors beschrieben und wir würden statt dem Hotspot die Position des Viruses beschreiben aber wie bekommen wir in der Main.ts die Position vom dem, da diese ja nur der Virus kennt und nicht das Hauptprogramm Main.ts.
Du kannst über
Genau, das Hauptprogramm kann ja auf die position eines Virus zugreifen und diese auch weiterverarbeiten oder weitergeben.
Das haben wir auch schon versucht mit virus.position.x / .y aber das wird rot unterstrichen und es kommt die Meldung: "property position does not exist on type "typeofvirus". Hier der Link zu meinem Repository, vielleicht findet ihr den Fehler: https://github.com/elenajenny/EIA2
Ich nehme an, ihr habt das Problem in einer Zeile wie diese, die auskommentiert ist:
let virusposition: Vector = new Vector (Virus.position.x);
Virus
ist der Name der Klasse, damit wird nicht eine Instanz dieser Klasse referenziert. Die Instanzen aber, also die einzelnen tatsächlich erschaffenen Viren, verfügen jeweils über die Eigenschaft position
. In der Klasse wird lediglich beschrieben, dass sie darüber verfügen sollen. Ihr müsst also auf die Viren zugreifen, nicht auf deren "Bauplan".
Hallo, wir beschäftigen uns gerade mit der Umsetzung der Infektion der menschlichen Zelle vom Coronavirus. Dabei haben wir uns überlegt, dass die menschliche Zelle und der Corona Virus ungefähr die gleiche Position haben müssen, damit dass funktioniert. Dabei haben wir an this.position.x / .y [coronavirus] = this.position.x /.y [menschliche Zelle] gedacht, aber wie kann man das darstellen? Ist unser Ansatz einigermaßen richtig oder sollten wir hier einen ganz anderen Weg einschlagen, und wenn ja, hast du eine Idee für uns, die wir ausarbeiten könnten? Danke schonmal im Vorraus!