CLDC Konfigürasyonuna Sahip Mobil Cihazlarda 3B Grafiklerin Görselleştirilmesi

Benzer belgeler
Java 2 Micro Edition (J2ME)

Java Micro Edition Java ME

Android e Giriş. Öğr.Gör. Utku SOBUTAY

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Java Temel Özellikleri

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 7. LINUX OS (Sistem Yapısı) BİLGİ & İLETİŞİM TEKNOLOJİLERİ. LINUX Yapısı

Akıllı telefonlar, avuçiçi bilgisayarlar ile taşınabilir (cep) telefonların özelliklerini birleştiren cihazlardır. Akıllı telefonlar kullanıcıların

Programlama Dillerinde Kullanılan Veri Tipleri

Kablosuz Algılayıcı Ağları İçin TinyOS İle Uygulama Geliştirme

C# nedir,.net Framework nedir?

İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, Kabuk ve diğer temel kavramlar) Öğr.Gör. Dr. Dr. Şirin KARADENİZ

BİLGİSAYAR PROGRAMLAMAYA GİRİŞ

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 10. Yrd.Doç.Dr.Hacer Karacan

Altuğ B. Altıntaş

İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, kabuk ve diğer temel kavramlar) Bir işletim sisteminin yazılım tasarımında ele alınması gereken iki önemli konu

Üç Boyutlu Grafik Teknolojilerinin Mobil Öğrenme Alanı ile Bütünleştirilmesi

Doğu Akdeniz Üniversitesi Bilgisayar Mühendisliği Bölümü. BLGM 318 Ara Sınavı Đlkbahar Dönemi 13 Nisan Ad, Soyad Öğrenci No.

NACA PROFİL AİLE GEOMETRİSİ HESAP PROGRAMI KULLANMA KILAVUZU

Görsel Programlama DERS 01. Görsel Programlama - Ders01/ 1

ANKARA ÜNİVERSİTESİ ELMADAĞ MESLEK YÜKSEKOKULU BİLGİSAYAR PROGRAMCILIĞI PROGRAMI DERS İÇERİKLERİ

Java Programlamada Paket Yapısı Ve Import

Java diğer programlama dilleri gibi başlı başına bir ürün değildir.

Java Dersi. Altuğ Bilgin Altıntaş

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 10. LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ

Bilişim Teknolojilerine Giriş

Google Web Toolkit ile Öğretim Elemanı Otomasyon Sistemi

Sanal Ortamda Nesnelerin Haptic Kol ile Manipülasyonu. Sevcan AYTEKİN Alpaslan DUYSAK

4. Bölüm Programlamaya Giriş

emon: Gerçek Zamanlı Gömülü Sistemlerin Çalışma Zamanı Görselleştirilmesi İçin Monitör Yazılımı

Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 1. Bölüm C# Programlamaya Giriş

1.1 Metodolojiyi Gerçeklemek Üzere Geliştirilen Altyapı

DENİZ HARP OKULU BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

İşletim Sistemleri. Discovering Computers Living in a Digital World

Java Programlama Giriş

BİLİŞİM SİSTEMLERİNİN PRENSİPLERİ

MAT213 BİLGİSAYAR PROGRAMLAMA I DERSİ Ders 1: Programlamaya Giriş

MOBİL TEKNOLOJİLERDE SERVİS TABANLI YAZILIM GELİŞTİRME

BSM 532 KABLOSUZ AĞLARIN MODELLEMESİ VE ANALİZİ OPNET MODELER

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Windows Mobile İşletim Sistemleri İçin Veri Giriş Yazılımı

Java C.Thomas Wu 2004b kitabından Türkçeleştirilerek ve örneklendirilerek hazırlanmıştır.

BİL 542 Paralel Hesaplama. Dersi Projesi. MPJ Express Java Paralel Programlama

Üst Düzey Programlama

Symbian İşletim Sistemi

Bilgisayar İşletim Sistemleri BLG 312

