ExtraForum - 1299 Private Serverlar - Server Dosya Paylaşımları

Güncel Paylaşım Forumu !
 
AnasayfaTakvimGaleriSSSAramaKayıt OlGiriş yap
Eğlence Başladı Rütbeni Seç! TIKLA
Moderatör Alımı Başladı TIKLA

Paylaş | 
 

 Flash'ta Yuvarlak Saat Yapımı

Aşağa gitmek 
YazarMesaj
ALPA
Site Kurucusu
Site Kurucusu
avatar

Mesaj Sayısı : 815
Nerden : Ankara
Kayıt tarihi : 02/03/09
Rep Puanı Rep Puanı : 32

MesajKonu: Flash'ta Yuvarlak Saat Yapımı   Çarş. Nis. 08, 2009 5:46 pm

Flash'da AS 2.0 Yardımı ile yuvarlak saat yapımını anlattım.

Saatimizi oluşturalım:

1- Sahneye bir çember çizelim. Üzerine saat kadranlarını ve numaralarını yerleştirelim. Bu alanda saatinize istediğiniz görsel özellikleri verebilirsiniz.

2- Sahnedeki tüm oluşumları seçelim. F8 tuşuna basarak onu bir film klibi şekline getirelim. Ana_saat film klibimiz sahnede hazır bekliyor. Şimdi akrep, yelkovan ve saniye kolunu içeren 3 tane klip hazırlayacağız.

3- CTRL+F8`e basarak saat kolu için bir film klibi oluşturun. Sahneye akrebi temsil edecek bir çizgi çizin. Aynı işlemlerle yelkovan ve saniye kolunu gösteren kliplerimizi oluşturalım. Burada önemli bir nokta var. Her 3 klibin de merkez noktası kolların alt ucuna yakın bir yerde olmalıdır. Çünkü ilerde rotasyon komutu verdiğimizde bu nokta merkez kabul edilip dönme işlemi olacaktır.

Merkez noktasını değiştirmek için araç kutusundaki "free transform tools" aracını seçip klip üzerine tıklayın. Ortada gördüğünüz küçük daire merkez noktasıdır. Onu fare ile tutarak alt kenara çekin.

4- Şimdi ana sahneye dönelim. Sahnedeki ana_saat klibimizi çift tıklayarak açalım.Yeni bir katman ekleyelim. Buraya kollardan birini, örneğin saniye kolu klibini koyalım. Yeni bir katman ve dakika kolu, tekrar bir katman ve saat kolunu yerleştirelim. Bunlara örnek adı olarak saat_kolu, dakika_kolu, saniye_kolu örnek adlarını verelim.En üst kısma tekrar bir katman ekleyip kolların birleşim yerindeki dönme hareketinin gözlenmemesi için ortaya minik bir daire çizebilirsiniz. Kolları sahneye yerleştirirken uçlarının saat 12 hizasında olmasına ve 3 kolunda tam üst üste gelmesine dikkat edelim.

5- Ana sahneye geri dönelim. Sahnede saatimiz artık gözüküyor. Bu klibi tıklayarak seçelim. Actionscript panelini açalım. Saat hazırlamada yazacağımız tek komut alanı burasıdır. Başka bir yere komut yazmaya gerek yoktur.

Yazacağımız komut saat klibi oluşturmada en kolay yöntemdir.

onClipEvent (enterFrame) {

zaman = new Date();
saat = zaman.getHours();
dakika = zaman.getMinutes();
saniye = zaman.getSeconds();

saniye_rotasyon = saniye * 6;
dakika_rotasyon = dakika *6;
saat_rotasyon = (saat * 60 + dakika)*0.5;

setProperty("saniye_kolu",_rotation,saniye_rotasyon);
setProperty("dakika_kolu",_rotation,dakika_rotasyon);
setProperty("saat_kolu",_rotation,saat_rotasyon);
}

Şu anda klibimiz hazırdır. Şimdi kodları irdeleyelim:

EnterFrame işleyicisi daha önceki örneklerde de anlatıldığı gibi komutların devamlı okunmasını ve böylece saatin kusursuz çalışmasını sağlar. Zaman adında yeni bir nesne oluşturuyoruz. Bu nesneye otomatik olarak sistem bilgisinden atanan saat, dakika ve saniye değerlerini sırasıyla saat, dakika ve saniye değişkenine atıyoruz. Buraya kadar olanlar bildik işler. Şimdi bu değerleri işleyerek kollara dönme hareketi yaptıracağız.

Biraz matematikten bahsedelim. Bir daire 360 derecedir. Bir saat 60 dakikadır. O halde 360/60=6 .Yani saniye ve dakika kolunun bir değer artması için 6 derece dönmesi gerekir. Saat için durum faklıdır. Bu sonra anlatılacak.

saniye_rotasyon = saniye * 6;

Saniye kolunun dönme derecesini bulmak için sistem bilgisinden okunan saniye rakamını 6 il e çarparız. Örneğin 15 saniye için dönme oranı 15*6= 90 derecedir.

dakika_rotasyon = dakika *6;

Burada da dakika kolunun dönme değeri hesaplanır.

saat_rotasyon = (saat * 60 + dakika)*0.5;

Saat kolunun dönme işlemi için en pratik yol bu matematiksel işlemdir. Önce sistemden okunan saat değeri 60 ile çarpılarak dakika değerinde alınır, bu değere yine sistemden okunan dakika değeri eklenir. Bu değer 2`ye bölünür veya 0.5 ile çarpılır.

Diyelim ki saat tam bir. Bu durumda saatin kolu bir hizasında olmalıdır. Burada 5 birim vardır. Her birim 6 derece olduğuna göre 5*6= 30 derece rotasyonda saat kolu durmalıdır. Yukardaki formülümüzü bir test edelim.

(1x60+0) x 0.5=30 derece.

Şu anda rotasyon değerlerini oluşturduk. Şimdi onları setProperty komutu ile çevirme işlemi başlıyor.

setProperty("saniye_kolu",_rotation,saniye_rotasyon);

Burada saniye kolu klibinin yukarda anlatılan yöntemle kaç derece çevrileceğini yazıyoruz.

Aynı işlemi saat ve dakika için de oluşturuyoruz. EnterFrame işlemide bu bilgileri devamlı güncelleyerek saatimizi kusursuz çalıştırıyor.

Analog saat hazırlamada başka işlem ve komutlarda uygulanmasına rağmen en basit yöntem gördüğünüz yöntemdir.
Kaynak dosyayı indirmek için tıklayın
Sayfa başına dön Aşağa gitmek
Kullanıcı profilini gör http://www.weyyo.com
 
Flash'ta Yuvarlak Saat Yapımı
Sayfa başına dön 
1 sayfadaki 1 sayfası
 Similar topics
-
» Kart satarken bug yapılıomu ????

Bu forumun müsaadesi var:Bu forumdaki mesajlara cevap veremezsiniz
ExtraForum - 1299 Private Serverlar - Server Dosya Paylaşımları :: ActionScript-
Buraya geçin:  

weyyo

knight online serverlar

metin2 serverlar

silkroad serverlar