Просмотр полной версии : Движение по краю объекта
Как можно реализовать движение по краю объекта ?
http://img182.**************/img182/1902/traektoriare0.jpg
объект (он отмечен синим)
И траектория (отмечена красным).
Я имею ввиду программно, а не в ручную =)
Можете описать сам принцип ?
тут используеться самое обычное уровнение движения по окружности, подобное уже было на форуме, тут надо поискать и программый метод тоже был! поищите, тут все есть, вот например:
http://www.flasher.ru/forum/showthread.php?t=74680&highlight=%E4%E2%E8%E6%E5%ED%E8%E5+%EF%EE+%EE%EA%F0%F3%E6%ED%EE%F1%F2%E8
Ну в данном случае то можно движение по окружности.
А если
http://img354.**************/img354/9505/traektoria2cw9.jpg
Используйте метод hitTest или getPixel32 класса BitmapData
Что-то я не совсем понял зачем нужен в данном случае getPixel32();
Если объект будет разноцветный, а линия траектории просто тут обозначена для более ясного уточнения вопроса.
Что-то я не совсем понял зачем нужен в данном случае getPixel32(); Чтобы определить степень прозрачности пикселя.
Тоесть, пока следущий пиксель не прозрачный, то перемещяется на него, да ?
Нет, надо определять степень прозрачности. На 100% не прозрачный переходить нельзя, он не является границей. Между 100, 95 и 90 процентами, надо выбирать 95.
http://file.lv/images/files/full/tm32aW.jpg
Я так понял точка1._alpha = 0, а там где у объекта появляется цвет уже 100.
А от куда вы тогда взяли 90 прозрачность .. ?
Роман Вадимович
15.06.2008, 20:04
Может Вам подойдет такое решение?
Добавлено: не увидел, что нужно программное решение ...
orcpochta
15.06.2008, 20:22
Используйте метод hitTest или getPixel32 класса BitmapData
эти методы одного порядка по ресурсной трудоемкости?
А от куда вы тогда взяли 90 прозрачность .. ?Антиалисинг по краю объекта.
эти методы одного порядка по ресурсной трудоемкости?Не знаю, не тестировал. Проведите тест сами и узнаете.
orcpochta
15.06.2008, 21:56
Не знаю, не тестировал. Проведите тест сами и узнаете.
я до понимания BitmapData еще не дорос...)))
iNils а разве hitTest тут подойдёт, он же реагирует на невидимую часть объекта ? (на предыдущим рисунке обозначена синим)
orcpochta
15.06.2008, 22:33
iNils а разве hitTest тут подойдёт, он же реагирует на невидимую часть объекта ? (на предыдущим рисунке обозначена синим)
есть еще поточечный хит тест, например:
//проверяет попадание точки (this._xmouse, this._ymouse) на фактическую область объекта
var bOverlap:Boolean = mcCircle.hitTest(this._xmouse, this._ymouse, true);
//проверяет попадание точки (this._xmouse, this._ymouse) на ограничивающий прямоугольник объекта
var bOverlap:Boolean = mcCircle.hitTest(this._xmouse, this._ymouse, false);
orcpochta, а как тогда края фигуры по точкам разбить, в ручную только ? :-O
iNils, ну она же прозрачная (часть от чёрного контура круга, до синего квадрата.
http://file.lv/images/files/full/tm32aW.jpg
Я писал об hitTest класса BitmapData, а не MoveiClip
А есть ли ещё варианты решение этой проблемы ?
Просто до появления BitmapData, как-то её ведь решали.
А есть ли ещё варианты решение этой проблемы ?
Просто до появления BitmapData, как-то её ведь решали.Мучались с обычным хиттестом.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.