Openframeworks Ders 1 (Genel Bakış)

talhakoc 27 Ağustos 2015Openframeworks

Openframeworks’ün windows ve linux platformlarındaki kurulumları gösterilmiştir. Bundan sonraki aşama iki platform için de uygulanabilecektir. Herhangi bir farklılık göstermemektedir. Yanlız bazı noktalarda(Video codec desteklemesi) windows için farklı işlemler yapılması gerekebilir.

Projeyi açtıktan sonra proje kısmında src isimli dosyanın altında kod dosyaları bulunmaktadır. src dosyasının içinde “main.cpp” , “testApp.cpp” ve “testApp.h” dosyaları bulunacaktır. Kurulumdan sonra ilk program açılıp çalıştırıldığında görülen boş sayfa main dosyasında açılmaktadır. “testApp.h” dosyasında gerekli kütüphaneler eklenmiştir. Aynı zamanda da kullanılacak global değişkenler ve classlar tanımlanır. asıl programın yazıldığı kısım ise “testApp.cpp” isimli dosyadır. Eğer windows üzerinden uygulama geliştiriliyorsa “testApp” yerine “ofApp” ismi ile de karşılaşılabilir. src dosyasına tıklandığı taktirde aşağıdaki gibi bir kodlama ile karşılaşılır.

#include “ofApp.h”

//————————————————————–
void ofApp::setup(){

}

//————————————————————–
void ofApp::update(){

}

//————————————————————–
void ofApp::draw(){

}

//————————————————————–
void ofApp::keyPressed(int key){

}

//————————————————————–
void ofApp::keyReleased(int key){

}

//————————————————————–
void ofApp::mouseMoved(int x, int y){

}

//————————————————————–
void ofApp::mouseDragged(int x, int y, int button){

}

//————————————————————–
void ofApp::mousePressed(int x, int y, int button){

}

//————————————————————–
void ofApp::mouseReleased(int x, int y, int button){

}

//————————————————————–
void ofApp::windowResized(int w, int h){

}

//————————————————————–
void ofApp::gotMessage(ofMessage msg){

}

//————————————————————–
void ofApp::dragEvent(ofDragInfo dragInfo){

}

Openframeworkste kodlama yukarıda görülen fonksiyonlar içerisine bina edilmektedir. Yukarıda görülen yapı büyük projeleri ya da problemleri ufak parçalara ayırarak kullanıcılara büyük kolaylık sağlamak adına geliştirilmiştir. Kodlamada ve kodlamanın anlaşılmasında büyük kolaylık sağlamaktadır. Özellikle kullanıcı etkileşimli projelerde çok etkili bir yapıdır.

setup() bu fonksiyon programın başında bir defa çalışan bir fonksiyondur. Genel olarak pencere boyutunun ayarlanmasında, değişkenlere ilk değerlerinin atanmasında, şekillerin ilk lokasyonlarının belirlenmesi, arka planın ayarlanması gibi durumlar için kullanılmaktadır.

update() ve draw() fonksiyonları ise setup() fonksiyonları çalıştıktan sonra döngüsel olarak çalışmaktadır. Program sonlanana kadar sonsuz döngü görevi görürler. Ancak oldukça hızlı çalışmaktadırlar. yani setup() fonksiyonu çalıştıktan sonra update(), draw(), update(), draw() şeklinde sırayla program sonlanana kadar çalışırlar. Bu da animasyonel işlemler için büyük bir kolaylık sağlamaktadır.

Bu fonksiyonların haricindeki keyPressed(), keyReleased(), mouseMoved(), mouseDragged(), mousePressed(), mouseReleased(), windowResized(), gotMessage(), dragEvent() fonksiyonları ise diğer bu üç döngü haricinde sadece programın kullanıcı ile etkileşimi sırasında çalışmaktadır. Örneğin keyPressed() fonksiyonu sadece klavyeden herhangi bir tuşa basıldığı taktirde aktif olmakta, ve altındaki işlemleri gerçekleştirmektedir.

 

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Arama

Twitterda

© 2014 - Talha Koç. All Rights Reserved. Powered by Wordpress and Design by We Create Web Designs