Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi 3. Dreieckspunkt berechnen (https://www.delphipraxis.net/70861-3-dreieckspunkt-berechnen.html)

Börn 5. Jun 2006 22:49


3. Dreieckspunkt berechnen
 
Hallo zusammen,

ich habe folgendes Problem:

von einem Dreieck in einem Koordinantensystem (Höhe und Weite von Image-Objekt)habe ich die Koordinaten,
von 2 Punkten und die Länge der Höhe, des gesuchten 3. Punktes.

habe mich künstlerisch betätigt, um mein Problem zu verdeutlichen.

http://de.geocities.com/bjoern_bahl/...eckproblem.PNG

x1,y1,x2,y2 sowie h sind bekannt.
das Dreieck soll außerdem gleichschenklig sein, mit ver Verbindung der beiden bekannten Punkte als Basis.

die beiden Koordinaten des Roten Punktes benötige ich.


Ich weiß auch nicht, stehe irgentwie auf der Leitung und finde keine passable Möglichkeit die Koordinanten
auszurechnen... sehr frustrierend! :wall: :(


Wenn jemand eine Idee hat, würde ich mich sehr freuen.


Danke Börn :zwinker:

PS:
wusste keinen besseren Ort für die Frage...

jfheins 5. Jun 2006 23:12

Re: 3. Dreieckspunkt berechnen
 
Vektorrechnung:

a - b gibt dir den Vektor von b nach a.

du hast die Punkte A(X1), B(X2) und X(?).

- A - B = C

- C = C / 2 (==> jetzt haben wir den Punkt wo h ansetzt - von B aus !)

- C = B + C (==> und jetzt vm Ursprung)

- X = C + h ;) (so einfach ^^ - oder täusche ich mich ?)

richard_boderich 6. Jun 2006 06:37

Re: 3. Dreieckspunkt berechnen
 
ich wuerde eher mal sagen 2 x satzt des pythagoras oder?

richard

marabu 6. Jun 2006 07:17

Re: 3. Dreieckspunkt berechnen
 
Guten Morgen.

Den Mittelpunkt einer Strecke sollte jeder im Kopf bestimmen können. Natürlich geht es (auch) mit Vektorrechnung.

Zitat:

Zitat von jfheins
Vektorrechnung: X = C + h (so einfach ^^ - oder täusche ich mich ?)

Das ist nicht einfach, sondern falsch. h ist schließlich kein Vektor.

Den Ursprungsvektor P1(x1,y1) von P2(x2,y2) subtrahieren und dessen Länge halbieren - ergibt den Mittelpunkt M(x,y) der Grundlinie. Vom Vektor P3(x3,y3) kennen wir die Länge h - und da er orthogonal zur Grundlinie ist, kann man P3 durch Lösen des Gleichungssystems finden, welches aus der Betragsgleichung und dem Skalarprodukt der Vektoren (M,P3) und (P1,P2) besteht.

Jetzt aber ran an die Hausaufgaben.

Grüße vom marabu

jfheins 6. Jun 2006 09:02

Re: 3. Dreieckspunkt berechnen
 
Ja, der Mittelpunkt errechnet sich auf viele Arten ...
z.B. auch über ((x1+x2)/2 | (y1+y2)/2) ;)

Zitat:

Zitat von marabu
Zitat:

Zitat von jfheins
Vektorrechnung: X = C + h (so einfach ^^ - oder täusche ich mich ?)

Das ist nicht einfach, sondern falsch. h ist schließlich kein Vektor.

