Kirjautuminen

Haku

Tehtävät

Keskustelu: Koodit: VB6: Spiraalin luonti

moptim [25.03.2007 12:45:05]

#

Juu. Tämmösenpä tässä tekaisin. Käyttää siniä ja kosinia spiraalin luomiseen. HUOM! Jos ympyrä luodaan For-loopilla (0 to 359) jossa lasketaan jokaiselle kulmalle x- ja y-arvot sinillä ja kosinilla kertoen ne halutulla säteellä, tässä luupataan vaikka kuinka pitempään ja säde kasvaa hiljalleen!

Äkkiäpä joku tästä varmaan vetäisee pyörivän version.

EDIT: sini ja kosini taulukoitu.

EDIT2: ... ku eipäs ookkaa.

Const pi As Double = 3.14159265358979

Private Sub Form_Load()
  Me.ScaleMode = vbPixels
  Me.AutoRedraw = True
  Me.Width = 512 * Screen.TwipsPerPixelX
  Me.Height = 512 * Screen.TwipsPerPixelY
  Me.Caption = "Spiraali by KoTW"
  Me.Show
  DoEvents
  PiirraSpiraali
End Sub

Private Sub PiirraSpiraali()
  ' Itse spiraalin piirto
  Dim sade As Double
  Dim x As Single, y As Single
  Dim prevx As Single, prevy As Single
  Dim sine(359) As Single, cosine(359) As Single
  Dim i As Integer
  prevx = 256: prevy = 256
  ' Eli previous x ja previous y

  For i = 0 To 359
    sine(i) = Sin(degtorad(i))
    cosine(i) = Cos(degtorad(i))
  Next i
  ' taulukoidaan sinit ja kosinit, kun TGunner niin vaati

  For ang = 0 To degtorad(360 * 5) Step degtorad(1)
    x = (cosine(degtorad(ang)) * sade) + 256
    y = (sine(degtorad(ang)) * sade) + 256
    Line (prevx, prevy)-(x, y)
    prevx = x
    prevy = y
    sade = sade + 0.1
    a = Timer + 1
  Next ang
End Sub

Private Function degtorad(deg As Double) As Double
  degtorad = deg * pi / 180
End Function

tgunner [26.03.2007 18:35:15]

#

Nyt ne trigonometriset funktiot omiin taulukkoihinsa!

moptim [27.03.2007 19:47:17]

#

Kelpaako nyt? Mitä vielä haluaisitte?
(e ole enää)

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta