Tamkovich.com: Телеком/VoIP блог
Современные технологии: Asterisk, SIP, Kamailio, Linux, Cisco, Linksys
Программирование -
Как рассчитать расстояние между парой координат (широта долгота)
Февраль 26th, 2010 by Сергей Тамкович
Работая с картами, часто бывает необходимо рассчитать расстояние в километрах между парой координат. Для этого пригодится следующая функция: function distance($lat1, $lng1, $lat2, $lng2) { $pi80 = M_PI / 180; $lat1 *= $pi80; $lng1 *= $pi80; $lat2 *= $pi80; $lng2 *= $pi80; $r = 6372.797; // mean radius of Earth in km $dlat = ($lat2 [...]
Как разделить строку в Си
Февраль 19th, 2010 by Сергей Тамкович
Разделение строки на элементы – стандартная задача при обработке текста. Многие высокоуровневые языки предоставляют удобные операторы для решения этой задачи. Например язык Perl позволяет разбить строку используя в качестве разделителя другую строку или регулярное выражение с помощью функции split. Результат разбиения возвращается в виде массива: @elements = split(/\s/, "very simple example"); В PHP аналогичную роль [...]
Asterisk realtime теперь различает NULL и пустые строки
Январь 2nd, 2010 by Сергей Тамкович
Новогодние каникулы – отличное время для обновления вашей системы. Есть время подумать, взвесить все «за» и «против» и внимательно накатить необходимые обновления. Не стали исключением и эти праздники. Неприятный сюрприз ждал меня в модуле res_config_mysql из Asterisk-addons. 4 декабря, в него был добавлен сомнительный патч: /* Encode NULL values separately from blank values, for the [...]
Как правильно расставлять фигурные скобки в Си
Январь 14th, 2009 by Сергей Тамкович
Существует несколько нотаций, каждая из которых описывает, как и где писать фигурные скобки и писать ли их вообще. На каждую нотацию найдется большое количество любителей и немало ненавистников, готовых в любой момент затеять holy war. Так все таки, как же лучше записывать if и прочие выражения языка C, за которыми следуют операции или блоки операций? [...]
Fedora9, kernel 2.6.27.5 и nvidia 173.14.12
Ноябрь 18th, 2008 by Сергей Тамкович
На днях, в очередной раз обновилось ядро в дистрибутиве Fedora9. Теперь у нас 2.6.27.5-41. Родные драйвера nVidia (на данный момент последние – 173.14.12), как обычно, не подходят к новому ядру, из-за изменений в API ядра. В некоторых случаях, пользователи могут обойтись альтернативными драйверами, например nv. Однако, если вы используете конфигурацию с двумя мониторами (DualHead) как [...]
