Profili Göster

Adobe After Effects Expressions 5 Basit Aritmetik İşlemler

adem Kılıc Tarih: 27/07/2008 Yorum: 5 adet

Okunma : 725 Tutanlar: Bu yazıyı 3 kişi tuttu.

Adobe After Effects Expressions ‘ta basit aritmetik işlemler konulu bu dersimizde öncelikle matematiksel olarak Aritmetik İşlem İşaretleri ve Öncelik Sıralaması‘na değinmekte fayda var.

Matematiksel işlem ve işlem sırası bütün programlama dillerinde benzer şekildedir.


+   Toplama işlemini yapar.
    sayi = 10 + 5 (Not: sayi=15 olur)

-   Çıkartma işlemini yapar. 
    sayi= 10 - 5 (Not: sayi=5 olur)

*   Çarpma işlemini yapar.
    sayi = 10 * 3 (Not: sayi=30 olur)

/ Bölme işlemi yapar.  
    sayi= 10 / 3 (Not: sayi=3.3333333333333335 olur)

%   Tamsayılı bölme işlemi yapar ve kalanı verir.
    sayi=10 % 3 (Not: sayi=1 olur)

Günlük matematikte bir toplama işlemini 1 + 1 = 2 şeklinde yaparız. Bütün programlama dillerinde oldugu gibi java 1.2 de farklı bişey yoktur.

a = 1 + 1;

Java + işaretini gördüğü zaman hemen sağındaki ve solunda ki sayıları toplamaya çalışır. Yukarıdaki örnekteki gibi artı işaretinin sağındaki ve solundakini toplayıp (=) atama oparötörü ile a değişkenine atıyoruz.

Değişkenler ile ilgili daha fazla bilgi için Expressions Varibles(değişkenler) bu dersten faydalanabilirsiniz.

a nın değeri tabiki 2 dir.

a değişkenini değerini 3 arttırmak istersek a += 3; yazmamız yeterlidir. Bu işlem eger sadece 1 arttırmak istersek a++; yeterli olacaktır.

Java, bölü işaretinin solundaki sayıyı, sağındaki sayıya böler; yıldız (asterisk) işaretinin sağındaki ve solundaki sayıları birbiri ile çarpar

a = 2;

b = 4;

c = a * b;

d = c / a;

e = d - b;

sonuç sizinde hesapladıgınız gibi 0 dır.

Bu işlemlerde çarpma, bölme ve kalanlı bölme işlemlerinin toplama ve çıkarma işlemine göre önceliği vardır. Bir işlemde eğer hiç parantez yoksa, soldan sağa doğru sırasıyla çarpma ve bölme işlemleri yapılır. Bu prensip her bilgisayar dilinde ve hesap makinelerinde de geçerlidir. Aşağıdaki örneklere bakalım.

sayi = 5 * 6 - 10 / 5

Bu işlemde çarpma önceliği – işaretine göre daha fazla olan * ve / işlemleri yapılır. (* ve / işlemlerinin önceliği aynıdır.) Bu durumda sayi = 30 – 2 = 28 olur.

sayi = 5 * 6 / 10 * 2 + 4 * 3

Bu işlemde önceliği aynı olan çarpma ve bölme işlemleri birarada yer alıyor. Bu durumda işlemler sırayla yapılır. Önce 5 ile 6 çarpılır, çıkan sonuç 10’a bölünür ve çıkan sonuç 2 ile çarpılır. Ve sayi = 6 + 12 = 18 sonucuna ulaşılır.

sayi = ((5 * 6) / (10 * 2) + 4) * 3

Bu işlemde parantezler söz konusu. Ve her zaman parantezlerin önceliği vardır. İlk önce iki iç parantez içindeki işlemleri, sonra büyük parantez içindeki işlemleri yaparız. Böylece sayi = (30 / 20 + 4) * 3 = (5.5 + 4) * 3 = 9.5 * 3 = 28.5 sonucunu elde ederiz.

