|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: Nov 2003
Сообщений: 256
|
__________________
Программирование на Flash подобно шаманству, гаданию на кофейной гуще - никогда не знаешь, что получится. Anime Must Die! |
|
|||||
Banned
[5 01.09.2006]
Регистрация: Jun 2005
Сообщений: 1,805
|
А мне больше метод с hitTest() нравица, тогда уж точно любую площадь подсчитать мона будет
|
|
|||||
Регистрация: Nov 2003
Сообщений: 256
|
а вот тут ты не прав. это ж по сути метод монте-карло, только точки накидываются упорядоченно.
минусы: - высокие затраты ресуросов - о-о-о-очень маленькая точность
__________________
Программирование на Flash подобно шаманству, гаданию на кофейной гуще - никогда не знаешь, что получится. Anime Must Die! |
|
|||||
Banned
[5 01.09.2006]
Регистрация: Jun 2005
Сообщений: 1,805
|
Да нефига! Ставь 120fps и сможешь за короткий срок высчитать площадь АБСОЛЮТНО ЛЮБОЙ фигуры, в т.ч. неправильной формы и с дырками внутри
|
|
|||||
Kapaysya na www.ultrashock.com tam ya tochno vidil chtoto podobnoe
__________________
M.S.
|
|
|||||
Регистрация: Nov 2003
Сообщений: 256
|
2smamyan
Говорю же, решил уже. См. линк выше 2Ion Постой-постой, а 1) при чем тут 120fps? 2) можт накидаешь алгоритм - сделаем мини-бенчмарк?
__________________
Программирование на Flash подобно шаманству, гаданию на кофейной гуще - никогда не знаешь, что получится. Anime Must Die! |
|
|||||
Banned
[5 01.09.2006]
Регистрация: Jun 2005
Сообщений: 1,805
|
120 fps? Чтобы быстро можно было пробежать всю фигуру, можно конечно чёрёз setInterval, но эт геморно, да и 120 фпс никогда не помешают, алгоритм примерно следующий: берем клип из 1-о пикселя, определяем габариты фигуры, начинаем двигать клип слева направо, сверху вниз, по 1-й точке, каждый раз проверяя, перекрывает ли он фигуру, если да - инкрементируем счетчик площади фигуры.
|
|
|||||
Регистрация: Nov 2003
Сообщений: 256
|
1) Чем больше fps, тем меньше времени на кадр.
2) 120 фпс никогда не помешают - глупость. Если нужен быстрый отклик - есть updateAfterEvent() 3) каждый раз проверяя, перекрывает ли он фигуру - во флеш нет функции проверки перекрытия двух фигур 4) Точность подсчета - 1 кв. пиксель. А если у меня фигура 2х2 пикселя? Погрешность порядка 50-200%. 5) Если фигура 5000х5000. Скока будет считать?
__________________
Программирование на Flash подобно шаманству, гаданию на кофейной гуще - никогда не знаешь, что получится. Anime Must Die! |
|
|||||
Метод hitTest'ом очевидно крайне неточен. К примеру площадь, соответствующая сектору с R=10cм и углом 180 можно hitTestom и пощитать как 0... (помните как в школе учитель доказывал, мол длина полуокружности равна диаметру - из той же серии). Но если мы работаем с заведомо большими простыми фигурами... то почему бы и нет? Хотя очевидно, что пора флэш научить пользоваться интегралами )
|
|
|||||
Banned
[5 01.09.2006]
Регистрация: Jun 2005
Сообщений: 1,805
|
updateAfterEvent - эт если ты делаешь setInterval, 120фпс никогда не помешают. Просто делай больше интервал между ключевыми кадрами. Функция проверки перекрытия - hitTest. Абсолютная погрешность всегда будет небольшой, достаточно малой, чтобы её невозможно было заметить. 5000х5000 - бред, покажи мне хоть одну флешку с такими размерами! А если всё же найдешь, то там этот способ использовать не нужно - у всего есть свои недостатки
|
Часовой пояс GMT +4, время: 15:21. |
|
« Предыдущая тема | Следующая тема » |
|
|