Kuchendiagramm
Übersicht BlitzMax, BlitzMax NG Codearchiv & Module
Silver_KneeBetreff: Kuchendiagramm |
Fr, Mai 01, 2015 14:43 Antworten mit Zitat |
|
---|---|---|
Hi, hier eine einfache Funktion um Kuchendiagramme zu erstellen.
Die Einzelnen Stücke werden per Arrray übergeben. Dabei wird immer der End-Winkel und die Farbe angegeben. Der Anfangswinkel ist 0 und das erste Stück startet nach unten gegen den Uhrzeigersinn. Das erste Stück könnte also 90, das zweite 135, das dritte 180 und das vierte 270 als Winkel angeben. Damit ein vollständiger Kreis entsteht muss zuletzt ein Stück mit 360 als Winkel angegeben werden. Der Code funktioniert nur, wenn die Stücke in aufsteigender Reihenfolge ihrer Winkel angegeben werden und kein Winkel kleiner als 0 oder größer als 360 ist. Das Diagramm wird zeilenweise mit DrawLine aufgebaut. Bei BB waren Rects schneller als gerade Linien; wie das bei BM und den verschiedenen Treibern ist, weiß ich nicht. Kann also sein, dass man hier optimieren kann. Außerdem werden hier 2 For-Loops verschachtelt, das heißt der Code kann bei großen Radien oder vielen Stücken langsam werden. Trotzdem, viel Spaß bei euren Statistiken BlitzMax: [AUSKLAPPEN] Function DrawPieChart(x:Float, y:Float, pieces:TPieChartPiece[], radius:Float) |
||
Übersicht BlitzMax, BlitzMax NG Codearchiv & Module
Powered by phpBB © 2001 - 2006, phpBB Group