Değişken Değerini Taşıdığı Değere Göre Değiştirme

Bazen değişkenlerin değerini, kendisiyle işlem yaparak değiştirebiliriz. Örneğin:

sayi = 5
sayi = sayi + 1
    Bu durumda sayi = 5 + 1 = 6 olur.

sayi = 4
sayi = sayi - 1
    Bu durumda sayi = 4 - 1 = 3 olur.

sayi = 6
sayi = sayi * 5
    Bu durumda sayi = 6 * 5 = 30 olur.

sayi = 10
sayi = sayi / 2
    Bu durumda sayi = 10 / 2 = 5 olur.

sayi = 10
sayi = sayi % 4
    Bu durumda sayi = 10 % 4 = 2 olur.

Bu işlemleri şu işaretlerle de yapabiliriz: "+=", "-=", "*=", "/=" ve "%=". Aşağıdaki işlemler birbiriyle aynı sonucu verir.

sayi += 5    eşittir     sayi = sayi + 5
sayi -= 4   eşittir     sayi = sayi - 4
sayi *= 6   eşittir     sayi = sayi * 6
sayi /= 2   eşittir     sayi = sayi / 5
sayi %= 4   eşittir     sayi = sayi % 4

Bu aritmetik işlemler C ve Java’da da aynı şekilde kullanılmaktadır. Bu işaretlerin yanında, özelleşmiş iki işaret daha vardır: ++, —.

sayi++   eşittir     sayi = sayi + 1
sayi--  eşittir     sayi = sayi - 1

Bir sonraki dersin konusu "Expression kullanarak basit animasyon yapmak " olacaktır.

aç-kapa İçeriğin rss beslemesi kullanımda değil Yorumlar

Profili Göster
Emre Telci 28/07/2008

After Effects, hernekadar Java Script tabanlı bir kodlama sistemi kullansada, Java Script ile aynı değil. Aşağıda bahsettiğin özellikler AE’te desteklenmiyor.


Bu işlemleri şu işaretlerle de yapabiliriz: "+=", "-=", "*=", "/=" ve "%=". Aşağıdaki işlemler birbiriyle aynı sonucu verir.
sayi += 5    eşittir     sayi = sayi + 5
sayi -= 4   eşittir     sayi = sayi - 4
sayi *= 6   eşittir     sayi = sayi * 6
sayi /= 2   eşittir     sayi = sayi / 5
sayi %= 4   eşittir     sayi = sayi % 4
Bu aritmetik işlemler C ve Java'da da aynı şekilde kullanılmaktadır. Bu işaretlerin yanında, özelleşmiş iki işaret daha vardır: ++, --.
sayi++   eşittir     sayi = sayi + 1
sayi--  eşittir     sayi = sayi - 1

"+=", "-=", "*=", "/=", "%=", "++" ve "—" operatörlerini After Effects Expressionlarda kullanamazsın..

Örneğin += operatörünü kullanırsan AE hata verir ve "invalid numeric result (divided by zero) sıfıra bölünmüş bir değer atayamazsınız" der. Çünkü matematik işlemi yaptığını düşünüp, +’dan sonra bir değer girmeni bekler toplamak için…

Yani aşağıda verdiğin örnek, After Effects’te Xpressions kullanarak yazılmak istenirse doğru olmaz.



a değişkenini değerini 3 arttırmak istersek a += 3; yazmamız yeterlidir. Bu işlem eger sadece 1 arttırmak istersek a++; yeterli olacaktır.

İyi günler.

Profili Göster
adem Kılıc 28/07/2008

Şu kodu bir deneyin isterseniz.




a = 4;
b = 2;
a += 5;
a -= 3;

a*= 2;

a /=2;

a++;

a--;

[a,b]

a değişleninin sonucu 6 dır.

Bu değişkenlere hareketli nesnelerin konularınıda toplayıp atayabilirsiniz.

İyi günler.

