Показать сообщение отдельно
Старый 10.09.2012, 17:15
ChuwY вне форума Посмотреть профиль Отправить личное сообщение для ChuwY Посетить домашнюю страницу ChuwY Найти все сообщения от ChuwY
  № 8  
Ответить с цитированием
ChuwY
 
Аватар для ChuwY

Регистрация: Nov 2009
Адрес: Тула / Москва
Сообщений: 734
Отправить сообщение для ChuwY с помощью ICQ Отправить сообщение для ChuwY с помощью Skype™
Можете сначала определять пересечения прямоугольников.
Если их нет, то сразу возвращаем false.
Если есть пересечение прямоугольников, то отрисовываем в битмапу только куски, которые попадают в пересечение.
Параметр matrix в методе Bitmapdata:draw вам в помощь.
Должно неплохо снизить нагрузку.

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

А если еще сильнее заморочиться, то можно попробовать кешировать результаты проверки пересечения и предыдущие координаты объектов.

Цитата:
Скажите, а что за пример? Т.е. в этом примере как-то избегается растеризация (перевод вектора в растр)?
А что насчет того, чтобы взять и пройти по ссылке?
__________________
9 из 10 голосов в моей голове сказали наркотикам "НЕТ"
Мои ачивки: художник-паразит.


Последний раз редактировалось ChuwY; 10.09.2012 в 17:25.