Ich ahne sehe es jetzt :( Aber war ja auch schon spät und ... :stupid:

Dann muss mans wohl mit nem Gleichungssystem und dem Skalarprodukt machen ...

Genauer gesagt,

x1*x2 + y1*y2 = 0
sqrt(x2²+y2²) = h

Jetzt aber :stupid:

Börn 6. Jun 2006 09:36

Re: 3. Dreieckspunkt berechnen
 
@all: danke für die Antworten!
@marabu: das sind keine Hausaufgaben! ich kann natürlich den Mittelpunkte berechnen, daher habe ich ihn auch nicht mit aufgeführt, aber mit den Gleichungen deines GL-Systems kann ich nichts anfangen, da ich zwar weiß, was Vektoren sind, aber nicht wirklich sehr gut damit umgehen kann.
@jfheins:
danke, dass du mir das GL-System mal in Form von Gleichungen aufgeschrieben hast, doch ich habe dazu Fragen:

- wie kommst du auf die 1. Gleichung?
- ich bin der Ansicht, dass die 2. Gleichung falsch ist! - das soll doch nen Pythagoras sein, aber x2 und y2 werden vom Koordinatenursprung berechnet, aber h beginnt nicht dort.
- wo sollen da die beiden gesuchten Größen (die Koordinaten) auftauchen?


Gruß

Börn

Klaus01 6. Jun 2006 10:01

Re: 3. Dreieckspunkt berechnen
 
Delphi-Quellcode:
// Typen
pz : TPoint;       // punkt wo die Senkrechte aufliegt
p3 : TPoint;      // Endpunkt der Geraden
m : Real;        // Steigung der Geraden
deg_cor : Real;   // Korrekturwinkel
radius: Integer;

// Berechnungen

       pz.X := p1.X + (p2.X - p1.X) DIV 2;
       pz.y := p1.y + (p2.y - p1.y) DIV 2;

       m := (p2.Y - p1.Y)/(p2.x -p1.X);

      deg_cor: radtodeg(arctan(m));

      radius := h;

      p3.x:=pz.x+round(radius*cos(( (90+deg_cor)*pi/180)));
      p3.y:=pz.y+round(radius*sin(( (90+deg_cor)*pi/180)));
Sollte auch in etwa so gehen,
Einen Halbkreis mit dem Radius h um den Mittelpunkt der Gerade schlagen
der Endpunkt liegt bei 90 Grad auf dem Halbkreis.

Grüße
Klaus

jfheins 6. Jun 2006 10:05

Re: 3. Dreieckspunkt berechnen
 
Mal schauen ...

Also ... wir haben den Vektor A, den Vektor B und h.

Errechnen:

C als Vektor von A nach B

M (als Mittelpunkt zwischen A und B)

Dann haben wir das Skalarprodukt von C mal X = 0

Und sqrt(X1² + X2²) = h

Also
C1*X1 + C2*X2 = 0 // Stichwort Skalarprodukt
sqrt(X1² + X2²) = h // Länge des Vektors ist gleich h
(C und h bekannt)

Und X ist dann ein Vektor relativ zu ... M? :angel2:
(Bin auch erst "frisch" in der Materie ...)

Börn 6. Jun 2006 10:39

Re: 3. Dreieckspunkt berechnen
 
@Klaus01!!!

super, das funzt, ich war auch schon auf die Idee mit dem Kreis gekommen, doch so wie du hätte ich das nicht
gelöst,

VIELEN DANK!! :dancer2: :dancer: :dancer2: :hello: :tongue: :hello:

auch an alle anderen, die hier ihre Antworten gepostet haben...

Gruß
Börn

dizzy 7. Jun 2006 10:18

Re: 3. Dreieckspunkt berechnen
 
Auch wenns schon gelöst ist: Ein gleichschenkliges Dreieck ist immer auch gleichwinklig, und somit sind alle Winkel 60°. Folglich kommst du auch zu der Lösung, wenn du die Strecke AB um 60° drehst. Bleibt nur noch die Frage welche Ausrichtung der Stecke (AB vs. BA) in welche Richtung... :)

Nicolai1234 7. Jun 2006 10:26

Re: 3. Dreieckspunkt berechnen
 
Zitat:

Zitat von Börn
von einem Dreieck in einem Koordinantensystem (Höhe und Weite von Image-Objekt)habe ich die Koordinaten,
von 2 Punkten und die Länge der Höhe, des gesuchten 3. Punktes.

Damit ist doch aber der Punkt gar nicht eindeutig festgelegt. Es sei denn, es ist von der "Höhe" der Mittelsenkrechten die Rede, oder?

Hawkeye219 7. Jun 2006 10:34

Re: 3. Dreieckspunkt berechnen
 
