Muuten sama kuin Ympyrädiagrammi, mutta ympyrä piirretään 3d:nä. Värityksessä tuli omat ongelmansa, jonka vuoksi värit ilmaistaan viireillä.
SCREEN 12
TYPE arvo
nimi AS STRING * 20
maara AS INTEGER
END TYPE
pii = 4 * ATN(1)
kx = 100
ky = 200
sadex = 100
sadey = 50
korkeus = 20
maara = 5
aloitus = pii
REDIM kohdat(maara) AS arvo
yht = 0
FOR i = 1 TO maara
READ kohdat(i).nimi, kohdat(i).maara
yht = yht + kohdat(i).maara
NEXT
PSET (kx, ky)
kohta = aloitus
CIRCLE (kx, ky), sadex, , , , sadey / sadex
CIRCLE (kx, ky + korkeus), sadex, , , , sadey / sadex
LINE (kx - sadex, ky)-(kx - sadex, ky + korkeus)
LINE (kx + sadex, ky)-(kx + sadex, ky + korkeus)
FOR i = 1 TO maara
vkohta = kohta
kohta = kohta + kohdat(i).maara / yht * 2 * pii
LINE (kx, ky)-(kx + SIN(kohta) * sadex, ky + COS(kohta) * sadey)
LINE (kx + SIN(kohta) * sadex, ky + COS(kohta) * sadey)-(kx + SIN(kohta) * sadex, ky + COS(kohta) * sadey + korkeus)
LINE (kx + SIN(kohta) * sadex, ky + COS(kohta) * sadey)-(kx + SIN(kohta) * sadex, ky + COS(kohta) * sadey + korkeus)
LINE (kx + SIN(kohta + (vkohta - kohta) / 2) * sadex / 2, ky + COS(kohta + (vkohta - kohta) / 2) * sadey / 2)-STEP(0, -30)
LINE STEP(1, 0)-STEP(15, 5), i: LINE STEP(0, 0)-STEP(-15, 5), i: LINE STEP(0, 0)-STEP(0, -10), i
PAINT STEP(2, 2), i, i
LOCATE i, 40
COLOR i: PRINT "Û ";
COLOR 15
PRINT kohdat(i).nimi;
PRINT kohdat(i).maara; "("; LTRIM$(RTRIM$(STR$(INT(kohdat(i).maara / yht * 100 * 100) / 100))); "%)"
NEXT
DATA Eka, 1050, Toka, 788, Kolmas, 250, Neljäs, 240, Viides, 64Laadukas.
Sou cool. Itse ehkä jaksan tuon värityksen tehdä viirien kohdalle heti kun muut projektit on valmiina.
-PC-Master-
joo... tosi 3d:tä :D
Wähän on siisti
Aihe on jo aika vanha, joten et voi enää vastata siihen.