![]() |
Как реализовать "раскраску" рисунка?
Есть флешка - http://expert-office.ru/, хочу реализовать раскраску карандашного рисунка в цветной (фото цветного также есть), водя по рисунку кисточкой.
Выглядеть должно примерно так: при наведении кисточкой на участок рисунка он становится цветным, остальное остается карандашным. У кого какие есть предложения? |
вобще можно сделать с помощью маски
|
А можете дать ссылку, как реализовать что-то подобное?
|
Получилось реализовать: при наведении курсора на изображение, участок под ним становится цветным, но как сделать так, чтобы все участки, над которыми прошлись, остались цветными и после того, как над ними убрали курсор?
|
И к этой же теме еще один вопрос.
Курсор я заменяю кружком, который находится в слое-маске и делает цветными участки при наведении. Но как сделать, чтобы вместе с этим кружком с вместо курсора перемещалось еще и изображение кисточки? Такой код не работает (перемещается только один из объектов): Код:
Mouse.hide(); |
Код:
cursor.onMouseMove = cursor2.onMouseMove = function(){ |
__i, прочти пункт 3 http://www.flasher.ru/forum/showthread.php?t=79864 и больше так не делай.
|
Спасибо, а кто может помочь с вопросом из четвертого поста?
|
Код:
_root.region1.onMouseOver = function (){ |
Есть 2 варианта - простой и сложный =)
Простой - добавляй во время движения мыши в клип-маску исходный клип-кисть (не важно, как именно, дублируя, аттача или рисуя програмно). Т.е. маска будет состоять из одного клипа, в который будут по мере движения добавлятся клипы имитирующие кисть. Сложный - програмно создать маску и обновлять ее при движении мыши... Но это не для тех, кто не дружит с математикой %) |
Цитата:
|
Цитата:
|
Вложение 14829
Код:
import flash.geom.** вместо клипа с градиентом - ваша картинка. * увы, такой мувик после долгого проигрывания подвесит плеер... есть конечно варианты решения... но муторно, да и не особо-то нужно, с пивом и так покатит =) |
Цитата:
|
Заменил градиент на картинку "back", но почему-то все очень медленно рисуется:
Код:
var _l2:MovieClip = _root.createEmptyMovieClip("mask_mc", 10); |
эээ... ну не знаю, сколько онмаузмув вызывается - столько и должен рисовать
|
Вложений: 1
Я к тому, что я просто видимо что-то не правильно сделал.
|
хех, а как ты собираешся вызывать онмаузмув над клипом, который ты не видишь? =) (ты ж накладываешь маску на клип с картинкой, после чего он практически исчезает =) положи поверху картинки еще один клип (тот, который с карандашным рисунком), вот у него и нужно слушать онмаузмув =)
|
Почему, все правильно. Т. к. маска наложена на картинку, она не будет вначале видна, но при движении мышки над ней она будет как бы вырисовываться. Если еще вниз положить картинку с карандашным рисунком - как раз и получается эффект раскрашивания.
Ошибка была в другом, в строке Код:
_l2.attachMovie("brush", "brush"+_l4+"_mc", _l2.getNextHighestDepth()+_l4, {_x:this._xmouse, _y:this._ymouse});Всем спасибо, итоговый получившийся код: Код:
var myMask:MovieClip = _root.createEmptyMovieClip("mask_mc", _root.getNextHighestDepth()); |
Не все так просто оказалось =)
1) Некоторые браузеры не показывают телефон вверхну флешки (http://expert-office.ru/), в частности Explorer. Телефон - это Dynamic Text с фильтром Blur 2) Не получается убрать кисточку с рисунка, после того как мышка покинула пределы флешки |
| Часовой пояс GMT +4, время: 20:11. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.