Zitat:

Zitat von dizzy
Ein gleichschenkliges Dreieck ist immer auch gleichwinklig, und somit sind alle Winkel 60°.

Das sind dann wohl eher die gleichseitigen Dreiecke, oder?

Gruß Hawkeye

dizzy 7. Jun 2006 13:14

Re: 3. Dreieckspunkt berechnen
 
Zitat:

Zitat von Hawkeye219
Zitat:

Zitat von dizzy
Ein gleichschenkliges Dreieck ist immer auch gleichwinklig, und somit sind alle Winkel 60°.

Das sind dann wohl eher die gleichseitigen Dreiecke, oder?

Gruß Hawkeye

hupps :oops: - da hast du nicht ganz Unrecht.
Hey, es war aber auch viel zu früh für mich :]

Hiermit ziehe ich meinen Beitrag offiziell zurück :mrgreen:

Börn 7. Jun 2006 15:25

Re: 3. Dreieckspunkt berechnen
 
Zitat:

Zitat von Nicolai1605
Zitat:

Zitat von Börn
von einem Dreieck in einem Koordinantensystem (Höhe und Weite von Image-Objekt)habe ich die Koordinaten,
von 2 Punkten und die Länge der Höhe, des gesuchten 3. Punktes.

Damit ist doch aber der Punkt gar nicht eindeutig festgelegt. Es sei denn, es ist von der "Höhe" der Mittelsenkrechten die Rede, oder?

es ist wie gesagt ein gleichschenkliges Dreieck, damit ist die Mittelsenkrechte = Höhe!

dizzy 7. Jun 2006 17:59

Re: 3. Dreieckspunkt berechnen
 
Nunja, 100%ig eindeutig ist das dennoch nicht: Du kannst die Mittelsenkrechte ja in beide Richtungen deiner Strecke AB ausbilden :)
(Wenn natürlich nur eine Richtung ins Image passt, wäre diese ratsam. Richtig wären jedoch beide.)

marabu 7. Jun 2006 18:31

Re: 3. Dreieckspunkt berechnen
 
Punkte im Dreieck werden gegen den Uhrzeigersinn nummeriert. Wenn die Basislinie mit P1 und P2 gegeben ist, dann sollte klar sein, wo P3 zu suchen ist - linkerhand, wenn man im Vektorraum R2 von P1 nach P2 schaut.

Was lernt ihr eigentlich in der Schule?

Nachdenkliche Grüße vom marabu

Börn 8. Jun 2006 14:45

Re: 3. Dreieckspunkt berechnen
 
...das weiß ich auch nicht,
ich hatte mir zwar nicht so viele Gedanken, mit den Vektoren gemacht,
aber aus meiner Zeichnung ging doch eindeutig hervor, was gesucht war, oder?

Börn

dizzy 9. Jun 2006 01:05

Re: 3. Dreieckspunkt berechnen
 
Zitat:

Zitat von marabu
Was lernt ihr eigentlich in der Schule?

Nachdenkliche Grüße vom marabu

In der Zeit Abi (Mathe-LK), und bislang 2 1/2 jährigem Informatikstudium hat mir dies noch keiner gesagt.

Dazu kommt:
Zitat:

Zitat von Börn
habe mich künstlerisch betätigt, um mein Problem zu verdeutlichen.

Daher nahm ich eine Illustration an. Und im generellen Fall (so wie die Frage imho gestellt war) kann man zu 2 Punkten 2 weitere mögliche Punkte finden die mit den ersten beiden ein gleichschenkliges Dreieck mit einer Höhe h bilden.
Das war eigentlich das einzige, worauf ich nur hinweisen wollte...

marabu 9. Jun 2006 06:45

Re: 3. Dreieckspunkt berechnen
 
Hallo Fabian,

ich wollte dir nicht auf die Füße treten. Nicht zuletzt durch meine Söhne bin ich desillusioniert, was die Wissensvermittlung in der Schule betrifft. Das soll jetzt auch keine Lehrerschelte sein - wäre irgendwie zu platt und gehört auch nicht hierhin.

Freundliche Grüße vom marabu


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:21 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz