declare ende%
declare rtri!, rquad!, wert!
Declare hWin&, hDlg1&, hDlg&,handleogl&,hDlg2&,hintergr&
declare B1%,B2%,B3%,B0%
proc DrawGLScene
oGL(Clear)
oGL(Origin, -1.5, 0, -6)
oGL(Color, 0, 0, 1, 1)
oGL(Rotate, 0, rtri!, 0)
oGL(Triangle, 2, 2)
oGL(Origin, 1.5, 0, -6)
oGL(Color, 1, 0, 0, 1)
oGL(Rotate, rquad!, 0, 0)
oGL(Quad, 2, 2)
oGL(Show)
rtri! = rtri! + wert!
rquad! = rquad! + wert!
if rtri! > 360
rtri!=0
endif
if rtri! < 0
rtri!=360
endif
if rquad! > 360
rquad! =0
endif
if rquad! < 0
rquad! = 360
endif
DeleteObject handleogl&
handleogl&=create(hPic,0,&OGLBMP )
StartPaint hDlg2&
drawpic hintergr&,0,0;0
drawpic handleogl&,0,0;-1
EndPaint
endproc
hWin& = @Create(Window, %hWnd, Ogl, 0, 0, 320, 200)
hDlg& = @Create(Dialog, hWin&, Button, 320, 200, 320, 200)
hDlg1& = @Create(Dialog, hWin&, Ausgabe, 0, 200, 320, 200)
hDlg2& = @Create(Dialog, hWin&, OglPic, 320,0,320,200)
B1% = @Create(Button,hDlg&,vorwärts,020,020,100,030)
B2% = @Create(Button,hDlg&,rückwärts,20,060,100,030)
B3% = @Create(Button,hDlg&,ende,20,100,100,030)
B0% = Create(Button,hDlg&,,0,0,0,0)
oGL(Init, hwin&, 0, 0, 0, 0)
oGL(PosMode, 1)
Ende% = 0
wert!=0
hintergr&=create(hnewpic,320,200,$00ffff)
WhileNot ende%
sleep 1
If Getfocus(B1%)
wert!=wert!+0.2
setfocus(B0%)
elseIf Getfocus(B2%)
wert!=wert!-0.2
setfocus(B0%)
ElseIf @Clicked(B3%)
ende%=1
EndIf
DrawGLScene
StartPaint hDlg1&
DrawText 20,20,(rtri! = + Format$(#####0 ,rtri!))
DrawText 20,50,(rquad! = + Format$(#####0 ,rquad!))
DrawText 20,80,(wert! = + Format$(###,##0.00 ,wert!))
EndPaint
EndWhile
End