problem mit Atan2

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

Doni

Betreff: problem mit Atan2

BeitragMo, Jun 06, 2005 19:09
Antworten mit Zitat
Benutzer-Profile anzeigen
hi,
bei mir ist der winkel nicht der der er sein soll!
Das ist öfters so!!!
Mach ich irgentetwas falsch?

Hier der Code:

[code]
Graphics 1024,768,32,1
HidePointer()

Dim kopf(360)
Dim oarm(360)
Dim uarm(360)
Dim bein(360)
Dim ubein(360)
Dim fus(360)

Global koerper,kopf_winkel,mausx,mausy
koerper = LoadImage("gfx\körper.bmp")
;kopf = LoadImage("gfx\kopf.bmp")
oarm(0) = LoadImage("gfx\oberarm.bmp")
uarm(0) = LoadImage("gfx\oberarm.bmp")

;MidHandle kopf
MidHandle koerper
MaskImage koerper,0,255,0

;drehen:

TFormFilter 0

For I = 1 To 360
oarm(i) = LoadImage("gfx\oberarm.bmp")
uarm(i) = LoadImage("gfx\oberarm.bmp")
bein(i) = LoadImage("gfx\bein.bmp")
ubein(i)= LoadImage("gfx\unterschenkel.bmp")
fus(I) = LoadImage("gfx\fuß.bmp")
kopf(I) = LoadImage("gfx\kopf.bmp")
RotateImage kopf(I),I
RotateImage fus(I),I
RotateImage ubein(i),i
RotateImage bein(i),i
RotateImage uarm(i),I
RotateImage oarm(i),i
MidHandle kopf(I)
Next

ClsColor 100,100,100


xpos = 500
ypos = 350
;=============================================================================================
;=============================================================================================
;=============================================================================================
Repeat
SetBuffer BackBuffer()


Color 100,0,0
mausx = MouseX()
mausy = MouseY()
Oval MouseX(),MouseY(),10,10,1



draw(xpos,ypos)
winkel(x,y)




If KeyDown(2) Then kopf_winkel = kopf_winkel + 1
Text 1,1,"winkel"+" "+kopf_winkel


Flip
Cls
Until KeyHit(1)
End
;===========================================================================================
;===========================================================================================
;===========================================================================================


Function winkel(x,y)
;kopf
kopf_winkel = (ATan2(mausy-y,mausx-x)+360)Mod 360
If kopf_winkel < 1 Then kopf_winkel = 1
If kopf_winkel > 359 Then kopf_winkel = 359

End Function



;--------------------------------------------------------


Function draw(x,y)
DrawImage oarm(27),x+1,y-16
DrawImage uarm(15),x+Sin(27)+10,y-8-Cos(27)
DrawImage fus(1),x-5,y+27
DrawImage ubein(90),x+1,y+20
DrawImage bein(90),x+2,y+5
DrawImage koerper,x,y
If kopf_winkel < 1 Then kopf_winkel = 1
If kopf_winkel > 359 Then kopf_winkel = 359
DrawImage kopf(kopf_winkel),x,y-19
DrawImage oarm(60),x+1,y-16
DrawImage uarm(0),x+Sin(60)+1,y-4-Cos(60)
DrawImage fus(1),x+7,y+25
DrawImage ubein(90),x+5+Sin(45)+8,y+7-Cos(45)+12
DrawImage bein(45),x+2,y+5
End Function


[/code]


Danke
Doni
 

Doni

BeitragMo, Jun 06, 2005 19:17
Antworten mit Zitat
Benutzer-Profile anzeigen
hat sich erledigt!
ich hab den Parameter x u. y in die Function gegeben,xpos u. ypos gehörten rein!!!

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group