Hi,
ich möchte von 2 sprites die form vergleichen (ein vorgegebenes & eins vom user).
also wie SpritePixelCollision(), aber anstatt 0 und 1 als rückgabewert z.B. einen wert, zu wieviel % sich die sprites überlappen.
Formen vergleichen
Formen vergleichen
Probleme kann man niemals mit derselben Denkweise lösen, durch die sie entstanden sind.
Re: Formen vergleichen
Teste zuerst ob sie sich überhaupt überlappen mit SpritePixelCollision(),
dann kannst du an hand der Positionen der beiden Sprites die Pixel jeweils vergleichen und dann bekommst du einen Wert.
Dabei ist jedoch wichtig auf welches Sprite sich die Prozentangabe bezieht.
dann kannst du an hand der Positionen der beiden Sprites die Pixel jeweils vergleichen und dann bekommst du einen Wert.
Dabei ist jedoch wichtig auf welches Sprite sich die Prozentangabe bezieht.
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Re: Formen vergleichen
soll ich sie also mit Point() vergleichen?
ich wollte eigentlich einen drawing-bereich wegen dem geschwindigkeitsverlust vermeiden.
ich wollte eigentlich einen drawing-bereich wegen dem geschwindigkeitsverlust vermeiden.
Probleme kann man niemals mit derselben Denkweise lösen, durch die sie entstanden sind.
Re: Formen vergleichen
Ich würde sagen du legst ein Array an mit der Größe des 1. Bildes. Dort speicherst du für jeden Pixel ab, ob dort eine Kollision statfinden kann oder nicht. Dann liest du das zweite Bild aus und schaust für Pixel einzeln nach ob er, wenn er kollidieren kann, auf eine Pixel des 1. Bildes liegt, wo eine Kollsion stattfinden kann. Du speicherst die Anzahl der Zutreffenden Fälle und Dividierst (Teilst) sie durch die Zahl der vorhandenen Pixel. (Floats/Doubles verwenden)
Zum Punkte Geschwindigkeit. Schau dir mal die Beispiele für DirectDrawing an. Du findest sie in der Hilfe bei den 2ddrawing Befehlen. Das ist deutlich schneller.
Zum Punkte Geschwindigkeit. Schau dir mal die Beispiele für DirectDrawing an. Du findest sie in der Hilfe bei den 2ddrawing Befehlen. Das ist deutlich schneller.
Windows XP: PB 4.31, PB 4.4, PB 4.51
Open Suse 11.2: PB 4.4
Open Suse 11.2: PB 4.4
Re: Formen vergleichen
ich verstehe nicht ganz, wie die einzelnen pixel geändert werden, wo der befehl dafür in der repeat-schleife steht.
Probleme kann man niemals mit derselben Denkweise lösen, durch die sie entstanden sind.