Zum neuen Informatik-Forum >>
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

4 Punkte bilden ein Quadrat? (J/N)

 
Dieses Forum ist gesperrt, du kannst keine Beiträge editieren, schreiben oder beantworten.   Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.    Informatikerboard.de Foren-Übersicht -> Theoretische Informatik
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
sunshine270882



Anmeldungsdatum: 23.02.2005
Beiträge: 3
Wohnort: bei Hamburg

BeitragVerfasst am: 23. Feb 2005 18:16    Titel: 4 Punkte bilden ein Quadrat? (J/N) Antworten mit Zitat

Hallo!

ich habe gerade ein Brett vorm Kopf unglücklich

Ich möchte rechnerisch überprüfen, ob 4 gegebene Punkte im 2-dimensionalen Raum ein Quadrat bilden.

http://stud.fh-wedel.de/~mi5718/Quadrate.jpg

Die Quadrate können entweder 'normal' in einem Feld liegen (Quadrat A und B) oder diagonal um 45° gedreht (Quadrat C) oder schräg im beliebigen Winkel gedreht (Quadrat D).
Dafür habe ich die Koordinaten der Beispielquadrate aufgeschrieben und in eine andere Schreibweise gebracht, weil ich das ganze später in einem Delphiprogramm berechnen lassen möchte.
Bsp.: B hat die Koordinaten LO(3,1)= 0301, RO(3,4)=0304, LU(6,1)=0601 und RU(6,4)=0604. (Legende: L = links, R = rechts, O = oben, U = unten)
Ganzzahlige Division (in Delphi):
0301 div 100 = 3 und 0304 div 100 = 3
0601 div 100 = 6 und 0604 div 100 = 6
Damit habe ich überprüft, dass LO und RO eine Gerade parallel zum Spielfeld bilden und LU und RU ebenso.
Dann muss ich noch überprüfen, ob die Geraden durch LO und LU bzw RO und RU ebenfalls parallel zum Spielfeld liegen.
Ganzzahlige Rest-Division (in Delphi):
0301 mod 100 = 1 und 0601 mod 100 = 1
0304 mod 100 = 4 und 0604 mod 100 = 4
=>meine Bedingungen für ein Quadrat sind also alle erfüllt.

Oder habe ich etwas vergessen? Übersehen? Geht das einfacher?

Für die gedrehten Quadrate (und auch die 'normalen'):
Ich bilde nun erst mal Vektoren (die Seiten des Quadrates) aus den Punkten und bilde davon die Beträge.
Wenn die Beträge alle gleich sind, dann prüfe ich, ob der Winkel zwischen 2 Vektoren 90° beträgt, in dem ich die 2 Vektoren multipliziere und das Ergebnis gleich 0 ist, weil cos(0) = 90° ergibt.
Abgekürzt von cos alpha = (a*b)/(axb); ich muss ja nur wissen, ob der Zähler 0 ergibt, das Kreuzprodukt im Nenner interessiert nicht.

Vielleicht hat ja jemand einen Tipp oder Lösungsansatz für mich?
Ich habe auf dem matheboard.de zwar schon einen Tipp bekommen, aber der hat mich nicht weiter gebracht unglücklich
http://stud.fh-wedel.de/~mi5718/GitterpunktQuadrat.gif
Die Seitenverhältnisse a und b hab ich gesehen, aber kann damit trotzdem nichts anfangen unglücklich

Bitte keine Komplettlösung Augenzwinkern Möchte mich selbst damit noch ein wenig rumschlagen...

Freu mich auf erleuchtende Antworten smile

Liebe Grüße, Sunny
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Yahoo Messenger MSN Messenger
Pr0g



Anmeldungsdatum: 15.02.2005
Beiträge: 90
Wohnort: Düsseldorf

BeitragVerfasst am: 23. Feb 2005 18:35    Titel: Antworten mit Zitat

Zur Überprüfung von B:

Warum wandelst du die Koodinaten erst in eine Ganzzahlen um und überprüfst diese dann durch (Rest-) Division? Du könntest doch auch direkt die Koordinaten mit einander vergleichen, also für LO - RO / LU - RU die Y Werte vegleichen, für LO - LU / RO - RU die X Werte.


MfG Pr0g

_________________
http://webcraft.org/button_ani.gif http://ohs.pr0g.net/button_ani.gif
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen AIM-Name
kurellajunior
Administrator


Anmeldungsdatum: 14.02.2005
Beiträge: 214
Wohnort: Berlin-Pankow

BeitragVerfasst am: 23. Feb 2005 18:37    Titel: Antworten mit Zitat

Hallo Sunny,

schön, dass Du meiner Bitte entsprochen hast und hierher gefunden hast. Sogar den richtigen Thread! Daher Willkommen!

Überlegung 1: was passiert mit dem umschließenden Viereck, wenn das Originalviereck kein Quadrat ist?
Überlegung 2: ein "gerades" Rechteck lässt sich doch ganz einfach auf Quadrat überprüfen...

Hilft das? dann schreib Deinen Ansatz ruhig auf, damit ihn alle lesen können

Jan

_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
flixgott
Gast





BeitragVerfasst am: 27. Apr 2005 17:35    Titel: Antworten mit Zitat

es ist doch nicht schwer (mit pythgoras) den abstand zwischen zwei punkten zu bestimmen.. damit kannst du doch auch den abstand zwischen allen paaren die du mit den vier punkten bilden kannst (6stück!), ausrechen! dann kannst du doch auch überprüfen ob es ein quadrat ist..
Nach oben
Beiträge der letzten Zeit anzeigen:   
Dieses Forum ist gesperrt, du kannst keine Beiträge editieren, schreiben oder beantworten.   Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.    Informatikerboard.de Foren-Übersicht -> Theoretische Informatik Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum nicht herunterladen