![]() |
1,215,334 Üye | 458,535 Konu | 4,507,598 Mesaj | 940 Online |
![]() ![]() ![]() ![]() |
|
|||||||
![]() |
|
|
LinkBack | Seçenekler | Stil |
|
|
#1 |
|
Rotasyon, nesnelerin belirli bir noktaya göre yatay eksenle yaptığı açısının değiştirilmesi durumudur.
Rotasyonun referans aldığı noktayı manuel olarak değiştirip nesneyi belirli bir noktaya göre döndürebirilirz. Bunu kodlamalarla yapmak istediğimizde ise dönme noktasını direkt veya indirekt olarak değiştirme gibi birkaç yöntem bize yardımcı olacaktır. Mesela nesneyi bir klip içine koyup daha sonra dışardaki klibin rotasyonunu değiştirmek. Bu yolla içerdeki nesnenin x ve y koordinatlarını değiştirerek içteki klibin dönme noktasını değiştirmiş gibi oluruz. Başka bir yöntem olarak, nesnenin x ve y konumlarını trigonometrik olarak sinus ve kosinüs değişkenleri ile orantılandırıp yüzünü de (aradaki açının değerini rotasyona atayarak) merkez noktaya çevirirsek yine dönme noktasını değiştirebilme şansımız olur. Bunlardan başka mutlaka çok yöntem vardır ama benim son belirtmek istediğim yöntem MatrixTransformer sınıfını kullanarak yapılan dönme merkez noktası değişimidir. Bu yazıda bu son yöntemin üzerinde duracağız. Öncelikle yapacağımız uygulamaya bakalım; ÖNİZLEME İÇİN TIKLAYINIZ. Görüldüğü gibi nesne mouse tıklamasıyla değiştirilebilen bir odak noktaya göre dönüyor. Bunu yapabilmek için aşağıdaki, açıklamaları aynı satırda verilmiş olan kodları kullanıyoruz (objeler kodla oluşturuşuyor, dolayısıyla sadece kodları eklemeniz yetecek) Tek yapmanız gereken yeni bir ActionScript 3.0 dosyası açmak ve F9 komutuyla Action Script panelini açıp aşağıdaki kodları oraya yapıştırmak. Kod:
import fl.motion.MatrixTransformer;/*sınıfı çekiyoruz*/
var kare:Shape=new Shape();/*dönme noktası ile oynayacağımız dörtgeni çiziyoruz*/
kare.graphics.beginFill(0x79899F,1)/*dolgu rengi, alpha*/
kare.graphics.lineStyle(1, 0x58677C);/*çizgi kalınlığı, rengi*/
kare.graphics.drawRect(stage.stageWidth/2-30, stage.stageHeight/2-30, 60,60);/*sahnenin ortasına bir kare*/
kare.graphics.endFill();/*dolgu bitti*/
addChild(kare);/*sahneye eklendi*/
var odak:Shape=new Shape();/*odak noktasını belirteceğeimiz daireyi çiziyoruz*/
odak.graphics.beginFill(0xffffff,.3)
odak.graphics.lineStyle(1, 0xC9C8BE);
odak.graphics.drawCircle(0, 0, 3);
odak.graphics.endFill();
odak.x=stage.stageWidth/2;odak.y=stage.stageHeight/2
addChild(odak);
stage.addEventListener(Event.ENTER_FRAME, calis);/*enterframe fonksiyonunu atıyoruz*/
var m:Matrix = new Matrix();/*matrixTransformer'da kullanacağımız matrix'i tanımladık*/
function calis(e:Event){/*fonksiyonu yazıyoruz*/
MatrixTransformer.rotateAroundExternalPoint(m, odak.x, odak.y, 5);/*rotateAroundExternalPoint, klibi belirlenen noktalarla döndürmek için kullanılıyor.
Kodda 5 değeri verdiğimiz kısım dönme açısıdır, her frame de mevcut rotasyona bu değer katılıyor. arttırırsak hızlı döner, negatif değer verirsek ters yöne döner.*/
kare.transform.matrix = m;/*karenin transform matrix'ini bizim matrixe eşitliyoruz*/
}
stage.addEventListener(MouseEvent.MOUSE_DOWN,tik);/*odak koordinatlarını mouse tıklamasına göre ayarlıyoruz*/
function tik(e:MouseEvent) {
odak.x=mouseX
odak.y=mouseY
}
Test için Ctrl+Enter Bir sonraki derste görüşmek üzere.
__________________
|
|
|
|
|




