Flash animáció actioncript használatával

Szoftver animáció Flash-ben

A Macromedia Flash felhasználói kézikönyve egy nagyon helyes megjegyzést tartalmaz: "Az ActionScript összes elemének nem szükséges ismernie a használat megkezdéséhez."

Ezt a megközelítést követjük. Vegyünk néhány gyakorlati példát, amelyet az olvasónak az ActionScript különböző elemeivel való fokozatos megismeréséhez választanak ki. Miután befejezte ezt a leckét, látni fogja önmagát, hogy kíváncsi animációkat hoz létre, nem kell tudnia az ActionScript nyelv összes konstrukcióját. Vessen egy pillantást a példára. Ön is készíthet hasonló flash filmet magának, miután megtanulta ezt a leckét. De először néhány koncepciót vezetünk be, és néhány példát egyszerűbbnek tekintünk.

Eseménykezelők filmklipekhez

Ha egy forgatókönyvet szeretne hozzárendelni egy videoklip-példához, használhatja az onClipEvent () eseménykezelőt. amely képes válaszolni a különböző eseményekre, például egy új keret EnterFrame érkezésének esetére.

Tekintsük a legegyszerűbb példát. Készítünk egy mozgókép másolatát a színpadon, például egy ellipszis formájában, és rögzítjük ezt a videoklipet, amely a 3. ábrán látható. 1, a következő kódot:

Flash animáció actioncript használatával

Ennek eredményeképpen megkapjuk a film példányát 1 (forrás1). Minden egyes új keret esetében a videoklip öt képpontot mozog jobbra - amíg el nem hagyja a képernyő jobb szélét.

Az enterFrame eseményt a szerkesztési vonalzó képkockasebségén generálják.

Ha magasabb képkockát ad meg, akkor a videoklip gyorsabban mozog.

Az onClipEvent () eseménykezelő enterFrame eseményén kívül például használhatja az egérMove eseményt, amelyet akkor generál, amikor az egérmutatót a FlashPlayer ablakban mozgatják.

Flash animáció actioncript használatával

A következő példában cserélje ki az enterFrame eseményt az egér mozgatásával - ennek eredményeként megkapjuk a 2. példát (a forrás itt van). Most az ellipszis csak akkor mozog, ha az egér a FlashPlayer ablakban mozog.

Hozzon létre két movieclipset (3. ábra), amelyek közül az egyik mozogni fog az egér mozgatása közben, a másik pedig a bal egérgombbal.

Ennek megfelelően az első mókeclipen lefagyjuk a kódot:

Flash animáció actioncript használatával

Megkapjuk a 3 példát (a forrás itt van). Próbálkozzon az egér manipulálásával, hogy a sárga ellipszis kék alatt jelenjen meg, mielőtt mindkettő eltűnne a képernyő jobb szélén. A kód egy sorában már szinte egy játékot írtunk. Néhány leckében megtanulod az alapvető játékokat.

A fő szerkesztő sávon belül található movieclip tartalmazhat beágyazott videoklipet. Néha más szerkesztési vonalzókon található objektumokra kell hivatkozni (hivatkozni). Vegyük fontolóra, hogy ez hogyan történik konkrét példával. Tegyünk egy kis ember képét az ellipszisekről.

Flash animáció actioncript használatával

A bázisukon egy arcfilmet készítünk. amely magában foglalja a három filmfelvétel példányait. Nevüket ennek megfelelően a mouth1, eye1, eye2 (5. és 6. ábra) megfelelően definiálják. Hozzon létre egy példányt az arc filmcímből a helyszínen, és adja meg a példányt a névnek.

Flash animáció actioncript használatával

Flash animáció actioncript használatával

Most állítsunk be egy egyszerű animációt. Például, ha az egérgombbal kattint, a kis ember megnyitja a száját. Ezt a műveletet a vert1 filmklip példányának méretezésével állítja be.

