• Страница 1 из 1
  • 1
Форум » Counter-Strike 1.6 » Сервер Counter-Strike 1.6 » Помощь по скриптингу » Координаты - Вектор (Перемещение координат от начальной точки к конечной.)
Координаты - Вектор
Дата: Понедельник, 19.02.2018, 15:34 | Сообщение # 1
Профи-ветеран
Offline
  • pro100web
  • Репутация: 60
  • Сообщений:250
  • Разработчик
  • Статус пользователя Life in San Andreas
Добрый день.
Кто сможет помочь с решением небольшого вопроса?
Имеется начальная точка X,Y,Z и конечная X,Y,Z (Имеется расстояние между двумя точками, думаю что он не нужен) нужно сдвинуть начальную точку ближе к конечной на n расстояние и получить новую точку X,Y,Z
Дата: Понедельник, 19.02.2018, 20:47 | Сообщение # 2
  • Deadly_Darkness
  • Репутация:
  • Сообщений:
  • Удаленные
Цитата pro100web ()
Добрый день.Кто сможет помочь с решением небольшого вопроса?
Имеется начальная точка X,Y,Z и конечная X,Y,Z (Имеется расстояние между двумя точками, думаю что он не нужен) нужно сдвинуть начальную точку ближе к конечной на n расстояние и получить новую точку X,Y,Z

Ну так прибавь эти n координаты плоскостей к одноименным плоскостям начальной точки
Дата: Понедельник, 19.02.2018, 21:11 | Сообщение # 3
Профи-ветеран
Offline
  • pro100web
  • Репутация: 60
  • Сообщений:250
  • Разработчик
  • Статус пользователя Life in San Andreas
Цитата Deadly_Darkness ()
Ну так прибавь эти n координаты плоскостей к одноименным плоскостям начальной точки
Если бы было все так просто, прибавить к каждой координате к примеру 2.0, то нужного эффекта это не даст, а выдаст отклонение от траектории
Дата: Среда, 21.02.2018, 19:53 | Сообщение # 4
Дух ( Новичок )
Offline
  • CSPlugin
  • Репутация: 0
  • Сообщений:2
  • Пользователь
Допустим, есть точки А - стартовая и Б - конечная. Берем точку Б, отнимаем от неё точку А и получаем отрезок.
Дальше делим полученные значения X Y Z на 2, и прибавляем к стартовой точке А. Получаем координаты середины отрезка.
Дата: Среда, 21.02.2018, 20:38 | Сообщение # 5
Профи-ветеран
Offline
  • pro100web
  • Репутация: 60
  • Сообщений:250
  • Разработчик
  • Статус пользователя Life in San Andreas
CSPlugin, я так уже вычеслил середину, разделил каждую координату отдельно, может есть вариант проще

Добавлено (21.02.2018, 20:38)
---------------------------------------------
Я ещё думаю зациклить это действие, пока расстояние самой большой координаты не будет примерно 2 юнита

Сообщение отредактировал pro100web - Среда, 21.02.2018, 20:37
Дата: Среда, 21.02.2018, 22:10 | Сообщение # 6
Дух ( Новичок )
Offline
  • CSPlugin
  • Репутация: 0
  • Сообщений:2
  • Пользователь
Код
public get_point(id) {
   new Float:end[3],Float:start[3],Float:vector[3],Float:newPoint[3],Float:distance = 100.0;
   entity_get_vector(id,EV_VEC_origin,start);
   
   for(new i=0;i<sizeof(start);i++)
      end [i]+= start [i]+ random_float(-200.0,200.0);
   
   for(new i=0;i<sizeof(start);i++) {
      vector [i]= (end [i]- start[i])/(get_distance_f(end,start));
      newPoint [i]= vector [i]* distance + start[i];
   }
}
Сообщение отредактировал CSPlugin - Среда, 21.02.2018, 22:13
Дата: Среда, 21.02.2018, 22:45 | Сообщение # 7
Бешенный кролик )
Знаток
Offline
  • CHack
  • Репутация: 12
  • Сообщений:84
  • Пользователь
  • Статус пользователя Up SourceMod
CSPlugin,
Форум » Counter-Strike 1.6 » Сервер Counter-Strike 1.6 » Помощь по скриптингу » Координаты - Вектор (Перемещение координат от начальной точки к конечной.)
  • Страница 1 из 1
  • 1
Поиск:
(threadpage)