Kollision zwischen 2 Strecken berechnen



  • Ishildur schrieb:

    Also das mit dem Hardcoden lassen wir doch besser!!
    Es gibt mehrere Tausend Hindernisse...

    Hallo?

    Er hat vorgeschlagen, Du sollst das Auflösen des LGS nach den Variablen einmal durchrechnen und die entstehenden Ausdrück hart kodieren. So nach dem Motto:
    r = a1*a2+b2-b1 oder so, damit Du nicht jedesmal im Code ein LGS lösen mußt.

    Die Parameter sollst Du natürlich nicht fest reinschreiben. 🙄

    MfG Jester



  • hehe ich frag mich gerade was man da noch drunter verstehen kann

    sone volladder bauen oder so 😃



  • @Jester
    Auch Hallo?
    Hast du einmal daran gedacht, dass diese Hindernisse möglicherweise nicht statisch sind? Ach ja, ebenfalls 🙄



  • also.. mit statisch ist nicht gemeint ein seperates ergebnis zu programmieren

    sondern einfach mal die variablen in ihrer rohform zur loesung zu bringen

    jedenfalls das alles so umstellen bis sich ein ergebnis ergibt was man irgendwo fuer den allegemeinen fall uebernehmen kann und nur so einsetzt

    was dann auch mit tabellarischer loesung bezeichnet wird

    man setze also p1+blah=p3+blah
    dann meinetwegen zu einem homogenen linearen gleichungssystem verwandeln

    indem man r1 als formel rausfidet

    dann in die zweite gleichung *yawn*

    naja du wirst das schon schaffen

    *thumbs up*



  • @lookias
    Hallo lookia ich danke dir vielmals für deine Postings!!
    Du aber ich habe da noch eine Frage, folgendes hat mich etwas verwirrt...

    bessere leosung :
    die jeweiligen x und y werte vergleichen
    und zwar ob x3 oder x4 zwischen x1 und x2 liegen
    dann das selbe fuer die y werte
    ist das der fall scheniden sie sich

    Bist du sicher, dass das funktioniert? Also ich habe da so meine Zweifel!
    Stell dir mal folgende Situation vor:
    L1 = {0,0},{100,100};
    L2 = {10,5},{20,5};

    Diese zwei Linien haben nach deinem Gleichungssystem einen Schnittpunkt... 🙄



  • ja timmt war ne fixe idee und auch garnicht richtig

    was ich aber dachte bis vor einer minute 🙂



  • Gibt es denn eine Möglichkeit, herauszufinden, ob zwei strecken sich kreuzen, wenn bekannt ist, dass eine der Beiden entweder waagrecht oder senkrecht ist?



  • Ishildur schrieb:

    @Jester
    Auch Hallo?
    Hast du einmal daran gedacht, dass diese Hindernisse möglicherweise nicht statisch sind? Ach ja, ebenfalls 🙄

    👎
    Sorry Kindchen, aber das muß ich mir von Dir nicht bieten lassen.

    Denk einfach mal ein bißchen drüber nach... und wenn wenn es nicht zur Lösung Deines Problems zu passen scheint, dann kannst Du getrost davon ausgehen, daß Du noch nicht genug gedacht hast.



  • Um's vielleicht nochmal zu verdeutlichen:

    Jemand braucht ne Lösung, für folgendes Problem y=m*x+c dabei sind y,m,c gegeben. Wie kriegt man jetzt das x?

    Naja, man rechnet mal (angen. m!=0)
    x = (y-c)/m.

    Und das kann Du hardcoden als Lösung Deines Problems.
    Dann mußt Du das Umstellen der Gleichung nicht im Programm bewerkstelligen. Genau das kannst Du auch auf Deine Situation übertragen und so war's gemeint.

    Ich frag mich ehrlich gesagt für wie dumm Du uns hältst daß wir Dir vorschlagen die Lösungen hart zu kodieren oder Dich auf statische Hindernisse einzuschränken. Vielleicht solltest Du uns einfach ein bißchen mehr zutrauen.

    MfG Jester



  • @Jester

    Weisst du, ich habe, bevor ich ins Forum geposted habe, versucht meinen Mathematiklehrer um Rat zu bitten. Doch der hat mich nicht ernst genommen! Er konnte sich einfach nicht vorstellen, dass alle Werte variabel sind und hat mir "zum Fünhundertsten Mal!!!" klarmachen wollen, dass man bestimmte Werte einfach kennen muss, und diese nicht variabel sein können. Klar habe ich versucht, im klarzumachen, dass ich diese Werte zur gegebenen Zeit schon kennen werde, doch eben noch nicht zum Zeitpunkt der Formelerstellung. Das wahr zuviel für ihn.Mir ist schon klar, dass mein Mathelehrer anscheinend noch nie in Berührung einer Programmiersprache gekommen ist, und seine Meinung auf diesen Umstand zurückzuführen ist. Nun habe ich angenommen, dass du genauso denkst, doch da habe ich mich gewaltig geirrt und dir Unrecht getan, und dafür entschuldige ich mich!!

    P.S.
    Die Formel y = m*x+c scheint unter gewissen Umständen nicht ganz einwandfrei zu funktionieren, denn wenn die Linie genau Senkrecht ist, dann ist doch m = ∞, oder habe ich da etwas durcheinander gebracht?



  • Richtig, du musst die Geradengleichen in Vektorform (für Strecken sind dann die Parameter eingeschränkt) nehmen. Das andere suckt, weil es immer ungenauer wird, je senkrechter deine Strecke/Gerade ist.

    Google: Strecke, Gerade, Vektorform, Schnittpunkt
    Ich find da lauter interessante Sachen. 🕶 👍



  • jep das liegt an der andren art der darstellung bei der nromalform der geradengeichung arbeitet man nicht mit vektoren
    da x aber ein konstanter wert ist wenn g senkrecht auf der x achse steht
    funktioniert das nicht

    diese darstellung wird meoglich indem man mit vektoren da rangeht

    das hat dann die form (x,y)+t*(0,y') hier ist der wert x konstant und hat den wert x

    jetzt nur noch rein formal die beiden geradegleichungen gleichsetzen

    und nach formeln ausschauhalten welche die loesung praesentieren

    vorsicht ist geboten wenn die beiden punkte welche die gerade repraesentieren gleich sind
    weil du dann mit sicherheit an irgendeiner stell in deiner leosung durch 0 dividierst



  • Der Lösungsansatz den ich oben gepostet habe benutzt ja die andere (geschicktere) Geradenform. Wenn Du mit dem Auflösen nicht so zurecht kommst frag einfach nochmal nach.
    Und nix für ungut. 😉


Anmelden zum Antworten