Punkt in Dreieck
-
Black Shadow_ schrieb:
interpreter, ich würde mich sehr freuen, wenn du mich aufklären würdest, warum meine Formel quatsch sein sollte. Einfach so ne Aussage unbegründet in den Raum zu werfen halte ich für wenig sinnvoll und nicht sonderlich produktiv.
Es ist ja auch nicht so dass du die ganze Zeit offline warst - denn bereits in anderen Mathematik-Threads hast du seither dein Unwesen getrieben.
Außerdem ist es mir schleierhaft, wie folgende Formel von dir funktionieren soll:interpreter schrieb:
PS: Es ginge auch über baryzentrische Koordinaten:
p = x*p0 + y*p1 + z*p1
mit x+y+z=1Wo ist die Bedingung p2?!?!
Oder hast du hier einen Fehler gemacht und p1 statt p2 geschrieben?
Mit bitte um Aufklärung,
MfGwie's aussieht hat wohl doch luki nen fehler gemacht und die formel scheint zu stimmen, sorry.
das 2. p1 meiner formel soll natürlich p2 heißen.
-
die formel stimmt da habt ihr recht !
aber nur im kartesischen koordinaten system
hat jemand eine idee wie ich das allgemein rechnen kann ?mfg
luki
-
luki91 schrieb:
die formel stimmt da habt ihr recht !
aber nur im kartesischen koordinaten system
hat jemand eine idee wie ich das allgemein rechnen kann ?mfg
lukiwas hast du denn für ein koordinatensystem?
-
@interpreter: alles klar, deine formel kannte ich auch noch net, thx!
Und ich entschuldige mich für meinen unfreundliche Ton.
MfG,
Black Shadow
-
ich weiß nicht wie das system heist aber ich kanns erklären:
limks oben ist 0/0 . x nimmt nach rechts zu, und y nimmt nach unten zu
-
du kannst annehmen dass wenn der punkt im dreieck liegt die vektoren vom zu prüfenden Punkt P zu den Eckpunkten A,B,C die Summe der Winkel == 360° ist
a ist der Vektor A,P
b B,Pax = Ax - Px
ay = Ay - Py
bx = Bx - Px
by = By - Pyden Winkel kannst du mit
winkel = 180/PI * arccos((ax*bx+ay*by)/sqrt((ax*ax+ay*ay)*(bx*bx+by*by))
-
luki91 schrieb:
ich weiß nicht wie das system heist aber ich kanns erklären:
limks oben ist 0/0 . x nimmt nach rechts zu, und y nimmt nach unten zudas ist aber zumindest sehr isomorph zu karthesischen koordinaten. die formel von black shadow sollte also gehen. wie hast du sie denn angewandt?
-
hy de formel was i oben gepostet habe funktioniert zwar perfekt braucht aber ewig zum berechnen
also kennt jemand ein anderes verfahren ??
wenn ja erklärt es ausführlich THX
-
interpreter schrieb:
PS: Es ginge auch über baryzentrische Koordinaten:
p = x*p0 + y*p1 + z*p1
mit x+y+z=1
so erhältst du ein LGS mit 3 Gleichungen, dass du nach x,y,z auflösen kannst. Wenn 0<=x,y,z<=1 gilt, liegt p im Dreieck.wie soll denn das zu lösen sein? kannst du mir das bitte erklären? wie kriege ich die x heraus, wenn ich nur(!) p0, p1 und p2 habe und wissen will, ob p im dreieck ist?
gruß, alekz
-
Kannst auch mit Determinaten überlegen. Zuerst stellst du die Vectoren AB, AP, BC, BP, CA und CP auf. Fals sign(det(AB, AP)) = sign(det(BC, BP)) = sign(det(CA, CP)) dann liegt P im Dreieck ABC.