Bu örnekte biz sadece bir text dosyasındaki değerleri
gösterdik. Bunun için ASP veya diğer dillerden de yararlanabilir
siniz.
Grafik animasyonları oluşturmanın birçok tekniği
vardır. Bizim kullandığımız kodlar uygulanması en basit olan kodlardır.
Doğru hazırlama tekniği bu olmasa bile hazırlanmasındaki basitlik
tercih sebebi olabilir. Animasyonu görmek için butona tıklayınız.
1- Önce verileri kaydetmek için
bir metin dosyası açalım. Kayıt için burada 4 veri kullanılmıştır.
Bunları peşpeşe yazalım. bar1=50&bar2=92&bar3=39&bar4=24&
Text dosyasını kaydetip kapatalım, dosya adını veriler.txt
olarak kaydedelim.
2- Yeni bir flash sayfası açalım.Burada
en önemli kısım yukardaki swf dosyasında gördüğünüz gri renkli
alandır. Bu alanı 200*200 piksel olarak hazırlayalım.
Yatay çizgilerle 10 eşit parçaya bölerek numaralandıralım.
İstatistiksel sonuçlar burada yüzde olarak gösterilecektir. Grafik
görüntüsünü istediğiniz şekilde süsleyebilirsiniz. Bu alanda en
önemli olan kısım gri alanın yüksekliğinin 200
piksel olarak planlanmasıdır.
3- İnsert-->New Symbol komutu
verip davranış olarak film klibini seçelim. Dikdörtgen aracı ile
sahneye minik bir dikdörtgen çizin. Çizimi seçin ve properties
panelinde yükseklik kısmına 1 piksel en kısmını da istediğiniz
boyutta seçin. Bu kısım grafiği gösteren hareketli alan olarak
kullanılacaktır. Şimdi çizimi tekrar seçin ve F8`e basarak grafik
olarak tanımlayın. Properties panelinde grafinin x ve y düzlemini
bir yere not edin. 100. kareye bir keyframe ekleyin ve bu karede
iken sahnedeki şekli seçin, properties panelinde yükseklik kısmını
200, en kısmını ilki ile aynı bırakın. Başta da belirtildiği gibi
bu 200 piksellik alan %100 değerinin karşılığıdır ve bu nedenle
ana sahnedeki gri alan ile aynı yükseklikte olmalıdır. 100.karedeki
grafi 200 piksel yüksekliğinde ayarlandı. Şimdi grafinin yukarı
doğru büyüdüğü düşünüldüğünde x düzleminin aynı y düzleminin farklı
olması gerekir. 1.karedeki grafinin y düzlemine bakın. Bizim animasyonumuzda
değeri +53 dür. Animasyon yukarı doğru 200 piksel büyüdüğüne göre
+53-200= -147 sonucu çıkacaktır. Çünkü y ekseni
yukarı doğru negatif aşağı doğru pozitif değer alır.
Sonuç olarak 100.karedeki şeklin x değeri aynı
kalacak y değerine -147 yazılacaktır. Hazırlıklar tamamsa 1.kareye
bir motion tween komutunu atayın. Hata yapmamışsanız enter tuşuna
bastığınızda animasyon aşağıdan yukarıya doğru düzgün olarak hareket
edecektir. İşin zor kısmı bitti.
4- Bu filmden 4 adet örneği
sahneye 0 alanına yerleştirelim. Align penceresinden hepsini aynı
hizaya getirelim. Örnek adı olarak sıra ile grafi1, grafi2, grafi3,
grafi4 yazalım. Animasyonu başlatmak için sahneye bir de buton
ekleyelim. Butonun örnek adını buton olarak yazalım
5- Ana sahnede en üst kısma
bir aksiyon katmanı ekleyelim ve 1.kareyi seçerek:
loadVariablesNum("veriler.txt",
0);
yeni_renk1 = new Color(_root.grafi1);
yeni_renk1.setRGB( 0x006699 );
yeni_renk2 = new Color(_root.grafi2);
yeni_renk2.setRGB( 0xCC0000 );
yeni_renk3 = new Color(_root.grafi3);
yeni_renk3.setRGB( 0x669999 );
yeni_renk4 = new Color(_root.grafi4);
yeni_renk4.setRGB( 0xFF9933 );
İlk dizinde veriler.txt dosyasındaki bilgileri
level0`a yüklüyoruz. Alttaki komutlar sahnedeki 4 film klibinin
renk ayarlaması içindir. Bu komutlardan dersler bölümünde geniş
olarak bahsedilmişti.
Eğer bu renk kodları ile uğraşmak istemiyorsanız
grafi animasyonunun 3 ayrı kopyasını çıkartıp farklı renklerde
hazırlayıp sahneye eklemeniz de mümkündür.
Komutlarını atayalım. İlk komut filmin oynamasını
durduracaktır. Altta enterframe olayına atanan komutlar da veriler.txt
dosya ile yüklenen bar1 değişkenine ait değer, durulması gereken
frame numarasını verecektir. Hatırlayacağınız gibi değerlendirmemiz
100 üzerinden planlandı.(yüzde hesabı olduğundan) Animasyonumuza
eklediğimiz frame sayısı da 100 idi. O halde bar1 değişkenine
ait değer 50 ise animasyonun 50. karede durması gerekecektir.
İşte bu işlem yukardaki komutlarla sağlanmaktadır._currentframe
ifadesi o anda animasyonun bulunduğu mevcut kare sayısını verir.
on (release) {
_root.buton._visible=false;
_root.grafi1.play();
_root.grafi2.play();
_root.grafi3.play();
_root.grafi4.play();
}
İlk dizinde tıklama yapıldıktan sonra butonun
sahneden kaybolması sağlanır. Çünkü sahnede kalırsa kullanıcı
butonu her tıkladığında animasyon kaldığı yerden oynamaya çalışacak
ve ortalık karışacaktır. Bu kodlarla engellenebilirse de en pratik
yol butonu kaldırmaktır. Buradaki buton ifadesi düğmeye atadığımız
örnek adı göstermektedir.
Herşey tamam. Bir noktayı açıklamalıyım. Çekeceğiniz
fla dosyasında bazı ek komutlar ve fazladan bir buton vardır.
Bunun amacı şu anda sahnedeki animasyonu tekrar tekrar görmek
isteyen kullanıcılar için yenile butonunun eklenmesindendir. Çektikten
sonra yukardaki komutlarla kontrolünü yapabilirsiniz.
Tekrar belirtmekte yarar var. Bu işlem için uygulanan
teknik sadece basit olduğu için tercih edilmiştir. Bu kadar uzun
komutlar birkaç fonksiyon hazırlanması ile azaltılabilirdi. Burada
amaç en basit yöntemi kullanmaktır.