Öğr.Gör. Gökhan TURAN Gölhisar Meslek Yüksekokulu

Bu Kitap Kime Hitap Eder? 2 Kitapta Nelerden Bahsedilmiştir? 3 Kitabı Takip Edebilmek için Nelere İhtiyaç Duyacaksınız?

Üst Düzey Programlama

Eclipse, Nesneler ve Java 2 Java Nereden Çıktı? 2

BM-209 Nesne Yönelimli Programlama. Yrd. Doç. Dr. İbrahim Alper Doğru Gazi Üniversitesi Teknoloji Fakültesi Bilgisayar Mühendisliği Bölümü

Java. ile Nesneye Yönelik Programlama

Öğr. Gör. Serkan AKSU 1

Qlik Sense için sistem gereksinimleri. Qlik Sense 3.2 Telif Hakkı QlikTech International AB. Tüm hakları saklıdır.

Kullanıcılar için EGEE ve TR-Grid araçları

JAVA MOBIL UYGULAMALAR

Kılavuz içerisinde TalksPBX kurulumu anlatılmakta olup, yapacağınız konfigürasyonlar satın aldığınız lisans ile sınırlıdır.

Pardus. S.Çağlar Onur, 21 Aralık Pardus Projesi [TÜBİTAK / UEKAE] Linux Kullanıcıları Derneği

Pardus. A. Murat Eren, 25 Mart Pardus Geliştiricisi. Pardus Yenilikleri Sık Sorulan Sorular

Linux İşletim Sistemleri. Eren BAŞTÜRK.

İNTERNET ÜÇ BOYUT X3D İLE. Tahir Emre KALAYCI. Ege Üniversitesi Bilgisayar MühendisliM ŞUBAT 2005

Akademik Bilişim '07 Dumlupınar Üniversitesi / Kütahya. Üç Boyutlu Binaların Web Üzerinde Otomatik Olarak JOGL ile Modellenmesi


Açık Kaynak Kodlu Yazılım

MATRİKS E-BROKER ELEKTRONİK İŞLEM PLATFORMU MATRİKS TRADER VE JAVA MATRİKS ENTEGRASYONLARI

TEMEL BİLGİ TEKNOLOJİLERİ KULLANIMI

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ

Üst Düzey Programlama

YZM 2105 Nesneye Yönelik Programlama

1.1.1 Network Konfigürasyonu

AJAX nedir? AJAX nasıl çalışır? AJAX. Tahir Emre KALAYCI. Sunucu Yazılım Teknolojileri

T.C. KARADENİZ TEKNİK ÜNİVERSİTESİ FEN EDEBİYAT FAKÜLTESİ İSTATİSTİK VE BİLGİSAYAR BİLİMLERİ BÖLÜMÜ BİTİRME ÇALIŞMASI KEMAL OLÇA

Tarih Saat Modül Adı Öğretim Üyesi. 01/05/2018 Salı 3 Bilgisayar Bilimlerine Giriş Doç. Dr. Hacer Karacan

ÖZGÜR YAZILIMLAR İLE J2EE

Görsel Programlama DERS 07. Görsel Programlama - Ders07/ 1

EM205 26/9/2014. Programlamaya giriş Algoritmalar. Amaçlar

İNÖNÜ ÜNİVERSİTESİ MALATYA MESLEK YÜKSEKOKULU DERS TANITIM FORMU. Kredisi AKTS Eğitim Dili Tipi: Zorunlu/ Saat

Kablosuz Algılayıcı Ağları ile Yangın Tespit Sistemi

Görsel Programlama DERS 03. Görsel Programlama - Ders03/ 1

MATLAB A GİRİŞ. EE-346 Hafta-1 Dr. Ayşe DEMİRHAN

1 GİRİŞ 1 Bu Kitap Kime Hitap Eder? 2 Kitapta Nelerden Bahsedilmiştir? 3 Kitabı Takip Edebilmek için Nelere İhtiyaç Duyacaksınız?

