Jump to content


Photo

Вопросы по скриптингу

Arma3 как плотформа для созда Скритпы

  • Please log in to reply
1486 replies to this topic

#541 OFFLINE   vlad333000

vlad333000

    Полковник

  • Пользователи
  • 3224 posts
  • Откуда:Кострома

Posted 31 January 2017 - 13:14

Ilias, ну вы даете, это же просто:
b = a + V * t
b - новая точка (вектор x, y, z)
a - начальная точка (вектор x, y, z)
V - скорость (вектор x, y, z)
t - время (Скаляр)
Найти вектор V можно как (На синтаксисе армы):
(vectorNormalized [x2 - x1, y2 - y1, z2 - z1]) vectorMultiply c
x2, y2, z2 - конечные координаты
x1, y1, z1 - начальные координаты
c - линейная скорость

Находите V, после подставляете его в уравнение выше (Реализовав его на синтаксисе Армы) и подставляете время, которое прошло с момента старта - получаете точку в которую попал объект из начальной точки и при заданной скорости и времени

Edited by vlad333000, 31 January 2017 - 13:18.

  • 1

#542 OFFLINE   Ilias

Ilias

    Прапорщик

  • Пользователи
  • 512 posts

Posted 31 January 2017 - 13:44

 

спасибо,

не (, трудно слово подобрать, ' не ' )  как скорость с направлением ,| два определённо очерёдных набора координат  можно написать как [|n|,|n|,|n|],

не подскажете что скрыто под " vectorNormalized " ?


Edited by Ilias, 31 January 2017 - 13:52.

  • 0

#543 OFFLINE   vlad333000

vlad333000

    Полковник

  • Пользователи
  • 3224 posts
  • Откуда:Кострома

Posted 31 January 2017 - 13:54

Ilias, пишите нормально, а не загадками из несвязных словосочетаний
Ilias, vectorNormalized - нормализация вектора - приведение его к виду [0-1, 0-1, 0-1], так что бы его длинна была равна 1 (Получить простой вектор направления, без влияния расстояния и скорости)

Edited by vlad333000, 31 January 2017 - 13:55.

  • 0

#544 OFFLINE   Ilias

Ilias

    Прапорщик

  • Пользователи
  • 512 posts

Posted 31 January 2017 - 14:02

Ilias, пишите нормально, а не загадками из несвязных словосочетаний
Ilias, vectorNormalized - нормализация вектора - приведение его к виду [0-1, 0-1, 0-1], так что бы его длинна была равна 1 (Получить простой вектор направления, без влияния расстояния и скорости)

тоесть вектор ( [ |n|,|n|,|n| ] |1) значит вектор от [0,0,0] к точке |1| (длинна которого 1)

 

и первое уравнение выполнять для каждой координаты верно?


Edited by Ilias, 31 January 2017 - 14:06.

  • 0

#545 OFFLINE   vlad333000

vlad333000

    Полковник

  • Пользователи
  • 3224 posts
  • Откуда:Кострома

Posted 31 January 2017 - 14:10

Ilias, что такое lnl - что вы под этим понимаете? (Это неизвестное для программирования сокращение)
Нормальный вектор в графическом виде это вектор от центра окружности радиусом 1 к любой ее точке
Ilias, первоу уравнение выполняется для каждой точки времени в которой вам нужно узнать куда приперся объект
  • 0

#546 OFFLINE   Ilias

Ilias

    Прапорщик

  • Пользователи
  • 512 posts

Posted 31 January 2017 - 14:15

Ilias, что такое lnl - что вы под этим понимаете? (Это неизвестное для программирования сокращение)
Нормальный вектор в графическом виде это вектор от центра окружности радиусом 1 к любой ее точке

_ = anything;

| _ | = something that ( |array|==[0,3,5..] , |array| != 'array' )

n=number;a=array;t=text;st=state(bool);sc=script;d=display;di=dialog;c=control;..

 

"Нормальный вектор в графическом виде это вектор от центра окружности радиусом 1 к любой ее точке"

технически записываются ведь координаты (не углы)

 

тоесть:

создаём вектор с двух точек,

нейтрализуем его длину (|n0|*1==|n0|, вектор с длинной 1 ([0...,0...,0...] показывает соотношение сторон),

увеличиваем длину на скорость,на время ,

добавляем к точке (тут ?)

 

(в смысле " b = a + V *" 'a' ведь [|n|,|n|,|n|] а не |n| то есть уравнений будет 3 или использовать уравнение сложения векторов (или результат один (тут если туплю сорь)))


Edited by Ilias, 31 January 2017 - 14:31.

  • 0

#547 OFFLINE   vlad333000

vlad333000

    Полковник

  • Пользователи
  • 3224 posts
  • Откуда:Кострома

Posted 31 January 2017 - 14:27

Ilias, не очень хорошие сокращения вы используете, их легко спутать с переменными и человек, не знающих ваших сокращений, не поймет что вы имели ввиду
И мое определение противоречит этому? Вектор это и есть координата (Одна), вектор от центра окружности с радиусом 1 к любой ее точки - это всего лишь то как графически выглядит данный вектор, что бы не было никаких непониманий (Человеку легче понять графику, чем определения из слов)
Да, превращаем его длинну в 1, затем меняем его длинну на линейную скорость - получаем скорость разбтую по всем осям пространства; и умножаем на время - получаем смещение - то на сколько точка переместилась за это время, прибавляем начальную точку - получаем конечную
  • 0

#548 OFFLINE   Ilias

Ilias

    Прапорщик

  • Пользователи
  • 512 posts

Posted 31 January 2017 - 14:39

Ilias, не очень хорошие сокращения вы используете, их легко спутать с переменными и человек, не знающих ваших сокращений, не поймет что вы имели ввиду
И мое определение противоречит этому? Вектор это и есть координата (Одна), вектор от центра окружности с радиусом 1 к любой ее точки - это всего лишь то как графически выглядит данный вектор, что бы не было никаких непониманий (Человеку легче понять графику, чем определения из слов)
Да, превращаем его длинну в 1, затем меняем его длинну на линейную скорость - получаем скорость разбтую по всем осям пространства; и умножаем на время - получаем смещение - то на сколько точка переместилась за это время, прибавляем начальную точку - получаем конечную

названия переменных минимализированно только структурированные факты и своя информация на предусмотренных местах

//начало любой переменной это её тип, большая часть локальных так и остаются (_a,_n,_n1..

Hidden text

ни разу ещё не запутывался или разбирался что в переменной

 

все возможные вектора от 0 образуют круг, но координаты в системе координат, без неё не было бы векторов и круга тоесть:

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытое содержание

разве нет?

 

всё таки прибавлять к точке:

_vsp=[|n|,|n|,|n|]; //vector speed;
_p=[|n|,|n|,|n|];
{_p set[_x,_p select _x+(_vsp select _x)]}foreach[0,1,2]

?


Edited by Ilias, 31 January 2017 - 14:57.

  • 0

#549 OFFLINE   vlad333000

vlad333000

    Полковник

  • Пользователи
  • 3224 posts
  • Откуда:Кострома

Posted 31 January 2017 - 14:56

Ilias, просто я не вижу смысла в таких жестких сокращений, достаточно базовых: arr, num, int, str, ch... которые одинаковы во всех языках и любой программист их знает, а название переменной сокращать вообще смысла не вижу так как это делаете вы - название перемнной должно наглядно показывать ее смысл пр простом прочтении, без дешифровки ребусов; ваши сокращения так же можно спутать с переменными, обозначениями в формулах и вообще не так дешифровать (Пример из вашего списка: встречаете переменную m - по вашему: или map, или mine, или возможно что-то еще что вы забыли тут упомянуть, (Эти две переменные так же могут встретиться вместе (Отобродение мины на карте), так что однозначной дешифровки тут нету), а еще это общепринятое сокращение массы во всех математических формулах - и вот сиди гадай что это (Можно решить коментариями, но много уоментариев не очень читаемый код), а переменные mainMap, playerMine, objMass и т. д. однозначно дают понять что это); любой современный язык высокого уровня позволяет иметь длинну имени не менее 31 символа, так что и тут в таких жестких сокращениях нету смысла
  • 0

#550 OFFLINE   vlad333000

vlad333000

    Полковник

  • Пользователи
  • 3224 posts
  • Откуда:Кострома

Posted 31 January 2017 - 15:03

Ilias, и опять не понятно, что вы к этому придрались, сначала я вам написал определение нормализации вектора, потом вы начали писать про какие то технические координаты, я вам обяснил прямо как выглядит этот вектор графически, что бы точно значть что вы поняли это, теперь вы тут неожиданно при общем вопросе про формулу движения (Явно в какой то системе координат), начинаете писать что без системы координат небыло бы векторов и окружностей... бред...
Прибавление вектора к вектуору в арме (Только трехмерные):
vector1 vectorAdd vector2

  • 0

#551 OFFLINE   Ilias

Ilias

    Прапорщик

  • Пользователи
  • 512 posts

Posted 31 January 2017 - 15:08

 

писать 3-4 буквы, читать 3-4 буквы для каждой переменной, каждый раз,  если 1 более чем достаточно, .?

 

это полный список (обновляется) и "mi=mine"

 

a_mi_m_ish //(array_mines_map_informationshow);

 

ни один случай никогда не может иметь более одной расшифровки,

возможность прочитать 4 буквы и их положения

заместо 2 слов..

 

 

это не существенные вопросы (логические мелочи)

 

vectorAdd (==(x0+x1,y0+y1,z0+z1) ?


Edited by Ilias, 31 January 2017 - 15:14.

  • 0

#552 OFFLINE   vlad333000

vlad333000

    Полковник

  • Пользователи
  • 3224 posts
  • Откуда:Кострома

Posted 31 January 2017 - 15:16

писать 3-4 буквы, читать 3-4 буквы для каждой переменной, каждый раз, если 1 более чем достаточно, .?

это полный список (обновляется) и "mi=mine"

a_mi_m_de //(array_mines_map_debug);

ни один случай никогда не может иметь более одной расшифровки,
возможность прочитать 4 буквы их их положения
заместо 2 слов..
Не 3-4 буквы, а слово, человек читает словами, а не буквами, ему легче прочитать слово (Даже если в нем отсутствуют некоторые буквы - он сам их додумает (Доказано)), чем додумать слово имея одну букву. Если переменные представляют собой простые буквы вместо слов ему приходится тратить время на их расшифровку вместо того, что бы сконцентрироваться на самом алгоритме (Ему не нужно тратить "вычислительную мощность" мозга на разгадывание смысла букв, т к этот смысл уже задан словом-имеем). Имена из слов так же упрощают чтения после долгого перерыва (Когда вы забыли что они значат)

Я никогда не понимал таких людей, в институте (Сейчас учусь), все мои одногрупники так делают (Переменные из 1-2 буквы, я из слов), когда я их спрашиваю что эта переменная значит им приходится смотреть на алгоритм и что-то там думать, что бы вспомнить их смысл, когда они меня так спрашивают я им сходу даю ответ или они сами его понимают т к смысл в самом названии и не нужно знать алгоритм (И даже цель функции
/скрипта), что бы понять что они значат

Edited by vlad333000, 31 January 2017 - 15:18.

  • 0

#553 OFFLINE   Ilias

Ilias

    Прапорщик

  • Пользователи
  • 512 posts

Posted 31 January 2017 - 15:19

 

чтобы говорить вы выучивали слова, слова несут смысл, я превратил слова в буквы и  пишу и читаю смысл используя в 10 раз меньше символов (не то чтобы меня хоть каплю волновало будет ли кто либо делать так же ) )

 

Как я написал ещё ни разу не приходилось думать над значением любой переменной и ещё момент у меня в 6*10см вмещается столько же сколько у тех кто пишет словами в страницы, а у функциоделов в файлы

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытое содержание


Edited by Ilias, 31 January 2017 - 15:30.

  • 0

#554 OFFLINE   vlad333000

vlad333000

    Полковник

  • Пользователи
  • 3224 posts
  • Откуда:Кострома

Posted 31 January 2017 - 15:25

Что там говорить, банальный пример: вы написали код/определение выше и я, без вашей таблицы, которую вы дали после запроса (Много времени), не понял что вы имели ввиду и задал вам соответствующий вопрос (Что так же отвлекло меня от самой сути кода/определения)

чтобы говорить вы выучивали слова, слова несут смысл, я превратил слова в буквы и пишу и читаю смысл используя в 10 раз меньше символов (не то чтобы меня хоть каплю волновало будет ли кто либо делать так же ) )
Слова несут смысл - буквы в определенной последовательности, ни одна буква в отдельности не нисет смысл (Исключений всего несколько и их очень мало), просто попробуйте написать осмысленный текст состоящий из таких жестких сокращений, а потом без этой таблички его прочесть...

Edited by vlad333000, 31 January 2017 - 15:27.

  • 0

#555 OFFLINE   vlad333000

vlad333000

    Полковник

  • Пользователи
  • 3224 posts
  • Откуда:Кострома

Posted 31 January 2017 - 15:31

чтобы говорить вы выучивали слова, слова несут смысл, я превратил слова в буквы и  пишу и читаю смысл используя в 10 раз меньше символов (не то чтобы меня хоть каплю волновало будет ли кто либо делать так же ) )
Вы делаете для себя, когда вы выкладываете код - его читают другие, а не вы, и им нужно понять что вы за ребус написали, при вашем стиле вам нужно целую таблицу расшифровки ребусов прилагать к каждому посту
  • 0

#556 OFFLINE   Ilias

Ilias

    Прапорщик

  • Пользователи
  • 512 posts

Posted 31 January 2017 - 15:37

 

26 букв, 26 значений, >400 значений сочетаниями 2 букв, 17576 с 3 ..

всё что нужно это назначить

 


 

я и не выкладываю сюда ничего особо сложного, 

не то чтобы

 
st=state;
n=number;
t=text (string);
a=array;
o=object;
u=unit;
d=display;
con=config;
 
выглядело каким либо образом проблематично
 
спасибо за помощь с векторами )

Edited by Ilias, 31 January 2017 - 15:39.

  • 0

#557 OFFLINE   Ilias

Ilias

    Прапорщик

  • Пользователи
  • 512 posts

Posted 04 February 2017 - 11:17

нужно узнать могут ли несколько шести плоскостных объектов (разных форм) поместиться в шести плоскостной контейнер,

идеи ?


Edited by Ilias, 04 February 2017 - 16:01.

  • 0

#558 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 posts
  • Откуда:РФ

Posted 04 February 2017 - 17:02

Геометрия.

 

ЗЫ

По поводу однобуквенных имён переменных, Влад прав, для себя лично вы можете давать переменным имена хоть в пол буквы, но, каково желание другого разгадывать такой код, когда вы его выкладываете с просьбой помочь разрулить некие моменты.

Понимаете?

Когда я смотрю в чей то код, и вижу внятное имя переменной, имя которое однозначно говорит о своём предназначении, такой код вполне легко осмыслить другому человеку, а не только вам.

Но, это дело личное, дело каждого.

 

ЗЫ_2

И компилятору кода абсолютно насрать какой длинны имя переменной, компилятор приведёт всё сам к самому, по его мнению, оптимизированному виду, так работают абсолютно все компиляторы, они всегда при компиляции переименовывают переменные по своему усмотрению.


Edited by SteelRat, 04 February 2017 - 17:10.

  • 0

#559 OFFLINE   Ilias

Ilias

    Прапорщик

  • Пользователи
  • 512 posts

Posted 05 February 2017 - 04:40

ЗЫ_2

И компилятору кода абсолютно насрать какой длинны имя переменной, компилятор приведёт всё сам к самому, по его мнению, оптимизированному виду, так работают абсолютно все компиляторы, они всегда при компиляции переименовывают переменные по своему усмотрению.

интересный момент, спс,

как я и написал я не сбрасываю для других сокращения для которых следует знать значения, n вместо num, a array, sc script, t text, o object, u unit, d display, con config и st bool не из их числа


Edited by Ilias, 05 February 2017 - 04:42.

  • 0

#560 OFFLINE   aleksgoy

aleksgoy

    Рядовой

  • Пользователи
  • 17 posts

Posted 05 February 2017 - 15:20

Помогите, пожалуйста написать команду!!!

 

У меня запускается миссия через файл, допустим "server.sqf";

т. е. в init.sqf прописано

if (isServer) then

call compile preProcessFile "server\server2.sqf";

};

 

Как прописать команду так, что если данный файл не найден, то после запуска миссии она заканчивалась бы, к примеру, командой BIS_fnc_endMission;

Просто не знаю, как определить данный файл как true и false. Чтоб было, к примеру, если false (файл не запустился), то был бы конец миссии. 


  • 0




Яндекс.Метрика