Всего на сайте: 48
Гостей: 44
Пользователей: 4




Скачать Dota Allstars:
Dota Allstars v6.66bПоследняя версия карты
  DotA Allstars v6.66b
[ Скачать  Download ]




База Знаний:



Новые Файлы на Сайте:



Последнии Темы на Форуме:
Lokerz.com (Постов: 20)


Меню сайта

Реклама


Купить Рекламное Место

Мини-чат

Поиск

Сейчас On-Line


Наш Баннер
 
 




Главная » Статьи » База Знаний

Полярные координаты (ликбез)
Нет СкриншетаОписание:
Полярные координаты (ликбез)

Все достаточно просто. Если у вас есть две точки A и B, координаты которых нам известны. Как вычислить координаты третьей точки C, находящейся на заданном расстоянии R от точки A в направлении к точке B? Чтобы было понятнее, нарисуйте себе на бумаге точки A, B, выберите какой-то отрезок R длинна которого меньше AB. Точка C – находится на пересечении отрезка AB и окружности, проведенной из точки A радиуса R. Теперь должно быть понятнее.

Итак, зачем нам может понадобиться искать точку C? Как в примере, рассмотренном выше. Юнит-цель движется из произвольной точки A в точку B. Каждые 0.05 секунды мы должны вычислить следующее положение юнита и переместить его на какое-то расстояние в направлении точки B. Для того чтобы вычислять позицию точки C используются полярные координаты.

Итак, что такое обычные координаты ты знаешь. Они задаются двумя координатами X и Y. Но есть еще один способ записать координаты точки. Нарисуй координатные оси, выбери произвольную точку A. Соедини точку A и начало координат O. Пуская длинна AO=r, а угол, который образует AO с началом координат – равен a. Тогда полярные координаты точки называется пара чисел (r, a). Т.е. полярные координаты задаются расстоянием точки до начала координат и углом. Это просто еще один способ задать координаты точки. Можно через (X,Y) можно через (r, a).

В war3 есть встроенные функции для вычисления полярных координат. Например, можно записать такое действие
Set p = Point with polar [offset ((Center of (Playable map area)) offset by 256.00 towards 50.00 degrees)]

p – переменная типа точка. После выполнения действия, в точке p будет точка, полученная из точки ЦЕНТР КАРТЫ (Center of (Playable map area)), путем перемещения последней на расстояние 256 под углом 50 градусов. Представили?

Полярные координаты очень удобны, если требуется организовать движение по кругу или движение по произвольной прямой. Например действие цикла
For each (i) from 1 to 10, do (Actions)
Цикл Действия
Set p = ((Center of (Playable map area)) offset by i*100 towards 50.00 degrees)
<создать юнит в точке p>

Приведет к тому, что на расстоянии 100, 200, 300... -1000 от центра карты под углом 50 будет создано 10 юнитов.
Если же мы сделаем так:
For each (i) from 1 to 10, do (Actions)
Цикл Действия
Set p = ((Center of (Playable map area)) offset by 1000 towards 36*i degrees)
<создать юнит в точке p>

То будет создано 10 юнитов, расположенных на окружности радиуса 1000. Один будет под углом 36, второй 2*36... последний под углом 10*36=360=0 градусов.

Вот что такое полярные координаты точки.

Впрочем, в игре функции для вычисления полярных координат устроены не самым лучшим образом, но об этом будет сказано ниже.

Пересылаю также сценарий paint, в котором демонстрируется, как можно при помощи полярных координат рисовать отрезки и окружности.
прикрепление: paint.w3x (17 kb)

Источник: http://xgm.ru
Категория: База Знаний | Добавил: Kapitan_Morgan (07/Август/2008)
Просмотров: 1789 | Рейтинг: 0.0/0 | Сказать автору

Всего комментариев: 7
0  
7 AntiFrizzz     (04/Октябрь/2009 17:04)
мне кажется это для создания карт, рассчеты растояний между объектами, дальности стрельбы, чето такое

0  
6 marlen     (29/Июль/2009 22:44)
Это триггеры WE по моему
Вот ток я в триггерах не разбираюсь)))

-1  
5 phoen1x     (15/Июнь/2009 20:13)
БРЕД админ бан ему нехер Wc3gamer засорять

-1  
4 ADrHacker     (03/Июнь/2009 20:16)
angry

-1  
3 GaGa     (27/Май/2009 15:30)
почитал 1 абзац , нихуя не понял, перестал читать T_T

+1  
2 Anuta     (15/Май/2009 18:51)
Источник: http://xgm.ru/articles.php?name=jass_polar_coordinates

-1  
1 P3TR0V     (10/Май/2009 12:23)
че за херня?

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа
Надоела всплывающая реклама? Зарегистрируйся и забудешь о ее существовании!
Логин:
Пароль:

Реклама


Купить Рекламное Место

Случайные Обои

Случайные Файлы

Друзья Сайта
Программы для Warcraft 3 Прокачка БК, Маги, Гайды, Обзоры, Бойцовский клуб
Все для Мего задрота Warcraft 3 Карты,Dota, Гайды дота, Garena, Garena hacks, CS 1.6, CSS, Heroes Of Newerth Моды Гайды, Cкрипты, Уроки фотошоп и много чево интересного ты найдешь на нашем сайте! Всё для WarCraft и Dota AllStars
Все для игры в доту и warcraft3 Garena Hack, Хаки для Warcraft 3
Dota и все о ней Сериалы онлайн wc3garena.ru

Статистика
Счетчик тИЦ и PR
Rambler's Top100

Наш опрос
Кто вы?
Всего ответов: 4842


Copyright WC3Gamer © 2008-2010 Сообщество WarCraft 3 | Dota Allstars | Battle.net | Garena | Карты | Хаки | Новости | Гайды | Патчи | Хостинг от uCoz Все Права Защищены.
Полное или частичное использование материалов сайта www.WC3Gamer.com возможно только с установленной прямой ссылки на источник.