Profili Göster
Emre Telci 28/07/2008

Sevgili Adem, Evet, şimdi farkettim ki kullanabiliyormuşuz :) Daha öncesinde bununla ilgili bir işte çalışmamıştı ama sorunun benden kaynaklandığını şimdi anladım sanırım. Aslında basit gibi gözükse de derin bir konu var burada. AE’de kod yazan bir çok kişi ++ operatörü gibi şeylerin yüzünden yanılgıya düşüyor. ++’yı daha başka bir platformda kullanmış olan kişiler, bunu AE’de de aynı şekilde davranmasını bekliyorlar. Yani örneğin,


rotation = rotation + 15 ;

Şeklinde bir kod yazan birisi bunun çalışmasını ve her frame’de rotation değerinin 15 artarak gitmesini bekliyor. Ama bu şekilde olmuyor. Bunun bir nedeni de Global Variables (global değişkenler) in olmaması. Yani bir expression’un diğer bir expression ile iletişime geçmesi sadece tek yoldan oluyor o da expressionun uygulandığı parametreye bağlanması…

Profili Göster
adem Kılıc 28/07/2008

Öncelikle Amacımız Expressions ile ilgili insanları bilgilendirmek, düşüncenizde size hakveriyorum ama herkes programlama bilmiyor onun için bu kadar dipten başlamayı uygun gördüm.Birkaç ders daha müfredat niteliğinde olacak daha sonra daha kapsamlı uygulamalar geliştireceğizdir.

Profili Göster
Adnan ER 31/07/2008

Hastasıyım bu dersin. Delice faydalı. ; )

yeni üyelik | şifremi unuttum

aç-kapa Toplantı Kahraman ve need4code.com Projesi Connect Toplantısı

Kahraman ve need4code.com Projesi Connect Toplantısı

Selam arkadaslar, Programlama ile uğraşanların hayatlarını kolaylaştıracak desktop ve web tabanlı ortak iki proje ile ilgili 3. toplantımızı 3Aralık...
Kategori: Toplantı

aç-kapa Yarışma Fikir10000 Dijital Pazarlama Fikir Yarışması

Fikir10000 Dijital Pazarlama Fikir Yarışması

ADTECH tarafından düzenlenen Fikir10000 yarışmasına; dijital pazarlama ile ilgili size ait olan fikrinizle katılabilir ve 10.000 YTL’lik birinci...
Kategori: Yarışma

aç-kapa Yarışma 7Dx Demoscene Party

7Dx Demoscene Party

2002 yılından beri amatör bilgisayar kültürü ile ilgilenen insanları bir araya getirmeyi hedefleyen 7DX parti serisinin bu seneki ayağı olan 7D8 Demo ...
Kategori: Yarışma

aç-kapa Eğitim Türkiye'de İnternet Konferansı - Internet Teknolojileri Derneği -22-23 Aralık ODTÜ

Türkiye'de İnternet Konferansı - Internet Teknolojileri Derneği -22-23 Aralık ODTÜ

Etkin Katılım Çağrısı Türkiye’de Internet ile ilgili grupları biraraya getirerek İnternet’i tum boyutlarıyla tanıtmak, gelistirmek, tartı...
Kategori: Eğitim

aç-kapa Konferans Bilgi Güvenliği ve Kriptoloji Konferansı

Bilgi Güvenliği ve Kriptoloji Konferansı

Önemli Tarihler: Etkinlik Tarihi : 24-26 Aralık 2008 Son Bildiri Gönderme Tarihi : 20 Ekim 2008 Bildiri Kabul Tarihi Bildirimi :...
Kategori: Konferans

üyeler Son Kahramanlar...

stats Kimler Burada? web stats

Son 1 dakika içinde MMIstanbul' da 374 (3 kayıtlı, 371 ziyaretçi) kullanıcı varmış. Login durumda olanlar aşağıda:

coldfusion mysql ubuntu
 
sponsor adobe istanbul