Anne: map Funktion.. Formel für ein 6eck?

Ich möchte gerne auf eine Grafik eine 6 eckige Fläche mit Link setzen.

Ich bin auch mit der Formelerstellung gut voran gekommen. Jedoch um mein Werk zu vollenden bräuchte ich das Verhältnis von Seitenlänge zu den Diagonalen (ecke zu ecke). Ich habe bisher nichts darüber in Erfahrung bringen können und bin gleichzeitig enttäuscht über meine Mathefähikeiten. Vlt kennt Ihr ja eine bessere Möglichkeit ein 6 eck mit der mapfunktion zu bauen.

Bisher habe ich das:
coords="x1,y1,x1+Seitenlänge,y1,x6+Diagonale,y3,x1+Seitenlänge,y4,x1,y4,x6,y3"

Freu mich über jeden Tipp!

  1. Moin!

    Ich möchte gerne auf eine Grafik eine 6 eckige Fläche mit Link setzen.

    Ich bin auch mit der Formelerstellung gut voran gekommen. Jedoch um mein Werk zu vollenden bräuchte ich das Verhältnis von Seitenlänge zu den Diagonalen (ecke zu ecke). Ich habe bisher nichts darüber in Erfahrung bringen können und bin gleichzeitig enttäuscht über meine Mathefähikeiten. Vlt kennt Ihr ja eine bessere Möglichkeit ein 6 eck mit der mapfunktion zu bauen.

    Bisher habe ich das:
    coords="x1,y1,x1+Seitenlänge,y1,x6+Diagonale,y3,x1+Seitenlänge,y4,x1,y4,x6,y3"

    Ein gleichseitiges Sechseck hat seine Eckpunkte auf einem Kreis. Die Eckpunkte errechnen sich also aus den Koordinaten der Kreispunkte, die bei den Vielfachen von 360°/6 = 60°, also n*60° => 60°, 120°, 180°, 240° und 300°.

    Die Koordinaten der Kreispunkte auf dem Einheitskreis erhältst du über Sinus und Cosinus. Multipliziert mit dem Radius des Kreises erhältst du die Koordinaten in Pixeln, allerdings mit (0|0) im Mittelpunkt des Sechsecks. Fehlt also noch eine passende Verschiebung in den positiven Bereich durch Addition von mindestens dem Kreisradius auf X und Y jeder Koordinate.

    - Sven Rautenberg

    --
    "Love your nation - respect the others."
    1. @@Sven Rautenberg:

      Ein gleichseitiges Sechseck hat seine Eckpunkte auf einem Kreis.

      Nö, das gilt nicht für alle. Nur für die regulären. Solche meintest du auch (gleiche Seitenlängen UND gleiche Innenwinkelgrößen).

      Die Eckpunkte errechnen sich also aus den Koordinaten der Kreispunkte, die bei den Vielfachen von 360°/6 = 60°, also n*60° => 60°, 120°, 180°, 240° und 300°.

      Mal schnell nachgezählt: Fehlt da nicht einer? ;-)

      Live long and prosper,
      Gunnar

      --
      „Das Internet ist ein großer Misthaufen, in dem man allerdings auch kleine Schätze und Perlen finden kann.“ (Joseph Weizenbaum)
    2. @@Sven Rautenberg:

      Die Koordinaten der Kreispunkte auf dem Einheitskreis erhältst du über Sinus und Cosinus.

      Umrechnung von Polarkoordinaten in kartesische Koordinaten

      Die Polarkoordinaten der Eckpunkte eines regulären Sechsecks mit Umkreisradius r und Mittelpunkt in O sind – wie Sven schon andeutete –
        (r, k · 60° + φ₀) mit k ∈ {0, 1, …, 5},
      wobei φ₀ das Azimut eines Eckpunkts ist (0° für auf einer Seite liegendes Sechseck; 90° für auf der Spitze stehendes*)

      Live long and prosper,
      Gunnar

      * 90° hab ich zum besseren Verständnis geschrieben; es dürfen auch 30° sein. Oder -30°.

      --
      „Das Internet ist ein großer Misthaufen, in dem man allerdings auch kleine Schätze und Perlen finden kann.“ (Joseph Weizenbaum)
  2. Hallo,

    Vlt kennt Ihr ja eine bessere Möglichkeit ein 6 eck mit der mapfunktion zu bauen.

    Bisher habe ich das:
    coords="x1,y1,x1+Seitenlänge,y1,x6+Diagonale,y3,x1+Seitenlänge,y4,x1,y4,x6,y3"

    »»

    Wenn du weisst, das die Seitenlänge eines Sechsecks gleich dem Radius ist, und dir das
    mal aufmalst ....

    B----------C
         /|           \                kannst die Sache auch geometrisch lösen
        / | h          \               du startest im Punkt A
       /  |             \   /   |              \             Ax,Ay seien die Koordinaten, der Kreisradius sei r
     A -- b    M          D                       die x-Koordinaten sind erstmal einfach
      \                  /             Bx=Ax +r/2
       \                /              Cx=Bx + r
        \              /               Dx=Ax +2*r
         \            /                Ex=Cx
          F----------E                 Fx=Bx

    für die y-koordinaten brauchst du noch die Höhe h des Dreiecks:
    die Strecke AB = r
                Ab = r/2
    Summe der Kathetenqudrate = Hypotenusenquadrat ergibt: h=sqrt(r² - (r/2)²)

    By= Ay-h
      Cy= Ay-h
      Dy= Ay
      Ey= Ay+h
      Fy= Ay+h

    coords="Ax,Ay, Bx,By, ..... ,Fx,Fy"

    Gruß plan_B

    --
         *®*´¯`·.¸¸.·