Rechteck spalten



  • Hallo

    ich habe ein Achsenausgerichtetes Rechteck ABCD (gegen den Uhrzeigersinn).
    Nun möchte ich das Rechteck entlang einer Strecke EF teilen. Die Beiden
    Punkte EF liegen auf dem Rand des Rechecks und sind entweder zu AB oder BC
    parallel.

    z.b.

    A-------------D
    |             |
    E-------------F
    |             |
    |             |
    B-------------C
    

    oder

    A----E--------D
    |    |        |
    |    |        |
    |    |        |
    |    |        |
    B----F--------C
    

    Am ende sollen wieder 2 Rechecke dabei rauskommen, die ebenfalls gegen den
    Uhrzeigersinn "gewindet" sind. (hier fachwort einsetzen).

    Also im Beispiel 1 AEFD und BCFE, im Beispiel 2 ABFE und EFCD

    mein erster Ansatz war, mithilfe des Skalarprdouktes (a-b)*(e-f)
    herrauszufinden, zu welcher Seite die Strecke parralel ist.
    Dass scheint aber irgentwie nicht zu klappen.

    Zur Windungsrichtung fiel mir da nur das Kreuzprodukt ein um je nach
    vorzeichen des z-wertes die richtung zu bestimmen:
    n = (a-b) x (a-e)
    n.z > 0 CCW
    n.z < 0 CW



  • kästchen schrieb:

    mein erster Ansatz war, mithilfe des Skalarprdouktes (a-b)*(e-f)
    herrauszufinden, zu welcher Seite die Strecke parralel ist.
    Dass scheint aber irgentwie nicht zu klappen.

    Vergleichst du eventuell eine Gleitkommazahl mit 1 bzw. 0? Das wird nicht klappen, da Gleitkommazahlen wegen Rundung fast immer minimale Abweichungen vom gewünschten Wert haben. Definiere stattdessen eine kleine Toleranz, die die Gleitkommazahl von 1 bzw. 0 abweichen kann.
    geloescht



  • würd ich nie tun 🙂

    ich teste nur welcher batrag größer ist.
    ein wert sollte um die 0 liegen, der andere um |AB|²
    was größer ist, ist parallel



  • Denk ich zueinfach wenn ich dir vorschlage um rauszufinden ob ein Punkt parallel zur einen achse liegt zu prüfen ob die parallele nen punkt x = 0 hat?



  • hää?

    seit wann ist ein punkt parallel?


Anmelden zum Antworten