|
Математика Методы математического моделлирования, программирование математических концепций, роль математики в создании игр |
24.11.2007, 15:14
|
#1
|
Разработчик
Регистрация: 18.10.2007
Сообщений: 349
Написано 64 полезных сообщений (для 95 пользователей)
|
!Math:Help!
Вот: 1:
известно:a,b
неизвестно:c,d
c=Sin(a)*b
d=Cos(a)*b 2:
неизвестно:a,b
известно:c,d
а=ATan2(c,d)
b=???
как узнать b
|
(Offline)
|
|
24.11.2007, 15:38
|
#2
|
Легенда
Регистрация: 01.10.2006
Сообщений: 3,705
Написано 296 полезных сообщений (для 568 пользователей)
|
Re: !Math:Help!
Если честно, ничего не понял.
|
(Offline)
|
|
24.11.2007, 15:44
|
#3
|
Зануда с интернетом
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений (для 20,935 пользователей)
|
Re: !Math:Help!
какой вопрос - такой ответ ( в плане - может я не всё понял - переформулируй)
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
|
(Offline)
|
|
24.11.2007, 19:23
|
#4
|
Разработчик
Регистрация: 18.10.2007
Сообщений: 349
Написано 64 полезных сообщений (для 95 пользователей)
|
Re: !Math:Help!
Ну например у меня есть 2 игрока,
player1_x=22
player1_y=85
player2_x=175
player2_y=-127
Первый игрок - компьютер,он стреляет по 2-му игроку:
Что-бы узнать как ему повернуть пушку он использует ATan2
player1_fr=ATan(player2_x-player1_x,player2_y-player1_y)
А как узнать на какую дальность ему стрельнуть,есть-ли такая функция в BlitzMax
p.s.
fire_x=Sin(player1_fr)*player1_d 'player1_d - дальность стрельбы
...
В Blitz3d такая есть :
EntityDistance# ( src_entity,dest_entity)
Там для 3D
А мне для Blitz Max , для 2D
|
(Offline)
|
|
24.11.2007, 19:36
|
#5
|
Легенда
Регистрация: 01.10.2006
Сообщений: 3,705
Написано 296 полезных сообщений (для 568 пользователей)
|
Re: !Math:Help!
Ну так, т. Пифагора рулит.
|
(Offline)
|
|
24.11.2007, 19:56
|
#6
|
Разработчик
Регистрация: 18.10.2007
Сообщений: 349
Написано 64 полезных сообщений (для 95 пользователей)
|
Re: !Math:Help!
А можно-ли просто функцией
Или какой-либо формулой
|
(Offline)
|
|
24.11.2007, 20:00
|
#7
|
Модератор
Регистрация: 11.07.2007
Сообщений: 2,910
Написано 686 полезных сообщений (для 1,694 пользователей)
|
Re: !Math:Help!
Function Distance2D#(x1#,y1#,x2#,y2#)
Local nx#=x1-x2
Local ny#=y1-y2
Return Sqr((nx*nx)+(ny*ny))
End Function
Ы, ндеюсь, МоКа не обидется =)
|
(Offline)
|
|
24.11.2007, 22:22
|
#8
|
Легенда
Регистрация: 01.10.2006
Сообщений: 3,705
Написано 296 полезных сообщений (для 568 пользователей)
|
Re: !Math:Help!
Дали бы человеку тригонометрию повторить! Вот так всегда: легкотню разжуют, и в рот положат, а потом спрашивается: чтож ламеров так много?
|
(Offline)
|
|
24.11.2007, 22:33
|
#9
|
Разработчик
Регистрация: 18.10.2007
Сообщений: 349
Написано 64 полезных сообщений (для 95 пользователей)
|
Re: !Math:Help!
Да у нас ещё тригонометрия не начиналась
Я ещё в 7 классе
|
(Offline)
|
|
28.11.2007, 16:31
|
#10
|
Дэвелопер
Регистрация: 07.09.2005
Сообщений: 1,519
Написано 66 полезных сообщений (для 164 пользователей)
|
Re: !Math:Help!
Примечание: использовать формулу круга, (в данном контексте- теорему Пифагора)- надёжно, но нерационально вследствие большого количества занимающих машинное время расчётов. Зная угол-направление на цель и используя тригонометрические функции, получаем результат на порядок-другой быстрее: distance#=(Y2#-Y1#)/Sin(Angle#) или distance#=(X2#-X1#)/Cos(Angle#)
Это ж детский сад, штаны на лямках. Как раз, кажется, 7-9 класс средней школы...
P.S. Сорри за гробокопательство.
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 19:44.
|