Vegyük tehát fontolóra, milyen lehetőségek állnak rendelkezésre a mouth1 videoklip példányának eléréséhez.

Írja be a kód sorát a Műveletek panelen (7. ábra).

Ezután kattintson a cél ikonra (InsertaTargetPath) (lásd 7. ábra) - az eredmény ugyanaz lesz. Kattintson a panel ablakának keresztére és nézze meg a fészek szerkezetét (8. ábra).

Flash animáció actioncript használatával

Flash animáció actioncript használatával

Flash animáció actioncript használatával

Az ok gombra kattintva a kívánt kifejezés automatikusan megjelenik a kódsorban (10. ábra).

Flash animáció actioncript használatával

Ezután meghatároztuk a száj1 movieclip példányának az y tengely mentén történő növekedését 170% -kal.

A 4 példahenger a kód működését szemlélteti (a forrás itt van).

Enyhén bonyolítja mi példánkban: ha a száj expandáljuk minden egyes új keret (azaz, a skála a film klip például mouth1 az y-tengely 20% -kal nőtt az egyes új keret), és eléri a 150% - 20% -ra csökken.

ha (this.mouth1._yscale> 150) this.mouth1._yscale = 20;

Flash animáció actioncript használatával

Ennek eredményeképpen megkapjuk a példaprogramot 5 a kisemberrel, aki megnyitja / becsukja a száját (a forrás itt van). Ebben a példában kissé megváltoztattuk a száj mozgatásának helyzetét a középponthoz viszonyítva (12. ábra), így az ellipszis skálázása jobban emlékeztet a száj nyitási / zárási hatására.

Flash animáció actioncript használatával

változók

A változó olyan tároló, amely információkat tartalmaz. A szkript változójának állandónak kell lennie, és értéke változhat. Egy idővonalon egyetlen klipen vagy gombon nem lehet két azonos nevű változó.

A változó neve a latin ábécé betűinek, az aláhúzás karakterének és a $ és a számjegyeknek kell szerepelnie, de a számoktól nem kell kezdeni.

var myVariable: Szám = 5;

Ez a változó 5 numerikus értéket tartalmaz. A ": Number" kifejezés azt jelzi, hogy az adattípus számszerű.

Ugyanakkor meghatározhat több változót is, például:

var a = 3, b = 4, c = 5; // több változót definiál

Azonban egy típusú rekord

is helyes. Ha a szkript egy olyan értéket rendel hozzá egy olyan változóhoz, amelyet korábban nem jelentettek be, akkor a tolmács automatikusan hozzon létre egy változót a hozzárendelt érték típusával. Ebben a leckében csak numerikus típusú változókról beszélünk, ezért elhalasztjuk más típusú változók tárgyalását az alábbi leckékre.

Egy változó értékének ellenőrzéséhez hivatkozhat a nyomkövetési függvényre, amely a következő szintaxissal rendelkezik: trace (expression: Object).

A következő kód illusztrálja ennek a funkciónak a működését:

nyomkövetés (szám) // kiírja az értéket 2

Szóval, miután találkoztunk részben változó, térjünk vissza a mi példánkban 1 és kissé bonyolítja, hogy - mondjuk ellipszis alternáló mozgást, a változó koordináta az x tengely a 10 és 300 képpont.

Az ilyen kódot a k1 változó beírásával írhatjuk le, amelyet olyan koefficiensként használunk, amely a koordináta növekményének jeleit az x tengely mentén változtatja. Hagyja, hogy a k1 változó értéke meghatározásra kerüljön azon a kódon kívül, amelyen a klip hozzáadódik, és módosítsa a klip kódot.

