Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > разработка игр, графический дизайн и моделирование > Gamedev - cоздание игр: Unity, OpenGL, DirectX
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.06.2010, 14:54   #11
260526052605
Пользователь
 
Регистрация: 31.07.2008
Сообщений: 12
По умолчанию

когда я писал код я имел ввиду
Код:
Korabl,Snaryad: TImage
260526052605 вне форума Ответить с цитированием
Старый 27.06.2010, 15:00   #12
NiCola999
Не
Участник клуба
 
Регистрация: 29.10.2009
Сообщений: 1,456
По умолчанию

наверняка у корабля есть структура, в которой есть координаты, которые определяются координатами абстрактного прямоугольника картинки. Так в чем проблема? Начальные координаты пули будут:
bullet_x = ship_x + dx;
bullet_y = ship_x + dy;

где dx, dy - смещение от центра корабля в сторону пушки откуда должен лететь снаряд
NiCola999 вне форума Ответить с цитированием
Старый 27.06.2010, 15:24   #13
somebody94
Пользователь
 
Регистрация: 27.06.2010
Сообщений: 13
По умолчанию

function AngleTo(x,y,x1,y1: Integer): Real;
begin
If (x1<x) and (y1<y) then result:=270*pi/180-arcsin(abs(y-y1)/sqrt(sqr(x-x1)+sqr(y-y1)));
If (x1<x) and (y1>y) then result:=270*pi/180+arcsin(abs(y-y1)/sqrt(sqr(x-x1)+sqr(y-y1)));
If (x1>x) and (y1<y) then result:=90*pi/180+arcsin(abs(y-y1)/sqrt(sqr(x-x1)+sqr(y-y1)));
If (x1>x) and (y1>y) then result:=90*pi/180-arcsin(abs(y-y1)/sqrt(sqr(x-x1)+sqr(y-y1)));

If (x1=x) and (y1<y) then result:=pi; // 180
If (x1=x) and (y1>y) then result:=0; // 0
If (x1<x) and (y1=y) then result:=1.5*pi; // 270
If (x1>x) and (y1=y) then result:=0.5*pi; // 90
end;

што ето значит по подробнее можна?и ешё пока не долетели до цели... а когда он приблизилься к цели... што случается тогда?)
somebody94 вне форума Ответить с цитированием
Старый 27.06.2010, 15:33   #14
somebody94
Пользователь
 
Регистрация: 27.06.2010
Сообщений: 13
По умолчанию

Никола можеш обьснить што ты хочеш сказать?
somebody94 вне форума Ответить с цитированием
Старый 27.06.2010, 22:19   #15
JTG
я получил эту роль
Старожил
 
Аватар для JTG
 
Регистрация: 25.05.2007
Сообщений: 3,694
По умолчанию

Цитата:
Код:
function AngleTo(x,y,x1,y1: Integer): Real;
begin
If (x1<x) and (y1<y) then result:=270*pi/180-arcsin(abs(y-y1)/sqrt(sqr(x-x1)+sqr(y-y1)));
If (x1<x) and (y1>y) then result:=270*pi/180+arcsin(abs(y-y1)/sqrt(sqr(x-x1)+sqr(y-y1)));
If (x1>x) and (y1<y) then result:=90*pi/180+arcsin(abs(y-y1)/sqrt(sqr(x-x1)+sqr(y-y1)));
If (x1>x) and (y1>y) then result:=90*pi/180-arcsin(abs(y-y1)/sqrt(sqr(x-x1)+sqr(y-y1)));

If (x1=x) and (y1<y) then result:=pi; // 180
If (x1=x) and (y1>y) then result:=0; // 0
If (x1<x) and (y1=y) then result:=1.5*pi; // 270
If (x1>x) and (y1=y) then result:=0.5*pi; // 90
end;
Какой кошмар. Никогда так больше не делай

Код:
function Arctan2(const dx, dy: extended): extended;
asm
  fld   dy
  fld   dx
  fptan
  fwait
end;

angle := Arctan2( -(x1-x), y1-y) + pi; //0 вверху, отсчёт по часовой стрелке
пыщь
JTG вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Присваивание параметров к обьекту (style) deltaCrame Общие вопросы C/C++ 1 25.04.2010 20:22
обьект в обьект... Olejik Общие вопросы по Java, Java SE, Kotlin 6 22.03.2010 22:23
надо сделать hidden обьекту lukoie HTML и CSS 10 02.03.2010 22:28
Обращение в i-тому обьекту Airou Компоненты Delphi 8 10.04.2008 03:14
Не могу создать обьект mrandrey Общие вопросы Delphi 6 04.06.2007 16:04