[flash] Lupa powiększająca

Technologia Flash, czyli animacja na potrzeby stron WWW to świat daleko odbiegły od zwykłego programowania i kodu. Zapytaj o pomoc i podziel się z nami Twoimi problemami z zakresu Flasha.
KaRoL
Działa
Działa
Posty: 1071
Rejestracja: czw kwie 03, 2003 2:40 pm

[flash] Lupa powiększająca

Post autor: KaRoL »

Mam takie pytanie: jak we flashu uzyskać efekt powiększenia lupą? Chciałbym by w pewnym obszarze myszka zamieniała mi się w cliparta-lupę, i szkiełko powiekszało mi najechany obszar. Zrobiłem we flashu wiersz, ale jest trochę nieczytelny i dlatego coś takiego wykombinowałem.
iro
Moderator
Posty: 402
Rejestracja: pt gru 19, 2003 8:20 pm
Lokalizacja: Szczecin

Re: [flash] Lupa powiększająca

Post autor: iro »

Wykorzystaj maskę.
Stwórz drugi (większy ) obrazek z wierszem (czy jak tam masz to rozwiązane).
Zastosuj maskę (w kształcie koła) tak aby widać było tylko ten większy obrazek.
KaRoL
Działa
Działa
Posty: 1071
Rejestracja: czw kwie 03, 2003 2:40 pm

Re: [flash] Lupa powiększająca

Post autor: KaRoL »

No a żeby poruszać tą maską myszką to co mam zrobić? I w ogóle nie do konca to zrozumiałem... :?
iro
Moderator
Posty: 402
Rejestracja: pt gru 19, 2003 8:20 pm
Lokalizacja: Szczecin

Re: [flash] Lupa powiększająca

Post autor: iro »

I w ogóle nie do konca to zrozumiałem...
No więc jeszcze raz.
Na jednej warstwie masz swój wiersz.
Robisz drugą warstwę z wierszem w powiększeniu.
Robisz trzecią warstwę z maską w kształcie okręgu. Warstwa ta ma być ustawiona
jako 'masked' w stosunku do warstwy z powiększonym wierszem.
Mniemam, że wiesz jak się robi maskę. Jeśli nie wiesz to odsyłam na
http://www.flashzone.pl
No a żeby poruszać tą maską myszką to co mam zrobić?
W takie rzeczy to się raczej nie bawiłem.
No ale z całą pewnością nie obejdzie się bez AS :)
Jeśli dobrze pamietam (mogę się mylić) jest coś takiego w AS jak
mouse_x i mouse_y, to chyba tym się robi :)
KaRoL
Działa
Działa
Posty: 1071
Rejestracja: czw kwie 03, 2003 2:40 pm

Re: [flash] Lupa powiększająca

Post autor: KaRoL »

Widzę, że trochę to nie wychodzi tak jak to opisujesz. Mam zatem inny pomysł. Jak zrobić wiersz, który nie mieszcząc się na wysokość, będzie miał suwak z boku do przesuwania nim w dół i w górę? No wiecie, tak jak ramka w html-u lub iframe. Wiersz, którego nie widać do końca i suwak za pomocą którego przesuwamy wiersz w dół i w górę. Jak to zrobić? Zna ktoś taki tutorial?
iro
Moderator
Posty: 402
Rejestracja: pt gru 19, 2003 8:20 pm
Lokalizacja: Szczecin

Re: [flash] Lupa powiększająca

Post autor: iro »

Sposób, który Ci opisałem jest z całą pewnością lepszym rozwiązaniem niż to co zaproponowałeś.
Swego czasu miałem okazję robić efekt lupy tą właśnie metodą i mogę Cię zapewnić, że całkiem nieźle to wygląda.
Nie robiłem tylko kontroli położenia lupy. (u mnie lupa poruszała się po ścieżce a nie podążała za kursorem).
Widzę, że trochę to nie wychodzi tak jak to opisujesz.
Mógłbyś lepiej to przedstawić? Co konkretnie Ci nie działa?

Bo tak na początek to wydaje mi się, że są możliwe 2 scenariusze:
1. Warstwy ustawione są w złej kolejności
2. Okrąg imitujący lupę nie jest obiektem
lecz jak mówię, bez dalszych informacji nie będę w stanie określić na czym konkretnie błąd polega.
KaRoL
Działa
Działa
Posty: 1071
Rejestracja: czw kwie 03, 2003 2:40 pm