Megjegyzés: Ha a k1 változót a keretben, amelyben a filmcímke található, mint a k1 = 1, a program nem fog működni. A változó értéke ilyen feladat helytelen. Amikor a kimeneti panelben a nyomkövetési funkciót használjuk, akkor ennek a változónak a értéke - undefined. Mi a baj? Kiderül, hogy a klip változatának körében a k1 változó nincs meghatározva. Ha szeretné elérni ezt a változót egy filmklip-parancsfájlból, meg kell adnia a movieclip példánynak a nevét, például az mc1-et. és használja a pontszintaxist. Vagyis a fő szerkesztési vonalzó keretén belül írd meg mc1.k1 = 1 (13. ábra).

Ebben az esetben minden jól működik. A nyomkövetési funkció segítségével láthatja, hogy a k1 változó értéke hogyan változik az ellenkezőjére (lásd a 13. ábrát), amikor ellipszisünk a határt tükrözi.

Flash animáció actioncript használatával

A tömörített kódot a rendszer eseménykezelő segítségével lehet elérni az onEnterFrame eseményhez. Annak érdekében, hogy egy konkrét módszer felhívja a kezelő módszert bizonyos műveletek kezdeményezésére, meg kell adni a megfelelő funkciót.

A rekord _root.onEnterFrame = függvény ()<>

tárgy _root. (a fő idővonal) az onEnterFrame eseményre (egy új keret kezdete) hallgat, és ennek az eseménynek a kezdetével (egy új keret) a függvényfüggvény ()<>. Tekintsünk egy példát arra, hogy a függvény határozza meg a fő idõsávon található bizonyos filmcímek koordinátáinak változását. A videoklip koordinátáit a fő szerkesztési vonalzó keretsebességén változtatják meg.

Különösen az alábbi kódot használjuk a fő jelenet keretén:

Bonyolítjuk a movieclip mozgáspályáját, például, adjuk meg a mozgást a sinusoid mentén.

A matematikai képletek használatához a Math objektum metódusaira vagy állandókra kell hivatkozni.

Ahhoz, hogy ezt az objektumot használhassa a Műveletek panelen, meg kell keresnünk az Objektumok> Alap> Math menüpontot.
Math objektum használata esetén a következő szintaxis használható: Math.method (paraméter) vagy Math.constant.

Például a szám Math.PI formában írható.

Ha ki kell húznod a gyökeret egy y1 változóról, és el kell mentened a számítás eredményét az x1 változónál. a következő kifejezést használhatja:

Vegyük észre, hogy nincs ActionScript exponenciáció, van egy módszer a Math objektumra. amely a szintaxist Math.pow (x, y);

ahol x a hatalomra emelhető szám;

y egy olyan szám, amely meghatározza, hogy milyen mértékben kell növelni x értékét.

nyomelem (Math.pow (2, 10)); // Az eredmény: 1024

A Math objektum metódusai és állandói a táblázatban láthatók. 1. és 2. ábra.

1. táblázat: Matematikai objektum-módszerek

Alapvetően az ActionScript nyelv megfontolt konstrukciói alapján képesek vagyunk olyan példát végrehajtani, amely gyakorlati alkalmazással rendelkezhet, például egy matematikai inga mozgásának leírására. Ez a feladat hasznos lehet az iskolás gyermekek vagy a fizikafolyamat szabad ingadozását tanulmányozó hallgatók számára.

Egy matematikai inga ingadozása

Emlékezzünk az oszcillációk fő kinematikai jellemzőire:

Az oszcillációk (A) amplitúdója az a maximális távolság, amelyről az oszcilláló testet eltávolítják az egyensúlyi helyzetből. A szabad oszcillációk amplitúdóját a kezdeti feltételek (m) határozzák meg;

az oszcillációs periódus (T) az a minimális időintervallum, amely után a rendszer visszatér a korábbi állapotába; vagyis az oszcilláció időtartama az az idő, amikor egy teljes ingadozás történik;

Az oszcillációs frekvencia () a másodpercenkénti oszcillációk száma, Hz-ben (Hz) mérve;

A ciklikus frekvencia (w) kétszer akkora, mint a frekvencia.

