Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB.NET: Vektoreita ja polygoneja

Freeze [28.11.2011 15:02:01]

#

Hei!

Olenpa aina halunnut oppia ymmärtämään näitä graafisia monimutkaisuuksia. Olisiko jollakulla linkittää täysin tyhjentävää opasta joka ei jätä mitään kertomatta juurikin näiden asioiden vaikutuksista toisiinsa ja lie mihin nimenomaan seuraavasta koodinpätkästä:

Private Sub Create_Polygon(ByVal X As Single, Y As Single, Size As Single, ByVal Angle As Single)

    Dim Vertex(3) As D3DVECTOR2
    Dim New_Vertex(3) As D3DVECTOR2

    Vertex(0).X = -Size: Vertex(0).Y = -Size
    Vertex(1).X = Size: Vertex(1).Y = -Size
    Vertex(2).X = -Size: Vertex(2).Y = Size
    Vertex(3).X = Size: Vertex(3).Y = Size

    New_Vertex(0).X = X + (Vertex(0).X * Cos(Angle * (PI / 180)) - Vertex(0).Y * Sin(Angle * (PI / 180)))
    New_Vertex(0).Y = Y + (Vertex(0).X * Sin(Angle * (PI / 180)) + Vertex(0).Y * Cos(Angle * (PI / 180)))

    New_Vertex(1).X = X + (Vertex(1).X * Cos(Angle * (PI / 180)) - Vertex(1).Y * Sin(Angle * (PI / 180)))
    New_Vertex(1).Y = Y + (Vertex(1).X * Sin(Angle * (PI / 180)) + Vertex(1).Y * Cos(Angle * (PI / 180)))

    New_Vertex(2).X = X + (Vertex(2).X * Cos(Angle * (PI / 180)) - Vertex(2).Y * Sin(Angle * (PI / 180)))
    New_Vertex(2).Y = Y + (Vertex(2).X * Sin(Angle * (PI / 180)) + Vertex(2).Y * Cos(Angle * (PI / 180)))

    New_Vertex(3).X = X + (Vertex(3).X * Cos(Angle * (PI / 180)) - Vertex(3).Y * Sin(Angle * (PI / 180)))
    New_Vertex(3).Y = Y + (Vertex(3).X * Sin(Angle * (PI / 180)) + Vertex(3).Y * Cos(Angle * (PI / 180)))

    Vertex_List(0) = Create_TLVertex(New_Vertex(0).X, New_Vertex(0).Y, 0, 1, D3DColorRGBA(255, 255, 255, 0), 0, 0, 0)
    Vertex_List(1) = Create_TLVertex(New_Vertex(1).X, New_Vertex(1).Y, 0, 1, D3DColorRGBA(255, 255, 255, 0), 0, 1, 0)
    Vertex_List(2) = Create_TLVertex(New_Vertex(2).X, New_Vertex(2).Y, 0, 1, D3DColorRGBA(255, 255, 255, 0), 0, 0, 1)
    Vertex_List(3) = Create_TLVertex(New_Vertex(3).X, New_Vertex(3).Y, 0, 1, D3DColorRGBA(255, 255, 255, 0), 0, 1, 1)

End Sub

Metabolix [28.11.2011 15:28:09]

#

En ymmärrä kysymystä. Haluatko oppaan
a) 2D-matematiikasta (tasogeometriasta),
b) 3D-matematiikasta (avaruusgeometriasta),
c) 3D-grafiikan alkeista,
d) Direct3D-ohjelmoinnista vanhentuneella VB6:lla, vai
e) Direct3D-ohjelmoinnista VB.NETillä?

Freeze [28.11.2011 15:33:44]

#

noh muokkasit.

2D matematiikasta ja sen toteuttamisesta DX:llä

Freeze [28.11.2011 15:40:34]

#

alustallahan ei oo loppujen lopuks mitään väliä tarkoituksissani, on se sitten C tai VB tai mikä tahansa. Se nyt vaan on.. helpompi :)

Vastaus

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

Tietoa sivustosta