Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Programmausführung nur bei Radien über 50 möglich (Kreisbewegung)

Frage Entwicklung Assembler

Mitglied: supernicky

supernicky (Level 1) - Jetzt verbinden

09.08.2011 um 23:28 Uhr, 2720 Aufrufe, 1 Kommentar

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
Mitglied: supernicky
10.08.2011 um 05:39 Uhr
Ich glaube ich habe die Lösung gefunden...

Wenn der Punkt auf der selben X oder Y Achse ist wie der Mittelpunkt ist eine Seite des Dreiecks = 0.
Durch eine IF Abfrage habe ich bei 0 den Wert auf 0,3 geändert... Am Ergebnis ändert das nichts aber es ist immer eine Zahl größer Null.

Komisch ist das der Fehler nur bei den Radien kleiner 51 Pixel vorkommt...

Nun läuft alles rund...

Nicky
Bitte warten ..
Ähnliche Inhalte
Webbrowser
gelöst Internet Explorer 11 Desktop Benachrichtigung möglich? (2)

Frage von mexx zum Thema Webbrowser ...

LAN, WAN, Wireless
Tethering oder "mobiler Hotspot" im LAN verhindern - überhaupt möglich? (11)

Frage von kartoffelesser zum Thema LAN, WAN, Wireless ...

Windows 10
Nach Anniversary Update kein Bluetooth Pairing möglich (4)

Frage von schuhmann zum Thema Windows 10 ...

Neue Wissensbeiträge
Google Android

Cyanogenmod alternative Downloadquelle

(5)

Tipp von Lochkartenstanzer zum Thema Google Android ...

Batch & Shell

Batch als Dienst bei Systemstart ohne Anmeldung ausführen

(5)

Tipp von tralveller zum Thema Batch & Shell ...

Sicherheits-Tools

Sicherheitstest von Passwörtern für ganze DB-Tabellen

(1)

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Statische Routen mit ISC-DHCP Server für Android Devices (22)

Frage von terminator zum Thema LAN, WAN, Wireless ...

Server
gelöst Wie erkennen, dass nur deutsche IPs Zugang zu einer Website haben? (22)

Frage von Coreknabe zum Thema Server ...

Exchange Server
gelöst Migration Exchange 2007 zu 2013 - Public Folder teilweise weg (16)

Frage von Andy1987 zum Thema Exchange Server ...

Outlook & Mail
Outlook 2010 mit Exchange 2016 (15)

Frage von slansky zum Thema Outlook & Mail ...