Skocz do zawartości

lenghdirs


Rekomendowane odpowiedzi

też gówno prawda... znamy przyprostokątne i kąt, dzięki którym obliczamy x i y punktu docelowego. NIGDZIE nie wpisujemy, ani nie potrzebujemy przeciwprostokątnej odl

 

wat

jezeli by bylo jak mowisz to by wystarczylo zrobic x += przyprostokatna_x itd

 

 

 

 

Assassin dobrze gada

 

 

pro wyprowadzenie dla tardow

t8s2kp.png

 

x / len = cos(alfa)

wynika to z podstaw trygonometrii ;)

 

i imba przeksztalcenie

x = cos(alfa) * len

 

 

zobaczmy jak wyglada definicja funkcji lengthdir_x

 

return (cos(argument1*pi/180)*argument0)

 

argument1 - kat

argument0 - len

 

skad kat*pi/180? zeby zamienic kat ze stopni na radiany

 

w lengthdir_y jest to samo ale z sinusem

Odnośnik do komentarza
Udostępnij na innych stronach

Jeden z prostszych przykladow:

GML
draw_set_color(c_black)

draw_line_width(x,y,x+lengthdir_x(24,point_direction(x,y,mouse_x,mouse_y)),y+lengthdir_y(24,point_direction(x,y,mouse_x,mouse_y)),3)

draw_set_color(c_aqua)

draw_circle(x,y,16,true)

Kod narysuje kulke i lufe, ktora odwraca sie do punktu, w ktorym jest kursor myszki.

Zeby jeszcze lepiej zobrazowac funkcje lengthdir_x/y, mozesz wklepac taki kod:

GML
draw_rectangle(x,y,x+lengthdir_x(150,point_direction(x,y,mouse_x,mouse_y)),y+lengthdir_y(150,point_direction(x,y,mouse_x,mouse_y)),true)

draw_text(100,100,point_direction(x,y,mouse_x,mouse_y))

Latwo pokaze ci, jak zmienia sie wartosc tych funkcji wraz ze zmiana kierunku.

Odnośnik do komentarza
Udostępnij na innych stronach

dobra kapuje napisałem takie coś co miało sprawdzać "jak to działa":

GML
xx=x+lengthdir_x(150,point_direction(x,y,mouse_x,mouse_y))

yy=y+lengthdir_y(150,point_direction(x,y,mouse_x,mouse_y))

draw_text(x,y,string(yy))

draw_text(x,y+15,string(xx))

instance_create(xx,yy,bull)

i wyszło dobrze

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...