Flex style.css
Фев/101
Если вынести стили в отдельный файл то может произойти такая ситуация, что при обновлении файла стиля он не обновится в проекте и вы не увидите изменений во флекс приложении.
Поэтому имеет смысл компилировать css в swf (Compile CSS to SWF)
Когда произошли изменения в CSS галочку нужно убрать и поставить снова.

Осень
Окт/090
Стоило только начаться осени как пришлось без остатка уйти в работу.
Времени едва хватает на элементарные жизненные вещи.
Спрашивается: на фига брать столько работы?!
VK lib
Авг/092
В связи с диким спросом на приложения Вконтакте решил заняться библиотекой Вконтакте.
Доступна для скачивания первая версия, в которой мы можем выполнять элементарные запросы по пользователям.
Пример кода, запрашиваем список друзей:
1 2 3 4 5 6 7 8 9 | this._service = new VKService(flashVars, api_secret); this._service.getFriends(this.myHandler); private function myHandler(o:ResponseObject):void { trace(o.data); // XML или JSON trace(o.vars); // переменные, которые отсылались на сервер, // например o.vars.method - строковое имя метода API Вконтакте } |
Важные изменения в следующей версии будут следующими:
- приведу к стандартной событийной модели подписку и отписку от событий
- будет опционально (в зависимости от настроек) проверяться auth_key
- также важным является учитывать частоту запросов к API Вконтакте (не более 3х в секунду), запросы будут ставить в очередь, длина которой будет ограничиваться, что опять же будет регулироваться
TODO list
июля/090
Как я уже говорил, генератор будет функционально разделен на две части: это статическая (пассивная) часть (дороги, знаки) и динамическая (активная: машины, велосипедисты пешеходы)
В данный момент прорабатывается пассивная часть и, соответственно все усилия направлены на неё.
Весь интерфейс генерится динамически из базы.
Сейчас мы имеем возможность добавлять / рисовать кривые / прямые, которые будут в дальнейшем позвоночником дороги.
Итак, при переходе в режим редактирования дороги у нас доступны соответствующие инструменты и шаблоны сегментов дорог.
Рассмотрим доступные инструменты (слева направо): рисование по точкам, название участка дороги, тип участка дороги.
1) рисование по точкам.
По дефолту с первого клика по рабочей области (Холст) добавляет последовательно точки кривой. Доступно три типа: прямая, безье и эрмит.
2)3) не работают.
А вот и лист:
1) сделать селектбокс с именами дорог (инструмент 2). По дефолту будут генерироваться шаблонные имена, к рипмеру Road 1, Road 2 и т.д. Селектбокс соответственно редактируемый, т.е. мы можем менять имя созданной нами дороги. При выборе в селектбоксе нужной дороги она соответственно подсвечивается на холсте.
2) сделать селектбокс с типом дороги (1 из 3х, см.выше). сейчас только эрмит. организовать переключение.
3) при активном инструменте 1 (точка) и зажатой клавише Shift + клик по холсту = начинать рисование новой дороги, т.е. новая точка уже не связана с предыдущей кривой (если мы ее нарисовали), а рисуется новая кривая. Получается чтобы начать новый участок дороги нужно поставить новую точку через Shift и продолжить рисование уже без него.
4) при активном инструменте 1 (точка) и зажатой клавише Ctrl + клик по существующей точке = убрать точку. Соответственно кривая перерисовывается после этого.
5) Проработать холст (поворот, масштабирование, сворачивание)
6) Продумать механизм переключение между режимами (от дороги к автомобиоям, к знакам и т.д.)
7) Продумать событийную модель, особенно это касается событий клавы, горячие клавиши в дальнейшем будут очень кстати.
Реализация первых 4 пунктов даст уже некоторое представление о том, куда дальше двигаться, а двигаться можно вот куда (последовательно):
- на основе скелета дороги рисовать полосы (вдоль кривой-позвоночника), соответственно для каждой кривой будет доступен набор свойств, таких как количество полос, ширина полосы (это уже скорее всего относится к глобальным свойствам проекта, лучше туда его и отправить), покрытие.
- объединение и расчленение дорог (перекрестки). это пожалуй самое сложное. существуют множество различных пересечений дорог, всё это придётся учитывать. Но всего конечно не учтешь, поэтому будут ограничения.
Заглядывать дальше пока опасаюсь. Время покажет
Прямые
июля/090
На данный момент реализован интерфес, необходимый для совершения основных действий, например, рисование дороги.
Возможно для того, чтобы в ближайшее время иметь видимый результат, лучше будет начать с прямых участков дорог и потом встроить в уже существующую систему кривые участки.
Флеш пока не доступен для всеобщего обозрения.
Дебаггер и FD
июля/090
Недавно переехал полность на FD без всяких дополнительных обуз в виде флешаАда (раньше компилил под ней)
Конечно проекты с большим кол-вом графики наверное придется собирать по старинке
Что интересно, FDTracer выводит сообщения со всех дебаг плееров, которые работают в данный момент. Это конечно понятно, веть все они тянутся с лог файла, в который всё это пишется, но по началу было неожиданно и немного непривычно, когда в перемешку с твоими трейсами вылезает трейс, к примеру, с ютуба, который был открыт на фоне в браузере.
Плагин iTracePanel у меня не работает
зы: кстати RC4 достаточно часто выкидает ошибки, при чем очень разные, невозможно загрузить вышеупомянутый плагин, ошибка памяти, хелп внутри FD без ошибок открыться не может вообще. Всё это крайне странно.
Примеры дорожных ситуаций
июня/092
Начну с самого интересного.
Нашел ситуации, которые показаны в динамике, а не на скучных картинках.
Не смотря на то, что все они собраны руками в небольшом количестве, впечатление остается положительное.
Кликаем картинку и переходим на флешку, слева будет навигация по другим ситуациям.

Процесс
июня/090
Как ни странно взаимодействие человека с приложением начинается с интерфейса.
Именно поэтому после того, как был выбран фреймворк и приняты сопутствующие решения, я решил продумать реализацию интерфейса на сколько это возможно и, самое главное, на сколько нужно сейчас.
Пример ниже показывает нам панельку с тремя кнопками (шаблоны кусков дорог), которая может перемещаться и свёртываться (двойной клик по заголовку).
Состояние панельки запоминается локально и восстанавливается после перезагрузки страницы.
Соответственно когда мы будем иметь регистрацию пользователей на сайте сервиса, у них будет возможность без лишних телодвижений закреплять настройки (интерфейса в том числе) за своим аккаунтом и менять эти настройки почти также легко и быстро, как если бы это происходило локально без использования браузера.
Наличие последнего плеера не помешает.
ГДТП – Генератор Дорожно-Транспортных Происшествий
июня/091
Итак, хочу в общем изложить суть идеи, над которой я сейчас работаю.
ВВЕДЕНИЕ
Не так давно мне посчастливилось стать автовладельцем. Конечно сразу пришлось пережить некоторый шок. Кто водил, тот знает! Точнее даже этот шок удалось пережить не сразу, а спустя только несколько недель. Связано это скорее всего с тем, что те правила, которым учат в автошколах сильно разнятся с тем, что происходит на самом деле. Взять даже отсутствие разметки на большей части дорог города, на прямой ещё ладно, а вот в повороте (многополосном) уже возникают некоторые проблемы даже у опытных водителей. Можно видеть много мелких аварий, которые произошли из-за того что кто-то кого-то подрезал в повороте, хоть здесь и влияет сильно человеческий фактор (невнимательность), но наличие правильной разметки как ни крути сильно бы помогло в таких ситуациях…