Tüm yerli ve yabancı
diziler HHİzle'de siz dizi severler ile buluşuyor.
|
|
#2 |
|
swfcabin alışmışsın :D
güzel ...
__________________
Evet KabuL ettiM hepiniZ 1 Numara Evet Haklısın benim yokki Bi Numaram Hepiniz Kralsınız Hepiniz Mükkemmel Ben Kendi Çapımdayım Kalemim Tükenmez !!! ( Sehabe - Bana Her Yol Paris Hilton ) |
|
|
|
|
| Bu mesaj için Ethnic kullanıcısına teşekkür edenler: | WaTcHFuL (04-02-2010) |




Tüm yerli ve yabancı
diziler HHİzle'de siz dizi severler ile buluşuyor.
|
|
#3 |
|
Eline SağLık adamım
|
|
|
|
|
| Bu mesaj için TheMetaor kullanıcısına teşekkür edenler: | WaTcHFuL (06-02-2010) |




Tüm yerli ve yabancı
diziler HHİzle'de siz dizi severler ile buluşuyor.
|
|
#4 |
|
belli bir yerde yaptınmı kutuyu kaybediyorum
|
|
|
|
|




Tüm yerli ve yabancı
diziler HHİzle'de siz dizi severler ile buluşuyor.
|
|
#5 |
|
Merkez noktasına yakın bir yere tıklama yaparsanız eminimki tekrar geri gelecektir. ![]()
__________________
|
|
|
|
|




Tüm yerli ve yabancı
diziler HHİzle'de siz dizi severler ile buluşuyor.
![]() |
| Etiketler |
| basina, burada, donen, kendi, kod, merkez, noktasi, var, yalnizca |
| Seçenekler | |
| Stil | |
|
|
|
Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 04:47 AM.
|
| Forum | Yasal Uyarı | HH |
|
Kullanılan Portal Sürümü : HH Portal Script Sürümü : vBulletin Version 3.8.4 PL1 Seo Yazılımı : vBSEO ©2009, Crawlability, Inc Copyright ©2000 - 2010, Jelsoft Enterprises Ltd. Sitemiz Internet Explorer 6+, Firefox 2.0.0.14+, Opera 9.52+, Safari 3.1.2+, Chrome 0.2.153.1+ ve 1024x768+ Ekran Çözünürlüğünde Test Edilmiştir. Sponsor Bağlantı : web tasarım | dövme | mirc indir | sanal sunucu | mirc | sohbet | sohbet |
Sitemiz, hukuka, yasalara, telif haklarına ve kişilik haklarına saygılı olmayı
amaç edinmiştir. Sitemiz, 5651 sayılı yasada
tanımlanan .yer sağlayıcı. olarak hizmet
vermektedir. İlgili yasaya göre, site yönetiminin hukuka aykırı içerikleri
kontrol etme yükümlülüğü yoktur. Bu sebeple, sitemiz .uyar
ve kaldır. prensibini benimsemiştir. Telif hakkına konu olan eserlerin
yasal olmayan bir biçimde paylaşıldığını ve yasal haklarının çiğnendiğini
düşünen hak sahipleri veya meslek birlikleri,
abuse@hackhell.com mail adresinden bize
ulaşabilirler. Buraya ulaşan talep ve şikayetler Hukuk Müşavirimiz tarafından
incelenecek, şikayet yerinde görüldüğü takdirde ihlal olduğu düşünülen içerikler
sitemizden kaldırılacaktır. Ayrıca, mahkemelerden talep gelmesi halinde hukuka
aykırı içerik üreten ve hukuka aykırı paylaşımda bulunan üyelerin tespiti için
gerekli teknik veriler sağlanacaktır.
|
|