Bilgisayar Grafikleri

ÖĞRENCİ LABORATUARLARI İÇİN OPTİMUM ÇÖZÜMLER

MOBİL UYGULAMA GELİŞTİRME

İşletim Sistemlerine Giriş

Temel Bilgi Teknolojileri I

Bilecik Üniversitesi Mühendislik Fakültesi Moodle Uzaktan Öğretim Sistemi

Alanya Alaaddin Keykubat UniversityInternational Relations Office

Sistem Nasıl Çalışıyor: Araç İzleme ve Filo Yönetim Sistemi

Özgür Yazılımlarla Web Programlama. Özlem Özgöbek

BEDEN EĞİTİMİ I: Haftalık ders 1 saattir (T-0 ) (U-l) (K-0).

Java da İstemci Tarafı Uygulamalar

Java da Soyutlama ( Abstraction ) ve Çok-biçimlilik ( Polymorphism )

Akademik Dünyada Özgür Yazılım. Akademik Dünyada. Onur Tolga Şehitoğlu

MOBİL İLETİŞİM CİHAZLARI İLE EV OTOMASYON SİSTEMLERİ (EOS)

BİLGİSAYAR PROGRAMLAMA (C#) DERS NOTU 1

SIMAN KULLANIM KILAVUZU

Yüksek Öğretimde Mobil Eğitime Geçiş İçin Yol Haritası: Atılım Üniversitesi Örneği

OMNET Ağ Benzetim Yazılımı (Network Simulation Framework) BİL 372 Bilgisayar Ağları. GYTE - Bilgisayar Mühendisliği Bölümü

İNÖNÜ ÜNİVERSİTESİ MALATYA MESLEK YÜKSEKOKULU DERS TANITIM FORMU. Kredisi AKTS Eğitim Dili Tipi: Zorunlu/ Saat

İçerik. Temel Kavramlar. Nesne Nedir? 1. Nesne : Örnek. Nesne Nedir? 2. Geçen hafta: Bu hafta: BBS-515 Nesneye Yönelik Programlama

Transkript:

Akademik Bilişim 07 - IX. Akademik Bilişim Konferansı Bildirileri 31 Ocak - 2 Şubat 2007 Dumlupınar Üniversitesi, Kütahya CLDC Konfigürasyonuna Sahip Mobil Cihazlarda 3B Grafiklerin Görselleştirilmesi Oğuz Dönmez 1, Aybars Uğur 2, Ata Önal 2 1 Ege Üniversitesi, Tire Kutsan MYO, Bilgisayar Teknolojisi ve Programlama Programı 35900, İzmir 2 Ege Üniversitesi, Mühendislik Fakültesi, Bilgisayar Mühendisliği Bölümü, İzmir oguz.donmez@ege.edu.tr, aybars.ugur@ege.edu.tr, ata.onal@ege.edu.tr Özet: Bu çalışmada, CLDC konfigürasyonuna sahip mobil cihazlar üzerinde M3G arayüzü ile bir 3B grafik gösterim uygulaması yapılmıştır. İlk olarak konuyla ilgili literatürde bulunan bilgiler verilmiş daha sonra geliştirilen uygulama anlatılmıştır. Geliştirilen uygulama ile, iki değerin iki kategori için 3B sütun türü grafik ile gösterilmesi gerçekleştirilmiştir. Bu uygulama ikiden fazla değerin ikiden fazla kategori için farklı grafik türleriyle gösterilmesi sağlanarak geliştirilebilir. Anahtar Kelimeler: Mobil Teknolojiler, Görselleştirme, J2ME, MIDP, M3G. Visualizing 3B Charts on CLDC-Configurated Mobile Devices Abstract: In this study, 3D graphical representation application on cldc-configurated mobile devices has been done using M3G API. First related information in literature has been specified then implemented application has been described. By implemented application, two values in two categories has been represented with 3D column chart. This application can be improved by representing more values in more categories with different chart types. Keywords: Mobile Technologies, Visualization, J2ME, MIDP, M3G. 1. Giriş Cep telefonu ve palm gibi CLDC konfigürasyonuna sahip mobil cihazlar sınırlı kaynaklara ve sınırlı ekran büyüklüğüne sahip olduğu için bu cihazlarda 3B grafiklerin gösterilmesi önemli araştırma konularından biridir. CLDC konfigürasyonuna sahip mobil cihazlar için Sun ın ürettiği Java versiyonu olan J2ME, uygulama geliştirmede kullanılabilir. Mobil cihazlar için geliştirilen MIDP uygulamalarında 3B içerik eklemek için M3G API kullanılabilir. Bu makalenin 2., 3. ve 4. bölümlerinde sırasıyla J2ME, MIDP ve M3G hakkında bilgiler verilmektedir. Bölüm 5 te ise, geliştirilen uygulama kısaca tanıtılmakta ve Bölüm 6 da örnek bir senaryo üzerinde anlatılmaktadır. Bölüm 7 de ise yapılan çalışma sonunda elde edilen sonuçlar verilmiştir. 2. J2ME (JAVA 2 Micro Edition) Java 2 Micro Edition(J2ME); PDA lar, cep telefonları ve diğer elektronik ve gömülü cihazlar gibi sınırlı donanım kaynaklarına sahip makineler için Sun ın ürettiği Java versiyonudur. 128 KB RAM gibi az belleğe sahip ve tipik masaüstü bilgisayarlarda kullanılan işlemcilerden çok az güce sahip makinelerde kullanılmak üzere üretilmiştir. J2ME, profiller kümesi içerir. Her profil belirli tipteki cihaz(cep telefonları, PDA lar, mikro dalga fırınlar) için tanımlanmıştır. Belirli tipteki cihaz için gerekli minimum sınıf kütüphanesini ve cihazı desteklemek için Java sanal makinesinin bir belirtimini içerir. Herhangi profildeki sanal makine- 561

CLDC Konfigürasyonuna Sahip Mobil Cihazlarda 3B Grafiklerin Görselleştirilmesi Oğuz Dönmez, Aybars Uğur, Ata Önal nin Java 2 Standard Edition(J2SE) ve Java 2 Enterprise Edition(J2EE) de kullanılan sanal makineyle aynı olmasına gerek yoktur[1]. Sun ın yayınladığı profiller [1]: Foundation Profile: Yeni nesil elektronik cihazlar için profil. CDC temelli ve grafik arayüzü olmayan cihazlar içindir. Mobile Information Device Profile(MIDP): hücresel telefon ve PDA lar gibi mobil bilgi cihazları için profil. CLDC temellidir. Personal Basis, Personal and RMI Profile: CDC&Foundation Profile temelli cihazlar için temel grafik ve RMI desteği sunar. Profilin kendisi hiç bir şey yapmaz; sadece belirtimi tanımlar. Profiller konfigürasyonla gerçekleştirilirler Mevcut konfigürasyonların bazıları [1]: Connected Device Configuration(CDC): Yeni nesil gömülü ve elektronik cihazlar için Foundation Profile ın gerçekleştirimidir. Connected Limited Device Configuration (CLDC): Palm cihazları, cep telefonları gibi küçük, kaynak sınırlamalı cihazların MIDP gerçekleştirimidir. Şekil 1, CDC ve CLDC arasındaki ilişkiyi göstermektedir. Aynı zamanda onların J2SE API si ile ilişkilerini de göstermektedir. CDC, bazı ekstra sınıfların olduğu J2SE nin alt kümesidir. CLDC, CDC nin bir alt kümesidir [2]. KVM(Kuaui VM), Java sanal makinesinin tamamen yeni gerçekleştirimidir, küçük cihazlarda kullanılmak için optimize edilmiş bir gerçekleştirimdir. KVM, klasik sanal makineyle aynı bytecode kümesini ve aynı sınıf-dosya biçimini kabul eder [3]. KVM nin özellikleri[3]: Long integer ve floating point veri tipleri seçimliktir. Garbage collection da nesne sonlandırma yoktur. JNI desteği yoktur (KVM nin içindeki native metotlar sanal makinenin içine derlenir, kullanıcı tarafından yüklenemez). Cihazı kullanmadan sınıf geçerlileme Çok boyutlu diziler seçimliktir. Kullanıcı tanımlı sınıf yükleyicileri yoktur (Sadece KVM tarafından desteklenen sistem sınıf yükleyicisi mevcuttur). 3. MIDP: Bir MIDP uygulaması için mevcut API ler CLDC ve MIDP paketlerinden gelir (Şekil 2). CLDC, J2SE dünyasından alınmış API nin özünü oluşturur [4]. Dil sınıfları java.lang ta Akım sınıfları java.io da Basit kolleksiyonlar java.util de Javax.microedition.io da genelleştirilmiş network API si bulunur. Şekil 1. J2SE, CDC ve CLDC karşılaştırması 562 Şekil 2. MIDP API yi oluşturan paketler MID(Mobile Information Device) ler farklı türden ürünleri çalıştırabilir. Şekil 3 olasılıkları gösterir. Her cihaz belirli türden işletim sistemini gerçekleştirir. Native uygulamalar bu katmanın üzerinden direk olarak çalışır. Cihaz

Akademik Bilişim 07 - IX. Akademik Bilişim Konferansı Bildirileri 31 Ocak - 2 Şubat 2007 Dumlupınar Üniversitesi, Kütahya işletim sisteminin üzerinde CLDC ve MIDP API leri vardır. Cihaza özgü java uygulamaları cihaz satıcıları tarafından sağlanan java API lerini kullanabilir [4]. Şekil 3. MID lerin çalıştırabildiği ürünler MIDP in avantajları [4]: Taşınabilirlik: MID uygulama geliştirme için diğer araçları kullanma yerine Javayı kullanmanın avantajı taşınabilirliktir. Güvenlik: Java; appletler gibi indirilmiş kodu güvenli bir şekilde çalıştırma yeteneğine sahiptir. paketlenirken eşlik eden tanımlayıcı dosya(.jad uzantılı) JAR ın içeriğini tanımlar [4]. Bir MIDlet yaşam döngüsü boyunca aşağıdaki durumlardan geçer(şekil 4)[4]: MIDlet çalıştırılmak üzereyken, bir örnek yaratılır. MIDlet in constructor ı çalıştırılır ve MIDlet Paused durumundadır. Sonra, uygulama yöneticisi startapp() ı çağırdıktan sonra MIDlet Active durumuna girer. MIDlet Active iken, uygulama yöneticisi pauseapp() ı çağırarak çalışmasını durdurabilir. Bu MIDlet i yeniden Paused durumuna koyar. notifypaused() çağrılarak MIDlet kendisini Paused durumuna geçirebilir. destroyapp() çağrılarak, uygulama yöneticisi MIDlet in çalışmasını sona erdirebilir. MIDlet yok edildiğinde garbage collection beklenir. notifydestroyed() çağrılarak MIDlet kendini yok edebilir. Mobil cihazlar için Java uygulamalarına MIDlet denir. J2ME platformu için uygulama geliştirmek için JDK(Java Development Kit) ve J2ME Wireless Toolkit in bilgisayara kurulması gerekir. J2ME WTK, MIDlet yaratmak için önemli araçları içerir. MIDlet geliştirme ortamını ve 3D ve Mobile Media uygulamaları gibi seçimlik kütüphaneler için gerekli seçimlik paketleri sağlar. Ayrıca MIDlet leri imzalayarak uzak mobil cihaza kurulmadan önce onların onaylanmasını sağlar [5]. MIDlet Geliştirme aşamaları [2]: Java uygulamanı yaz. Uygulamayı derle. Ön-geçerlilemesini(pre-verify) yap. JAR dosyasına paketle Uygulama tanımlayıcısını yarat. MIDlet suitini yayımla. Bir MIDlet, sınıf dosyaları cihaza taşınarak yüklenebilir. Sınıf dosyaları, Java Archieve(JAR) a 563 Şekil 4. MIDlet Yaşam Döngüsü Her MIDlet, javax.microedition.midlet paketinde bulunan soyut MIDlet sınıfını extend etmelidir. MIDlet in soyut sınıftaki en az 3 metodu override etmesi gerekir, startapp(), pauseapp() ve destroyapp() [5]. 4. M3G: Mobile 3D Graphics(M3G) API, Java Specification Request(JSR) 184 te tanımlanmıştır. Java programlamayı destekleyen mobil cihazlar için 3D API standardı yaratma çabasıdır. M3G sınıfları javax.microedition.m3g paketinde bulunur [7].

CLDC Konfigürasyonuna Sahip Mobil Cihazlarda 3B Grafiklerin Görselleştirilmesi Oğuz Dönmez, Aybars Uğur, Ata Önal M3G, geometri ve diğer nesneleri hiyerarşi içinde organize eder bu nedenle sahne çizgesi tabanlı denir. Sahne çizgesi tabanlı olmasının nedeni, her düğüme dönüşüm uygulayabilmektir. Bu da hiyerarşik animasyon yapabilmemizi sağlar [8]. M3G, Java 3D değildir. Java 3D standart java platformunun yeteneklerini kullanır. Ve mobil cihazlardan daha fazla bellek ve işleme gücüne sahip PC ler için tasarlanmıştır. M3G ve Java 3D farklı amaçlarla tasarlanmış ayrı ve uyumsuz API lerdir. M3G, geliştiricilere 3B grafikleri çizmek için iki yol sağlar: immediate mode ve retained mode [9]. görüntüleyen canvas ı çağıran sınıftır. ExampleCanvas, girilen bilgilere göre 3B grafiği oluşturup görüntüleyen sınıftır. Geliştirilen uygulama MIDP uyumlu ve M3G API yi destekleyen cep telefonlarına yüklenerek çalıştırılabilir. 6. Örnek Senaryo Uygulama çalıştırıldığında ilk olarak kullanıcının grafikle ilgili bilgileri girmesi için kullanılan formlar görüntülenir. İlk veri giriş formu şekil 5 te gösterilmiştir. Immediate mode da, grafik komutları direk boru hattına yayımlanır ve kaplama motoru onları hemen çalıştırır. Bu yöntem kullanılırken; geliştirici, kaplama motoruna her animasyon çerçevesinde ne çizeceğini belirtmelidir [9]. Retained mode, bütün geometrik nesneleri 3B dünyada ağaç yapısında bağlayan sahne çizgesi kullanır. Geometrik yapı, konum ve görünüm gibi her nesne hakkında yüksek seviye bilgi çerçeveden çerçeveye tutulmaktadır [9]. M3G den faydalanabilecek uygulama alanları [8]: Şekil 5. Veri Giriş1 Formu Oyunlar Harita görselleştirme Kullanıcı arayüzleri Canlandırılmış Mesajlar Ekran koruyuculardır. Bu ihtiyaçları karşılamak için API hem yüksek seviye hem de düşük seviye grafik özelliklerini destekler [8]. 5. Geliştirilen Uygulamanın Tanıtılması Cep telefonuna yüklenecek JAR dosyası iki sınıftan oluşur: DGraphics ve ExampleCanvas. DGraphics, kullanıcının grafikle ilgili bilgileri girdiği formların görüntülenmesini ve grafiği 564 Şekil 6. Veri Giriş2 Formu

Akademik Bilişim 07 - IX. Akademik Bilişim Konferansı Bildirileri 31 Ocak - 2 Şubat 2007 Dumlupınar Üniversitesi, Kütahya Bu forma kullanıcı grafik başlığı, seri isimleri ve kategori isimlerini girer. Bu bilgiler girildikten sonra ilgili kategoriler için ilgili verilerin girildiği ikinci veri giriş formu görüntülenir(şekil 6). İkinci veri giriş formuna da ilgili bilgiler girildikten sonra grafiğin bulunduğu canvas görüntülenir (Şekil 7). Grafik başlığı dışındaki grafikle ilgili bilgi ticker da görüntülenir. 7. Sonuç Bu çalışmada, J2ME, MIDP ve M3G kullanılarak CLDC konfigürasyonuna sahip cihazlarda 3B içerik görüntüleme uygulaması gerçekleştirilmiştir. Bu uygulama ile iki nesnenin verilerinin iki kategoride 3B sütun grafik türünde gösterimi gerçekleştirilmiştir. Bu uygulama, ikiden fazla nesnenin verilerinin ikiden fazla kategoride farklı grafik türlerinde gösterimi ile geliştirilebilir. M3G teknolojisinin, sahne çizgesi yapısı ile mobil cihazlar üzerindeki üç boyutlu grafik işlemlerini oldukça kolaylaştırdığı ve hızlandırdığı görülmektedir. Bu tür API lerdeki gelişmeler, üç boyutu, mobil cihazların da ayrılmaz bir parçası haline getirecektir. 8. Kaynaklar Şekil 7. Grafiğin gösterildiği canvas Dikdörtgenler prizması çizdirmek için ilk olarak köşelerin koordinatları tanımlanmış, daha sonra köşelerin renkleri tanımlanmıştır. Bu renk ve koordinatlar için köşe dizinleri oluşturulmuş, köşe tamponuna bu renk ve koordinatlar yüklenmiştir. Bu köşe tamponu kullanılarak ağ oluşturulup group sınıfından oluşturulmuş nesneye eklenmiştir. Şekil 8, bu işlemleri gerçekleştiren kodu göstermektedir. [1] Tauber D. A., What is J2ME, www. onjava.com/pub/a/onjava/2001/03/08/j2me. html, 2001. [2] J2ME: Step by step, www.digilife. be/quickreferences/pt/j2me%20step%20 by%20step.pdf. [3] Giguere E., Java 2 Micro Edition: Professional Developer s Guide, John Wiley&Sons, 2000. [4] Knudsen J., Wireless Java:Developing with Java 2, Micro Edition, Apress, 2001. [5] Goyal V., J2ME Tutorial, Part 1: Creating MIDlets, http://today.java.net/ pub/a/ today/ 2005/02/09 /j2me1.html, 2005. Şekil 8. Dikdörtgenler prizması oluşturup ekleyen kod 565 [6] Day B., Codecamp: Developing Wireless Applications using MIDP 2.0, WMA and MMA, developers.sun.com/ events/ techdays/ presentations/seattle/ odecampwirelessapplicationsusingmidp20. pdf, 2004.

CLDC Konfigürasyonuna Sahip Mobil Cihazlarda 3B Grafiklerin Görselleştirilmesi Oğuz Dönmez, Aybars Uğur, Ata Önal [7] Höfele C., 3D Graphics for Java mobile devices, Part1: M3G s immediate mode, http://www-128.ibm.com/developerworks/ library/ wi-mobile1/index.html, 2005. [8] Hasselgren J., M3G-Overview, www. cs.lth.se/eda075/lectures/l3.pdf, 2006. [9] Mobile 3D Graphics API - Wikipedia, the free encyclopedia, http://en.wikipedia.org/ wiki/jsr_184, Wikipedia. [10] Mahmoud Q. H., Getting Started With the Mobile 3D Graphics API for J2ME, http:// developers.sun.com/techtopics/mobility/apis/ articles/ 3dgraphics/, 2004. 566