AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Sechseck mit Shapes füllen

Ein Thema von trigger86 · begonnen am 14. Mär 2010 · letzter Beitrag vom 23. Mär 2010
 
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#10

Re: Sechseck mit Shapes füllen

  Alt 23. Mär 2010, 08:15
Ich hab mir das Spiel grad mal auf Wikipedia angeguckt, und da steht, dass es ja schon ein Nummerierungssystem gibt - um mit dem kompatibel zu bleiben (einfache Umrechnung) kannst du auch den zweiten Basisvektor nach oben links zeigen lassen (120° Winkel zwischen den Vektoren)

Wie man das umsetzen kann? Definiere einen Typ THexPoint der die Koordinaten des schiefwinkligen Systems hat. Jede Kugel hat dann ein Feld dieses Typs, sodass die Kugel weiß wo sie liegt. Um die Kugeln zu zeichnen brauchst du eine Funktion, die diese Hex-Koordianten in kartesische umrechnet, die Formel hab ich dir im DF schon geschrieben.

Das zeichnen geht dann wie folgt:
1. Eine Schleife über alle Hex-Koordinaten die zum Sechseck gehören. Darin dann aus dem THexPoint einen TPoint machen (umrechnen in seperater Funktion) und auf das Canvas malen.
2. Die Kugen durchgehen und jede Kugel an ihre Position malen (wieder umrechnen)

Der eigentliche Vorteil des Koordinatensystems kommt aber erst später: Du kannst die Züge einfacher darstellen, und z.B. prüfen ob ein Zug gültig ist oder ob eine Kugel vom Feld gestoßen wurde.

Beim umrechnen würde ich aber noch einen Skalierungsfaktor einbauen, sonst sind die Mittelpunkte deiner Kugeln nur 1 Pixel entfernt

P.S.: Crossposts bitte verlinken
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:53 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz