gedrehtes Rechteck im Rechteck



  • Hi!

    Ich zerbrech mir schon den ganzen Abend und nachmittag den Kopf über folgendes Problem:

    geg: Ein Rechteck und ein Winkel
    ges: Rechteck, von dem die Seiten im Winkel alpha zu den Seiten des gegebenen Rechtecks liegen. Die Eckpunkte des neuen Rechtecks sollen auf den Seiten des alten Rechtecks liegen.

    Anders ausgdrückt:
    Ich suche das Rechteck, welches zu dem gegebenen ähnlich ist, und dessen Ecken auf den Seiten des gegebenen liegen.

    Ich hoffe das ist das selbe (sonst hätt ich mich schon verdacht...).

    Ich glaube, dass nciht zu jedem Rechteck und jedem Winkel solch ein Rechteck existiert, aber wenn eines existiert so sollte das auch ausrechenbar sein.
    Bloß wie macht man das?

    geg:
    |--/\----|
    | /  \   |
    |/    \  |
    |\     \ |
    | \     \|
    |  \     \
    |   \    / 
    |    \  /|
    |-----\/-|
    Nehmt an, dass alle WInkel die ihr seht rechtwinlig sind. 
    Das äußere Rechteck is das gegebene, das schräge soll ausgerechnet werden.
    

    Man kann das Problem vielleicht auch so ausdrücken:
    Wie berechne ich zu gegebener BoundingBox ein Rechteck maximalen Flächeninhalts, von dem zwei Seiten im Winkel alpha zur y-Achse stehen?

    Hab schon ewig rumgerechnet, aber ich komm irgendwie nicht dahinter, mit allen drei Fragestellungen komme ich entweder auf (für mich) nciht lösbare Gleichungsysteme, oder es kommt nur Müll raus oder ich bin ganz auf dem Holzweg. Mit Vektorrechnung hab ichs auch nich so hinbekommen...

    Eigentlich sieht das PRoblem ja so trivial aus, aber ich hab da keine Lösung für...
    Vielleicht habt ihr ne idee?

    Gruß, Maxi



  • Mal probiert die 4 Geradengleichung der Rechteckkanten aufzustellen? Die Richtungsvektoren müssten mit einer Drehmatrix mit Winkel alpha multipliziert werden.

    Dann müßten die Geradengleichungen um ein Offset verschoben werden, sodass es Schnittpunkte mit den 'alten' Rechteckkanten gibt.

    Dann hast du zumindest ein Rechteck (noch nicht das mit maximalem Flächeninhalt) was die Bedingungen erfüllt.



  • Ich glaube nicht, daß du für ein beliebiges Rechteck überhaupt ein inneres Rechteck nach deinen Vorgaben finden kannst. Das geht afaik nur für Quadrate.

    Beispiel (durch das Forum etwas verzerrt):
    geg: Rechteck 1*2, Winkel α=45°

    +-^-----+
    |/ \    |
    <   >   |
    |\ /    |
    +-v-----+
    

    Das Quadrat dort drin berührt das gegebene Rechteck an drei Seiten, ist aber meilenweit von der vierten Seite entfernt.

    Für ein Quadrat kannst du dagegen recht einfach zum Ziel kommen:

    a
    +---^---+
    |  / \  |
    | /   \ | b
    |/     \|
    <       >
    |\     /|
    | \   / |
    |  \ /  |
    +---v---+
    

    tan(α) = b/a
    a+b = l (Seitenlänge des gegebenen Quadrates)


Anmelden zum Antworten