AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Dreieck oder Stern zeichnen?
Thema durchsuchen
Ansicht
Themen-Optionen

Dreieck oder Stern zeichnen?

Ein Thema von Seras · begonnen am 23. Mai 2006 · letzter Beitrag vom 11. Jun 2006
Antwort Antwort
Seras

Registriert seit: 14. Dez 2005
12 Beiträge
 
Delphi 2006 Professional
 
#1

Dreieck oder Stern zeichnen?

  Alt 23. Mai 2006, 07:03
Hallo,

ich habe gerade ein ziemliches Brett vor dem Kopf.
Ich möchte einen 5-Eckigen Stern zeichnen.
Im Prinzip brauche ich dafür 10 Punkte und wollte dann per
image321.Bitmap.Canvas.Polygon(MyPointArray);

den Stern in ein Image32 zeichnen.

Das Problem: Wie berechnet man die 10 Punkte?
Der Stern soll 200x200 Pixel groß sein.
Der Stern soll folgende Form haben:
http://images.krazyyak.com/itunesrating.png

Kann mir irgendjemand einen Tipp geben wie ich an die 10 Punkte komme?

Ich weiß, das die Innenwinkel der Spitzen jeweils 36° betragen müssen.
Ich habe mal gedacht, den Stern in 5 Dreiecke aufzuteilen, quasi wie ein Pentagramm. Im Prinzip brauche ich ja nur einmal ein Dreieck zu errechnen, die anderen Punkte ergeben sich dann.

Ich weiß hier aber nur, das der Winkel oben 36° und die Winkel in den Seiten je 72° betragen.

Außerdem weiß ich, das die Seiten zusammen 200 Pixel ergeben müssen - da ich aber nicht den Wert einer Seite habe bringt mit der Satz des Pythagoras hier nichts, da ich ja mindestens c oder a/b haben müsste, ich aber nur die Winkel und die Gesamtlänge aller Seiten habe.

Danke schonmal für alle Sachdienlichen Hinweise!
  Mit Zitat antworten Zitat
Flare

Registriert seit: 26. Jan 2006
Ort: Leipzig
529 Beiträge
 
Delphi 7 Professional
 
#2

Re: Dreieck oder Stern zeichnen?

  Alt 23. Mai 2006, 18:03
Du hast einfacherweise 2 Kreise, einen für die äußeren Punkte, einen für die Inneren.

Dann ist bei 90° der erste Stern,
bei (90 + 360/5)° der Zweite,
bei (90 + 2*360/5)° der Dritte,
usw...

Die inneren Punkte liegen ja immer zwischen 2 dieser Pu8nkte auf dem äußeren Kreis, nur halt auf dem Inneren...und ich hoffe, dass du mit sin() und cos() umgehen kannst!

Den Rest darfst du selber überlegen

Es kann auch sein, dass es einfachere Methoden gibt, mir ist aber eben nur diese Eingefallen.


Flare
Willy Scheibel
  Mit Zitat antworten Zitat
Benutzerbild von Pinki
Pinki

Registriert seit: 19. Mai 2006
Ort: Mülheim an der Ruhr
49 Beiträge
 
Delphi 5 Enterprise
 
#3

Re: Dreieck oder Stern zeichnen?

  Alt 25. Mai 2006, 19:03
Hallo Willy,
hier ist ein kleines Beispiel mit Sternzeichnen.Die Berechnung der Punkte am Aussenkreis ist recht einfach für inneren Kreis fällt etwas schwieriger.Mit Tan Cos Sin und Ctg und co sowie Strahlengesetz geht auch.
Project als Anhang

Grüss
Angehängte Dateien
Dateityp: rar stern_165.rar (139,5 KB, 88x aufgerufen)
  Mit Zitat antworten Zitat
Flare

Registriert seit: 26. Jan 2006
Ort: Leipzig
529 Beiträge
 
Delphi 7 Professional
 
#4

Re: Dreieck oder Stern zeichnen?

  Alt 26. Mai 2006, 12:56
Dein Stern sieht gut aus

Jetzt nur die Frage: Warum hast du es indirekt mir geschrieben, wenn es doch eigentlich Seras wissen wollte...oder heißt er auch zufällig Willy?


Flare
Willy Scheibel
  Mit Zitat antworten Zitat
Seras

Registriert seit: 14. Dez 2005
12 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Dreieck oder Stern zeichnen?

  Alt 11. Jun 2006, 03:01
Danke schön! Das war das was ich suchte
  Mit Zitat antworten Zitat
Antwort Antwort


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 23:37 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz