Музыка: | https://www.youtube.com/watch?v=PSZOLAoOskk |
ебалка (планов громадьё (что в имени моём))
Некоторое время тому назад, man_of_motley@lj, уважаемый, передербанил по последнему слову науки и техники код баллистического калькулятора от JBM, последнюю версию выпущенную под GPL. Тогда же, по моей просьбе, кто-то из его ребят забацал перевод этого дела в жабаскрипт. (Живёт мановмотлин проект тут, сердечно рекомендую).
Несмотря на пару глюков, унаследованных от жбм, и некоторые недостающие фичи, которые жбм в опенсорце не выпускал, гонял я на этой основе разные экзотические сценарии (типа градиента ветра), и был вполне доволен, всякий раз отправляя man_of_motley@lj невидимые, но мощные лучи Благодарности, Счастья, и Нажористых Ништяков.
А тут созрела революционная необходимость. Две революционные необходимости.
1. Для продолжения "как летают пули" надо забацать дидактическую базу, а именно – наглядную иллюстрацию сравнительного влияния разных факторов (собственной кучности винтовки, устойчивости положения стрельбы, качества патрона, умения определять ветер / расстояние / скорость цели, калибра, начальной скорости, баллистического коэффициента, etc. etc.) на вероятность поражения мишени заданных габаритов на разных дистанциях. Т.е. наука там относительно несложная, но я реально устал просчитывать всё это дело полувручную, копипастя из калькулятора в либрофиц и обратно. А хочется чтобы с красивыми картинками, мишенька, пробоины, все дела, и сразу – только мышей клац.
2. Генерация таких карточек тоже до сих пор происходила наполовину вручную, с кучей скриптов из говна и палок (на перле! без компромиссов!), которые нужно было кормить, латать и по ходу подставлять костыли. В очередной раз столкнувшись с задачей для Тигора, я официально заебался. Тоже хочу, чтобы мышей клац – и на выходе готовый пдф.
Всё это, разумеется, я хочу в бровзере, и, разумеется, в чистом жабаскрипте/хтмл5, чтобы не грузить себе сервер.
Для этого нужен баллистический мотор, безглючный и жирнофаршированный. И я, прикусив язычок, суча лапками и потея, давай тот man_of_motley@ljин жабаскрипт допиливать.
* пофиксил JBMовский баг с обнулением (изначальный угол бросания считался с тем же углом прицеливания, что и основная траектория)
* прикрутил учёт расстояния до хронометра (который у JBMа был, но до жабыскрипта не дошёл)
* прикрутил (линейный) градиент начальной скорости в зависимости от температуры пороха
* дописал учёт разных атмосферых условий (по модели ICAO) в разных точках траектории, что дико важно, если "на далеко под [значительным] углом"
* перепилил моделирование "coefficient of drag" со статической интерполяции тремя-четырьмя сегментами второй степени на стандартные таблицы CD-Mach (с динамической интерполяцией квадратичными отрезками по трём соседним точкам), что наконец-то позволяет кормить калькулятор лапуевыми данными с доплерадара (а не только стандартной моделью + BC)
Разумеется, поскольку иначе не умею, из красивого enterprise-grade кода, я по ходу приготовил кровавое месиво, крошево и запеканку.
Мотором доволен, херни не выдаёт, сегодняшняя версия, если кому интересно, лежит тут, GPL3 (но простому стрелку оно без надобности, бо там только одинокий, голый и сырой скрипт мотора).
Теперь, приступая к написанию красивого намордника для всего этого дела, споткнулся я на главном: у эпичного прожекта нет Достойного Названия.
Рабочее название есть – хлёсткое, звучное и гордое: Ебалка.
Однако, в затяжном отрыве от фольклора, я часто недооцениваю остроту реакции населения на матюки. И тут, боюсь, кого-нибудь от слова, к примеру, "ебанина", "пиздятина" или "мизулина" кондратий обнимет (полон тырнет примеров), кинется бедняга, а у меня и без того карма вовсю по пизде идёт.
В этой связи к тебе и обращаюсь, дорогой читатель (сами мы не местные).
Напоминаю, речь идёт о (1) считалке вероятности попадалова (на разных дистанциях по разным мишеням в зависимости от всеразличных факторов), и (2) генераторе баллистических карточек в пдф к распечатке. Ну и (3) калькулятор общего назначения, в бровзере, yet another jbm, в порядке преумножения сущностей и загрязнения ноосферы.
Кто придумает для всего этого красивое ненеприличное название – тому с меня обильная благодарность, а также, разумеется, пыво или иной полезный напиток при личной встрече.