Megmutatja, hogy hány oszcilláció készül 2 másodpercen belül (s -1).

Az időszak, a frekvencia és a ciklikus frekvencia a következő kifejezésekkel függ össze:

,

ahol n az oszcillációk száma, és t az az idő, amely alatt n oszcilláció történt.

Ha a súrlódás olyan kicsi, hogy el lehet hanyagolni, majd egy telek a koordinátáit az oszcilláló test (anyagi pont) időről időre egy szinuszhullám.

Ha az oszcillációs idő visszaszámlálásának kezdő időpontja megegyezik az inga maximális eltérésének pillanatával az egyensúlyi helyzetből, az oszcillációs egyenlet a következő lesz:

vagyis az oszcillációk szinuszosak és a 0 kezdeti fázis nélkül előfordulnak; x az inga elmozdulása (14.

Ha a start a referencia oszcillációs időt nem esik egybe a pillanatban a maximális eltérés az egyensúlyi helyzetből, akár a pillanattól kezdve, hogy adja át a egyensúlyi helyzetben, az oszcilláció lép fel a kezdeti szakaszban, és az ilyen típusú oszcillációk egyenlet formájában:

Az oszcillációk foka egy olyan mennyiség, amely lehetővé teszi számunkra, hogy meghatározzuk, melyik periódus telt el az oszcilláció kezdete óta, és leginkább jellemzi az oszcillációs folyamatot:

.

Flash animáció actioncript használatával

A matematikai inga egy idealizált modell, amely csak bizonyos körülmények között helyesen írja le az igazi ingát. Valódi inga lehet tekinteni a matematikai, ha a hossza a fonal sokkal nagyobb, mint a méret a test felfüggesztett tőle fonalat masszát képest elhanyagolható a test tömege, és a menet deformáció olyan kicsi, hogy elhanyagolható.

A matematikai inga szabad oszcillációinak időtartama nem függ a tömegétől, hanem csak az izzószál hosszúsága és az inga helyének megfelelő szabad felgyorsulása határozza meg.

A közelmúltban a Cougar egy új sorozatú tápegységet vezetett be a hagyományos PC-khez - a VTX-hez, a korlátozott költségvetésű felhasználók számára. Ebben a felülvizsgálat során figyelembe kell venni a Cougar VTX600 modellt, amely jellemzői miatt az egyik legnépszerűbb ebben a tápegységben

Az évente megrendezésre kerülő esemény kapszaicin SIGGRAPH Los Angeles, az AMD megerősítette pozícióját a PC-piac a high-end új processzorok Ryzen Threadripper és GPU «Vega»

Egy egyszerű és kényelmes építési hétköznapi felhasználók hálózati cég ZyXEL kiadta a következő változat az internetes csomópont csatlakozik a 3G / 4G hálózatok USB-modem Wi-Fi hozzáférési pont - ZyXEL Keenetic 4G III, amit úgy ez a felülvizsgálat

A nagy routerek és útválasztók családjához az ASUS nemrégiben két nagyon érdekes modellt is felvetett: a zászlóshajó 4G-AC55U és az egyszerűbb 4G-N12. Ez a cikk az ASUS 4G-AC55U zászlóshajóját fogja figyelembe venni

Fiatal, de ambiciózus cég Krez idén kiadott egy új, eredeti modell laptop Krez Ninja (modell TM1102B32) Windows 10. Mivel ez a számítógép egy forgatható képernyő, ez szolgál egy univerzális megoldás - sikeresen lehet alkalmazni a munkát, és tanulmányozásra és játékokra

Ha gyakran kinyomtatja a fényképeket, és máris belefáradt a nyomtatópatronok cseréjéhez, forduljon az Epson L850 MFP-hez. Nagy mennyiségű fogyóeszköz, kitűnő minőségű nyomatok, sokféle funkcionalitás - ezek csak néhány előnye ennek a modellnek