Stern zeichnen

  • Antworten:1
Manuel Pauser
  • Forum-Beiträge: 3

29.12.2012, 12:36:05 via Website

Hallo!
Ich muss einen Stern zeichnen und habe es bisher nur geschafft ein Pentagramm zu zeichnen. Könnte mir jemand helfen und sagen wie ich den Stern zeichnen muss. Mein bisheriger Code sieht so aus:

for(int i = 0; i < 10; i++)
{

float hilf = (float) (i*72*Math.PI/90);
x = (float) (mX+radius*Math.sin(hilf));
y = (float) (mY+radius*Math.cos(hilf));

if(i == 0)
{
path.moveTo(x, y);
}
else
{
path.lineTo(x, y);
}
}
canvas.drawPath(path, p);

Antworten
Andreas Weichert
  • Forum-Beiträge: 287

29.12.2012, 18:47:57 via Website

Interessange Aufgabe!

Du brauchst 2 Kreise - einen für die äußeren Spitzen und einen für die inneren Ecken.
Bei einem Stern mit n Spitzen werden die 360 Grad in X=360/n Segmenten aufgeteilt.
Die Segmente vom inneren und äußeren Kreis sind um X/2 versetzt.

Kann man mit Text so schlecht erklären. Zeichne einfach mal 2 Kreise ineinander und zeichne einen Stern hinien - dann wird Dir der Algorithmus schon klar. Müßte ganz einfach sein.

Antworten