Re: [flash] Lupa powiększająca

Post autor: KaRoL »

Po prostu pod spodem nadal widać pomniejszony wiersz pod spodem. Sądzę jednak, że w moim przypadku lepszym rozwiązaniem byłby scroll. Znalazłem opis jak to zrobić na FlashZone, ale to jest tak opisane, że nic nie zrozumiałem, a gotowego pliku fla nie udało mi się przerobić pod moje oczekiwania.
iro
Moderator
Posty: 402
Rejestracja: pt gru 19, 2003 8:20 pm
Lokalizacja: Szczecin

Re: [flash] Lupa powiększająca

Post autor: iro »

Więc może to Ci pomoże.
Możliwe, że o to dokładnie Ci chodziło.
http://www.flashroom.com/show.php?room=fla&id=202#fr
Kliknij na view, żeby zobaczyć jak to działa.
Mam nadzieję, że to wystarczy.
Powodzenia :)
KaRoL
Działa
Działa
Posty: 1071
Rejestracja: czw kwie 03, 2003 2:40 pm

Re: [flash] Lupa powiększająca

Post autor: KaRoL »

O tak! :-D
O to dokładnie mi chodziło, bo lupka nie powiększa, tylko działa jak szeroki obiektyw w aparacie. Mam tylko takie pytanie: chciałbym, aby to działało tylko w wyznaczonym obszarze, a nie na całej animacji. Czy wystarczy, jeśli zrobię ten efekt jako Movie Clip? Przepraszam, że tak się dużo pytam, ale jeszcze tego nie spróbowałem...
Czy zna ktoś tutorial z suwakiem? Byle tylko jakiś prosty. Zawsze taka wiedza może się przydać :)
iro
Moderator
Posty: 402
Rejestracja: pt gru 19, 2003 8:20 pm
Lokalizacja: Szczecin

Re: [flash] Lupa powiększająca

Post autor: iro »

Karol napisał:
Mam tylko takie pytanie: chciałbym, aby to działało tylko w wyznaczonym obszarze, a nie na całej animacji. Czy wystarczy, jeśli zrobię ten efekt jako Movie Clip? Przepraszam, że tak się dużo pytam, ale jeszcze tego nie spróbowałem...
Przepraszać to nie masz za co. W końcu od zadawania pytań jest forum.
Co do ograniczenia poruszania się lupy w wyznaczonym obszarze, to musisz to zrobić w Action Scripcie.
Wystarczy prosta procedurka, cos w stylu:

Kod: Zaznacz cały

if lupa.mouse_x>500
{
     lupa.mouse_x=500
}
if lupa.mouse_y>500
{
     lupa.mouse_y=500
}
(kod najlepiej sprawdź pod względem poprawności, bo już dokładnie nie pamiętam czy aby na pewno jest dokładnie tak, a nie mam flasha zainstalowanego żeby sprawdzić)
KaRoL
Działa
Działa
Posty: 1071
Rejestracja: czw kwie 03, 2003 2:40 pm

Re: [flash] Lupa powiększająca

Post autor: KaRoL »

No cóż, udało mi się uzyskać ten efekt w dużo prostszy sposób. Jak wiadomo (jeśli ktoś przeglądał dokładnie plik fla) w animacji jest MovieClip z maską i w tej masce jest obszar jaki ma obejmować powiększenie. Wystarczy tam zmniejszyć rozmiar obrazka do takiego na jakim mamy operować lupą i problem z głowy. Pozostanie najwyżej czerwona otoczka wokół lupy, której można się pozbyć zamieniając obramowanie w Graphic i dając Alpha 0%.

W porządku, jakoś rozwiązałem problem z tą lupą, bo zauważyłem, że musi mieć ona konkretny obrazek z tłem, a nie sam element, np. tekst, bo będzie się robił trójwymiarowy. Dlatego zamieniłem całe tło na wektor CTRL+B, a potem zaznaczyłem konkretny element z tekstem i tłem i przekonwertowałem na MovieClipa. Tylko, teraz mam taki problem, że ta lupa strasznie wolno chodzi i 'haczy'. Nie wiem czy to efekt tego, że całe tło w animacji (grafika 800x600) została zamieniona poprzez CTRL+B? Jak mogę to z powrotem przyspieszyć? (wcześniej chodziło dobrze, tylko źle się lupa wyświetlała, dlatego zamieniłem).
ODPOWIEDZ