Bewegungsradius für die maus Limitieren

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

 

krux

Betreff: Bewegungsradius für die maus Limitieren

BeitragSa, März 12, 2005 12:46
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich hab schon ein limit für die Mausbewegung, aber das is ecking
BlitzBasic: [AUSKLAPPEN]

MarkX = MouseX()/6.4+PosX(2)-80 ;X Koordinate
MarkY = MouseY()/4.8+PosY(2)-80 ;Y Koordinate
Mark(MarkX,MarkY) ;Funktion, die dir dort nen Fadenkreutz aus line Befehlen malt


bei einer Auflösung von 1024 x 768 kann ich die Maus in einem Quadratischen Kasten 160 x 160 um Des Punkt Posx PosY Bewegen, aber wie mache ich das dann, wenn ich ein rundes Feld haben möchte?

Lord_Vader

BeitragSa, März 12, 2005 12:59
Antworten mit Zitat
Benutzer-Profile anzeigen
sinus, kosinus!

x=cos(winkel)*länge
y=sin(winkel)*länge

Bitte Smile da gibts auch tuts für, die formel kannste ja auch noch nach belieben umstellen Smile
 

krux

BeitragSa, März 12, 2005 13:45
Antworten mit Zitat
Benutzer-Profile anzeigen
das das mit Sinus und Kosinus Geht is Schon Klat nur wie Mach ich das Meiner Maus Klar?

Lord_Vader

BeitragSa, März 12, 2005 14:19
Antworten mit Zitat
Benutzer-Profile anzeigen
if mousex>cos(winkel_variable_von forschleifeoderso)*radius and mousey>sin(winkel....)*radius then...

So ähnlich, sorry hab viel zu tun und kann jez nicht nachdenken aber so in der art is das schon richtig Smile
 

krux

BeitragSa, März 12, 2005 14:28
Antworten mit Zitat
Benutzer-Profile anzeigen
ich hab's raus und es funzt ohne zu hackeln

BlitzBasic: [AUSKLAPPEN]

MarkX = MouseX()/6.4 - 80
MarkY = MouseY()/4.8 - 80

DirM = ATan2 (MarkY,MarkX)
If DirM < 0 DirM = DirM + 360

If Sqr(MarkX^2+MarkY^2) > 80 Then
MarkX = Cos(DirM) * 80
MarkY = Sin(DirM) * 80
MoveMouse (MarkX+80)*6.4,(MarkY+80)*4.8
EndIf

MarkX = MarkX+PosX(2)
MarkY = MarkY+PosY(2)
Mark(MarkX,MarkY)

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group