Onko jotain api käskyä jolla saisi piirrettyä viivan nopeammin kuin Line käskyllä? olisi käyttöä...
Tuskinpa. Miksi tehdä niitä useampia kun on jo yksi. Paitsi tietty jos käyttää jotain DirectX :ää tms.
LineTo-funktio on ainakin olemassa.
lainaus:
LineTo-funktio on ainakin olemassa.
Mahtaa olla joku api käsky...? saiskos sen declaret?
Tässä on määrittely:
Private Declare Function LineTo Lib "gdi32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long) As Long
Ja tässä lisätietoa: http://msdn.microsoft.com/library/default.asp?
Tosi nopea! Niin nopea, ettei jäänyt jälkeäkään viivasta.
Kuinkahan tuo koodataan VB:hen??
Jiihaa!!! Nyt toimii vihdoinkin msdn libraryt... kiitos motsillan!
Hmm... mitens tota käytetään vb:ssä... siis se alotuspiste säädetään varmaan MoveToEx:llä mutta väri... nyt meni jo hankalaks...
Tosiaan paikka täytyy määrittää MoveToEx-funktiolla. Väri taas on formin ForeColor. Onhan tuo hieman hankalampaa kuin pelkän Linen käyttäminen. Tässä on vielä esimerkki funktion käytöstä Visual Basicissa: http://www.partware.com/ebooks/api/ref/l/lineto.
Johan alkoi toimia. mutta nopeus ei juurikaan parantunut, päinvastoin. Line nurkasta nurkkaan reilut 40 µs mutta LineTo lähes 400 µs. Siis lähes kymmenkertainen aika. Testasin for-silmukalla. Missä mättää???
Ehkä ei kannata mennä merta edemmäs kalaan vaan käyttää sittenkin tuttua ja turvallista Line-komentoa. :)
Nojoo... pitää tottua siihen kun vilkkuilee vähän kyl se on ymmärrettävää kun mun 3DRautalankaMoottori nääs piirtää ~400 viivaa joka kerta on monimutkainen objekti nähkääs... :D
Aihe on jo aika vanha, joten et voi enää vastata siihen.