Kirjoittaja: Sami
Kirjoitettu: 24.03.2003 – 24.03.2003
Tagit: grafiikka, koodi näytille, vinkki
Eli siis näin lyhyesti tämä piirtää näytölle säännölisen monikulmion kaikkine lävistäjineen.
' Tämän ohjelman ideana on piirtää säännöllisiä monikulmioita ja niille kaikki lävistäjät SCREEN 12 CLS CONST pii = 3.141592654# DIM kulma AS SINGLE DIM kulmia AS INTEGER kulmia = 10 ' Näitä viittä voi luonnollisesti muuttaa saadakseen erilaisia kuvioita aikaiseksi koko = 200 keskix = 320 keskiy = 240 vari = 4 TYPE xy x AS INTEGER y AS INTEGER END TYPE DIM kulmat(1 TO kulmia) AS xy ' Varaa taulukon kulmille kulma = (2 * pii / kulmia) / 2 ' Kiertää kuviota hieman ettei kuviot seisoisi kärjellään FOR i = 1 TO kulmia ' Laskee kulmien sijainnit kulmat(i).x = SIN(kulma) * koko + keskix ' kulman x-koordinaatin laskeminen kulmat(i).y = COS(kulma) * koko + keskiy ' kulman y-koordinaatin laskeminen kulma = kulma + (2 * pii) / kulmia ' Muuttaa keskuskulman suuruutta, jotta pisteet olisivat ympyrän kehällä tasaisin välein NEXT i FOR a = 1 TO kulmia FOR b = a TO kulmia LINE (kulmat(a).x, kulmat(a).y)-(kulmat(b).x, kulmat(b).y), vari ' Piirtää kaikki reunat ja lävistäjät NEXT b NEXT a
Ainiin, jos haluatte vai reunaviivat näkyviin korvatkaa tämä:
FOR a = 1 TO kulmia FOR b = 1 TO kulmia LINE (kulmat(a).x, kulmat(a).y)-(kulmat(b).x, kulmat(b).y), vari ' Piirtää kaikki reunat ja lävistäjät NEXT b NEXT a
tällä:
for a = 1 to kulmia - 1 line (kulmat(a).x,kulmat(a).y)-(kulmat(a+1).x,kulmat(a+1).y) next a line (kulmat(kulmia).x,kulmat(kulmia).y)-(kulmat(1).x,kulmat(1).y)
heh, aika yksinkertanen mutta silti toi on vaikee :)
jooh...
Kai tosta on jollekkin apua..
Jos ei muuten, niin voihan sitä muutella hieman hauskemmaksi ja hyödyllisemmäksi tai ainakin yrittää opetella sinin ja kosinin käyttöä... (ihan niinkuin siitä ei olisikaan vielä koodivinkkejä...)