Mikä olisi helpoin tapa vb:ssä toteuttaa pisteen ympäriltä lähtevä säteittäinen piirto vastaava kuin qbasicikissa Ta käsky.
CLS
SCREEN 12
FOR n = 1 TO 360
DRAW "c10 bm200,200" + "ta" + STR$(n) + "r100"
NEXT n
END
Tulis analoogisen nopeusmittarin näytöksi.
Trigonometrialla:
x = 1500
y = 1500
pituus = 800
rad = Atn(1) * 4 / 180
For kulma = 0 To 360 Step 30
Line (x, y)-(x + Sin(kulma * rad) * pituus, y - Cos(kulma * rad) * pituus), 0
Next kulma
Tämä vaan sitte FromLoad:iin.
Formin AutoReDraw täytyy tietysti olla päällä.
pituus-muutuuja määrää mittarin pituuden ja kulma on kulma asteina. Jos tuon rad-muuttujan poistaa niin silloin ohjelma luulee antamiasi kulmalukuja radiaaneiksi asteiden sijaan.
kiitos!
Vielä kyseisestä asiasta, kun piirtää viisarin esim. mustalla harmaaseen taustaa ja kun viisarin asento vaihtuu piirtää taustanvärillä viivan vanhan päälle, silloin edellinen viiva ei peity kokonaan vaan jää joitakin pisteitä vanhasta viivasta näkymään.
Millä viivan paksuus line käskyssä määrätään vai pitäisikö piirtää ympyrä päälle ja täyttää se värillä? onko Circle käskyyn toteutettavissa BF niinkuin line:ssä
Kun viisarin asento muuttuu ei saisi vilkkua.
milu: viivan paksuus säädetään DrawWidth ominausuudella ja täytettyjä ympyröitä voit piirtää kun FillStyle on vbSolid.
Milu, sun pitää blittaa se viisari
Aihe on jo aika vanha, joten et voi enää vastata siihen.