Programmausführung nur bei Radien über 50 möglich (Kreisbewegung)
Hallo,
ich habe ein Programm geschrieben bei dem man einen Punkt wahllos auf der Form platzieren kann.
Bei jedem Klick wird dieser Punkt genau ein Grad weiter verschoben. Da ich nicht mit vorberechneteten Zahlen arbeiten will habe ich folgendes ersonnen.
Im Klick-Ereignis der Form:
Auslesen der X und Y Position des Punktes.
Entfernung zum Mittelpunkt ermitteln und den dazu gehörigen Winkel (siehe mein langer Thread vorher!!!!!!)
Winkel + 1
Alten Punkt löschen und neuen zeichnen (per GDI)
Neue Koordinaten des Punktes speichern
Das ganze klappt wirklich gut, aber leider habe ich das Problem sobald der Radius 50 oder kleiner ist, nach ein paar "Bewegungen" sich nichts mehr tut auf dem Schirm.
Bei Radien ab 51 und größer läuft alles fehlerfrei.
Ich lasse mir in einer Textbox einzelne berechnete Werte anzeigen und kann dort keinen Fehler entdecken. Er hört halt einfach auf.
Zum Programm:
Alle Variablen sind 32bit Werte. (DWORD)
Alle Berechnungen werden komplett mit der FPU berechnet.
Rückgabe der berechneten Werte erfolgt als Integer (Ganzzahl)
Falls jemand eine Idee haben könnte woran es liegt währe ich wie immer sehr dankbar.
MfG
Nicky
ich habe ein Programm geschrieben bei dem man einen Punkt wahllos auf der Form platzieren kann.
Bei jedem Klick wird dieser Punkt genau ein Grad weiter verschoben. Da ich nicht mit vorberechneteten Zahlen arbeiten will habe ich folgendes ersonnen.
Im Klick-Ereignis der Form:
Auslesen der X und Y Position des Punktes.
Entfernung zum Mittelpunkt ermitteln und den dazu gehörigen Winkel (siehe mein langer Thread vorher!!!!!!)
Winkel + 1
Alten Punkt löschen und neuen zeichnen (per GDI)
Neue Koordinaten des Punktes speichern
Das ganze klappt wirklich gut, aber leider habe ich das Problem sobald der Radius 50 oder kleiner ist, nach ein paar "Bewegungen" sich nichts mehr tut auf dem Schirm.
Bei Radien ab 51 und größer läuft alles fehlerfrei.
Ich lasse mir in einer Textbox einzelne berechnete Werte anzeigen und kann dort keinen Fehler entdecken. Er hört halt einfach auf.
Zum Programm:
Alle Variablen sind 32bit Werte. (DWORD)
Alle Berechnungen werden komplett mit der FPU berechnet.
Rückgabe der berechneten Werte erfolgt als Integer (Ganzzahl)
Falls jemand eine Idee haben könnte woran es liegt währe ich wie immer sehr dankbar.
MfG
Nicky
Please also mark the comments that contributed to the solution of the article
Content-ID: 171224
Url: https://administrator.de/contentid/171224
Printed on: October 4, 2024 at 05:10 o'clock
1 Comment