T1 672010180 Full text

(1)

Aplikasi Tur Virtual Kampus UKSW Menggunakan

PanoramaGL Pada Platfrom Android

Artikel Ilmiah

Peneliti:

Nico Koibur (672010180) Yos Richard Beeh, S.T., M.Cs. Alz Danny Wowor, S.Si., M.Cs.

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Salatiga

2016


(2)

Aplikasi Tur Virtual Kampus UKSW Menggunakan

PanoramaGL Pada Platfrom Android

Artikel Ilmiah

Diajukan kepada

Fakultas Teknologi Informasi

untuk memperoleh Gelar Sarjana Komputer

Peneliti :

Nico Koibur (672010180) Yos Richard Beeh, S.T., M.Cs. Alz Danny Wowor, S.Si., M.Cs.

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Salatiga

2016


(3)

(4)

(5)

(6)

(7)

1 1. Pendahuluan

Setiap tahun ajaran baru UKSW (Universitas Kristen Satya Wacana) melakukan kegiatan promosi ke tiap-tiap daerah untuk mendapatkan calon peserta didik baru. Dalam melakukan promosi, tim promosi UKSW membawa brosur guna memberikan informasi mengenai UKSW berupa daftar program studi dan fasilitas berupa bangunan. Dalam penyampaian informasi tersebut media yang digunakan masih terbatas dalam bentuk brosur dan video yang menampilkan daftar fasilitas. Mulai tahun 2016 pada bulan agustus, FTI (Fakultas Teknologi Informasi) UKSW menempati gedung baru yang berlokasi diBlotongan. Gedung FTI yang baru mempunyai fasilitas yang baru dan lebih baik, dari fasilitas sebelumnya. Dengan hadirnya gedung baru dan memiliki fasilitas yang lebih baik akan menarik minta calon peserta didik baru, namun dengan adanya gedung FTI yang baru tidak semua calon peserta didik baru mengetahui informasi tersebut, agar penyampaian informasi lebih interaktif dan menarik.

Pada penelitian ini dibuat sebuah media penyampaian informasi berupa aplikasi Tur Virtual yang dapat memberikan simulasi dari suatu lokasi. Pada pembuatan aplikasi Tur Virtual digunakan PanoramaGL GLES 1.1. PanoramaGL adalah sebuah Library Open Source untuk Android, berfungsi membuat virtual tours dengan spherical panorama view. Lokasi ditampilkan yaitu lokasi kampus Blotongan dan lokasi kampus Diponegoro.

2. Tinjauan Pustaka

Penelitian pertama yang berjudul Aplikasi Tur Virtual Taman Sari 3 Dimensi Menggunakan Unity. Pada penelitian tersebut membahas mengenai Pembuatan Aplikasi Tur Virtual untuk memperkenalkan Objek Wisata Taman Sari Yogyakarta sebagai sarana pendidikan mengenai sejarah peninggalan indonesia, karena banyak orang masih enggan untuk mengunjungi dan mendapatkan pengetahuan dari taman sari tersebut karena menganggap kurang menarik untuk ditujukan sebagai tujuan wisata. Pada proses pembuatan aplikasi Tur Virtual Taman Sari dibuat beberapa model objek diantaranya Lokasi Parkiran, Tower dan Masjid dll, yang terdapat pada Taman Sari menggunakan Aplikasi Desain Grafis 3D Studio Max yang biasa disebut 3Ds MAX, kemudian menggunakan Aplikasi Adobe Photoshop CS untuk mengedit, membuat gambar serta memodifikasi teksture yang dipakai di Objek 3Ds Max dan Unity, sedangkan model objek 3D yang ditampilkan menggunakan game engine Unity3D yang terintegrasi dalam bahasa pemrograman C#.Net [1].

Pada penelitian diatas aplikasi yang dibuat ditujukan pada platfrom aplikasi desktop, namun jika dilihat trend teknologi pada saat ini ialah trend teknologi smartphone dan bahkan sudah menjadi gaya hidup anak-anak yang lahir pada abad 21 yaitu generasi platinum, yang paling banyak digunakan karena mudah dibawah kemana saja, bisa digunakan sebagai sarana komunikasi, mencari informasi, media hiburan dan penunjuk arah. Maka pada penelitian ini dibuat suatu aplikasi Tur Virtual pada android dengan memanfaatkan Library PanoramaGL guna membantu tim promosi FTI UKSW dalam melakukan kegiatan promosi.


(8)

Virtual Tour merupakan sebuah simulasi dari sebuah lokasi yang terdiri dari rentetan gambar. Rentetan gambar tersebut akan digabungkan (stitch) untuk menghasilkan foto panorama 360 derajat. Virtual tour sendiri biasanya digunakan

untuk memberi pengalaman ‘pernah berada’ di suatu tempat hanya dengan

melihat layar monitor. Penyajian virtual tour dapat dilakukan dengan cara memanfaatkan gambar ataupun video, selain itu dapat menggunakan model 3 dimensi. Untuk penyajian dengan menggunakan gambar dapat digunakan foto panorama. Jenis foto panorama juga mempengaruhi hasil virtual tour yang dihasilkan. Untuk panorama jenis cylindrical, bagian vertikalnya hanya dapat menangkap tidak lebih dari 180o sedangkan jenis spherical, memungkinkan untuk melihat ke atas dan ke bawah. Menurut Highton, Virtual Reality Photography merupakan suatu kreasi visual yang interaktif, terutama dalam bentuk panorama dan objek video. Panorama merupakan gambar yang menampilkan sudut pandang yang luas. Virtual Reality Photograhy pada dasarnya memberikan pandangan seakan user berada didalam gambar atau lokasi yang diabadikan oleh fotografer. Gambar yang dihasilkan dapat diberikan efek menggunakan komputer, hasil akhirnya dapat disebut dengan VR Panorama[2].

Android adalah salah satu sistem operasi perangkat cerdas (smartphone) yang merupakan versi modifikasi dari kernel Linux yang dikembangkan oleh Google[3]. Android saat ini telah digunakan pada ratusan juta perangkat mobile di lebih dari 190 negara di seluruh dunia. Di negara Indonesia pengguna perangkat mobile phone diperkirakan mencapai 180 Juta orang. Dari jumlah pengguna tersebut pengguna smartphone dengan sistem operasi android mencapai 60.71% dari jumlah yang ada [4].

PanoramaGL adalah sebuah Library Open Source pada Android, berfungsi untuk membuat virtual tours dengan spherical panoramic view. Dibuat oleh Javier

Baez, seorang programmer berkebangsaan Ekuador. Javier Baez

mempublikasikan karyanya secara open source dengan lisensi Apache Software License, Version 2.0 ("Apache 2.0"). PanoramaGL memerlukan input berupa foto-foto panorama. Inputan gambar yang dapat diolah oleh PanoramaGL dapat berupa : pertama, 6 buah foto berbentuk persegi, yaitu foto tampak atas-bawah, depan-belakang, dan samping kiri-kanan; kedua, satu buah foto spherical panorama dengan aspek rasio 2:1 (panjang sama dengan 2 kali lebar) dengan batas ukuran dimensi mencapai 2048x1024. Foto-foto ini dapat dibuat dengan menggunakan perangkat lunak khusus pencitraan panorama, seperti Hugin atau Microsoft ICE. PanoramaGL memungkinkan pengguna dapat melihat secara bebas sebesar 360 derajat secara vertikal maupun horizontal (shperical). Selain itu, pengguna bisa berpindah atau melakukan transisi dari satu foto panoramik ke foto panoramik lainnya menggunakan fitur “hotspot”. Sebuah “hotspot”, biasanya berupa gambar tanda panah, dapat diletakkan pada satu lokasi di sebuah foto panoramik. PanoramaGL juga mendukung pemrosesan objek panorama melalui sebuah objek bertipe JSON(JavaScript Object Notation) yang didefinisikan pada Properti atau atribut dari file yang akan diproses. PanoramaGL memuat data tempat-tempat panoramik menggunakan protokol JSON. Sebuah “lokasi” pada PanoramaGL dapat dideskripsikan oleh sebuah data JSON. Hal-hal yang tercantum didalamnya adalah: tipe panoramik (cubic/spherical/cylindrical), nama


(9)

3

file image panoramik, posisi awal sudut pandang, posisi awal sudut kamera beserta semua hotspot-hotspot yang terletak didalamnya.

3. Metode Penelitian

Metode penelitian merupakan penguraian secara rinci tentang metode yang digunakan pada proses penelitian [5]. Penelitian dilakukan dengan tahapan-tahapan berikut, yaitu : 1) Identifikasi dan Perumusan Masalah, 2) Pengumpulan data dan Penelusuran Pustaka, 3) Perancangan dan Implementasi Sistem, 4) Pengujian, 5) Penyimpulan Hasil. Penjelasan tentang langkah-langkah penelitian dijelaskan sebagai berikut : 1) Pada tahap Identifikasi dan perumusan masalah, dilakukan pengamatan (observasi) terhadap beberapa hasil survei atau penelitian-penelitian mengenai Aplikasi Tur Virtual, kemudian mengidentifikasi masalah pada objek yang diteliti. 2) Pada tahap Pengumpulan data dan Penelusuran Pustaka, dikumpulkan informasi tentang apa saja yang diperlukan untuk merancang sistem berdasarkan permasalahan yang ada, yang dilakukan dengan cara wawancara dan studi pustaka. 3) Pada tahap perancangan dan implementasi sistem, pada tahap ini dilakukan perancangan sistem dengan memodelkan sistem yang dirancang untuk penyelesaian masalah berdasarkan model prototype. 4) Pada tahap pengujian dilakukan uji coba sistem. Uji coba sistem dilakukan setelah tahap perancangan dan implementasi selesai dilakukan. Pengujian sistem dilakukan dengan melakukan black box testing untuk memastikan bahwa seluruh fungsi Aplikasi dapat berjalan dengan baik kemudian dilanjutkan dengan pengujian Snowball. Tahap terakhir adalah penulisan laporan yaitu untuk membuat dokumentasi tentang penelitian yang sudah dilakukan.

Perancangan sistem menggunakan pendekatan prototype melewati tiga proses, yaitu pengumpulan kebutuhan, perancangan, dan evaluasi prototype. Gambar 1, menunjukan proses-proses perancangan sistem. Tahap awal dari model ini adalah pengumpulan kebutuhan yang dilakukan dengan berinteraksi dengan pengguna sistem untuk menentukan tujuan umum dan gambaran bagian-bagian yang akan dibutuhkan untuk perancangan. Perancangan dilakukan dengan cepat dan mewakili semua aspek sistem yang diketahui dan rancangan ini menjadi dasar pembuatan prototype. Evaluasi prototype merupakan tahap pengujian aplikasi yang telah selesai dibuat. Pengujian ini berfungsi untuk memperjelas kebutuhan prototype sistem yang dirancang. Perulangan ketiga proses ini terus berlangsung hingga semua kebutuhan rancangan prototype sistem terpenuhi.


(10)

Pada tahap pertama, dibuat perancangan terhadap aplikasi yang akan dibuat. Pada tahap ini prototype aplikasi yang dirancang hanya terdiri satu aplikasi tunggal. Aplikasi yang digunakan oleh user yaitu aplikasi yang dapat berjalan pada perangkat android. Pada tahap pertama, dibuat terlebih dahulu perancangan antarmuka pengguna sebagai komunikasi antar user dan aplikasi. Setelah antarmuka pengguna dibuat, kemudian dilakukan pengambilan gambar panoramik dari tiap-tiap objek yang akan ditampilkan pada aplikasi Tur Virtual. Pengambilan gambar tiap objek menggunakan aplikasi Google Street View yang terdapat pada perangkat iPhone.

Pada tahap kedua, dilakukan perubahan ukuran dimensi dari tiap objek yang telah diambil, perubahan ukuran dimensi gambar yang dilakukan ialah dengan mengkompresi gambar dari ukuran 8074x4352 ke ukuran dimensi 2048x1024. Setelah ukuran dimensi gambar dari tiap objek dirubah ke ukuran dimensi 2048x1024, kemudian gambar diletakkan pada folder raw yaitu folder yang membuat gambar tiap objek yang akan ditampilkan pada project aplikasi android. Kemudian dilakukan implementasi fungsi dari PanoramaGL, setelah fungsi PanoramaGL diimplementasi, setelah itu dilakukan proses debug aplikasi, setelah dilakukan proses debug didapati bahwa aplikasi berjalan baik pada seluruh fitur namun ukuran file keluaran berekstensi apk mencapai 70MB.

Pada tahap ketiga prototype, dilakukan penurunan ukuran dimensi gambar dari 2048x1024 ke ukuran dimensi 1024x1024 dan melakukan optimasi coding guna menurunkan hasil keluaran berupa file .apk karena file instalasi atau file apk keluaran dengan ukuran 64MB sangatlah besar untuk aplikasi yang akan dipasang perangkat android, setelah dilakukan pengujian setelah dilakukan perubahan dimensi gambar dari 2048x1024 ke ukuran 1024x1024 didapati ukuran file keluaran berkurang menjadi 40MB.

Desain perancangan sistem pada penelitian ini, menggunakan UML (Unified Modeling Language). Pada penelitian ini pemodelan sistem didesain dalam dua diagram yaitu : Use Case Diagram dan Activity Diagram. Gambar 2, menunjukan Use case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah sistem, yang menjelaskan keseluruhan kerja sistem secara garis besar dengan merepresentasikan interaksi antara aktor dengan sistem yang dibuat, serta memberikan gambaran fungsi-fungsi yang diberikan sistem kepada pengguna.


(11)

5

Gambar 2, menjelaskan aktor pengguna dapat melakukan fungsi memilih daftar lokasi dan peta, melihat peta dan melihat lokasi dalam tampilan PanoramaView. Activity diagram Aplikasi Tur Virtual dimulai dari pengguna menjalankan aplikasi tur virtual kemudian memilih daftar menu lokasi atau peta, atau memilih keluar dari aplikasi, jika pengguna memilih menu lokasi maka aplikasi akan menampilkan gambar dalam mode panorama view berdasarkan lokasi yang dipilih, jika pengguna memilih peta maka aplikasi akan menampilkan tampilan peta daftar titik lokasi kampus, kemudian ketika pengguna memilih salah satu lokasi kampus maka aplikasi akan menampilkan gambar dalam mode panorama view berdasarkan lokasi yang dipilih, setelah melihat gambar dalam mode panorama view pengguna kembali pada menu utama dan memilih lagi lokasi atau peta, atau memilih keluar dari dari apliaksi. Activity Diagram saat pengguna menggunakan aplikasi Tur Virtual ditunjukan pada Gambar 3.

Gambar 3, Activity Diagram Aplikasi Tur Virtual.

Class Diagram merupakan diagram yang digunakan untuk menampilkan beberapa kelas yang ada dalam sistem/perangkat lunak yang sedang dikembangkan. Class diagram memberikan gambaran mengenai sistem dan relasi yang ada didalamnya.


(12)

MainActivity -gridView gridAdapter : GridView : GridViewAdapter + onItemClick () : void MapLocationActivity -supportMapFragment googleMaps locationManager dbSQLite mapArray latLngPoints : SupportMapFragment : GoogleMap : LocationManager : DatabaseSQLite : ArrayList<LocationPoint> : ArrayList<LatLng> + + + + + onBackPressed () onMyLocationButtonClick () addMultipleMarkers () onLocationChanged () onMarkerClick () : void : boolean : void : void : boolean PanoramaViewBlotongan -plManager plFrontHotspot plBackHotspot plSphericalPanorama PLView : PLManager : PLHotspot : PLHotspot : PanoramaView : PLView + + + onBackPressed () setImage () onTouchEvent () : void : void : boolean PanoramaViewDiponegoro -plManager plFrontHotspot plBackHotspot plSphericalPanorama PLView : PLManager : PLHotspot : PLHotspot : PanoramaView : PLView + + + onBackPressed () setImage () onTouchEvent () : void : void : boolean PLView -mPanorama mRenderer mCurrentTransition : PLIPanorama : PLIRenderer : PLITransition + + + setResetEnable () reset () startTransition () : void : boolean : boolean PanoramaView + + setImage () addHotspot () : void : boolean PLManager -mPanorama mRenderer mCurrentTransition : PLIPanorama : PLIRenderer : PLITransition + onTouchEvent () : boolean

Gambar 4, Class Diagram Aplikasi Tur Virtual.

Gambar 4 menjelaskan Class Diagram yang terdapat pada rancangan aplikasi Tur Virtual Kampus UKSW. Terdapat relasi yang terjadi antara kelas

MainActivity terhadap kelas PanoramaViewDiponegoro,

PanoramaViewBlotongan, MapLocationActivity. Kelas MapLocationActivity

mempunyai keterhubungan dengan PanoramaViewBlotongan dan

PanoramaViewDiponegoro, dimana ketika pengguna aplikasi mengakses MapLocationActivity dapat memilih lokasi kampus Blotongan atau kampus Diponegoro, yang mana akan mengeksekusi kelas PanoramaViewDiponegoro atau kelas PanoramaViewBlotongan. Pada kelas PanoramaViewDiponegoro dan

kelas PanoramaViewBlotongan mempunyai hubungan terhadap kelas

PanoramaView, PLView dan PLManager. Kelas PLView menampilkan objek

panorama yang telah dibungkus menggunakan kelas PanoramaView.

PanoramaView ialah kelas yang diturunkan dari kelas PLQuadricPanoramaBase, penurunan kelas PanoramaView dimaksudkan untuk mengatasi kekurangan pada kelas PLSphericalView yang juga berfungsi membungkus objek panorama namun terkadang terjadi kesalahan memuat gambar yang mengakibatkan jalan aplikasi menjadi terhambat. Pada kelas PanoramaView dilakukan rekayasa dengan menambahkan Exception Handling atau penanganan kesalahan terhadap kode sumber yang dapat menyebabkan program terhenti atau tidak dapat berjalan


(13)

7

secara normal, kemudian PLManager digunakan untuk mengontrol objek panorama yang ditampilkan.

4. Hasil dan Pembahasan

Hasil dan pembahasan merupakan bagian yang menampilkan implementasi, pengujian, dan hasil analisis beserta pembahasan masing-masing bagian. Hasil pembuatan aplikasi Tur Virtual dapat dijelaskan sebagai berikut.

Pada Aplikasi Tur Virtual, gambar yang ditampilkan ialah gambar dengan mode panorama yang digunakan sebagai objek yang ditampilkan pada aplikasi Tur Virtual. Pengambilan gambar panorama menggunakan aplikasi Google Street View menggunakan smartphone iOS. Berikut gambar 5, yang memperlihatkan tampilan awal panorama gambar, sebelum ditampilkan dalam mode panorama menggunakan fitur PanoramaView pada PanoramaGL.

Gambar 5, Tampilan awalGambar lokasi Gambar 6, Tampilan Aplikasi Street View Pada proses pengambilan gambar menggunakan aplikasi Google Street View yang dapat membuat gambar Spherical dengan cara mengambil gambar berdasarkan titik-titik gambar yang telah ditentukan, kemudian menyatukannya menjadi suatu gambar panorama yang dapat digunakan untuk membuat aplikasi Tur Virtual. Gambar 6, memperlihatkan tampilan aplikasi street view ketika mengambil gambar berdasarkan titik-titik yang telah ditentukan.

Desain dari tampilan utama aplikasi Tur Virtual terdapat daftar yang berisi menu lokasi dan peta. Gambar 7, menunjukkan tampilan utama aplikasi Tur Virtual.


(14)

Gambar 7, Tampilan Utama Aplikasi Tur Virtual.

Halaman lokasi kampus Blotongan atau lokasi kampus Diponegoro dapat diakses dengan memilih menu lokasi Blotongan atau lokasi kampus Diponegoro, dan halaman Peta dapat diakses dengan memilih menu peta pada pilihan menu aplikasi.

Pada halaman peta menampilkan lokasi kampus Blotongan dan kampus Diponegoro dan lokasi pengguna aplikasi menggunakan google map. Lokasi kampus Blotongan dan kampus Diponegoro ditandai dengan ikon bangunan, sedangkan lokasi pengguna aplikasi ditampilkan dengan icon bawaan google map berbentuk balon merah. Halaman Peta dapat dilihat pada Gambar 8.


(15)

9

Kode Program 1, Perintah menampilkan icon kampus Blotongan dan Diponegoro pada peta.

1. latLngPoints.add(new LatLng(this.latitude, this.longitude));

2. for (LocationPoint mark : mapArray) {

3. addMultipleMarkers(mark.getLatitude(), mark.getLongitude(),

mark.getName(), mark.getDescription());

4. }

Kode program 1 menjelaskan tentang fungsi yang digunakan untuk menampilkan icon lokasi kampus dengan melakukan operasi perulangan yang mengambil tiap objek lokasi dari variabel mapArray dan mengirim parameter tersebut ke fungsi addMultipleMarkers yang berfungsi membuat icon lokasi dan menampilkannya pada peta. Selain kode program 1 yang menampilkan icon lokasi kampus pada peta google, terdapat kode program 2 yang digunakan untuk menampilkan tampilan panoramaView dari lokasi kampus yang dipilih ketika pengguna menekan salah satu icon dari lokasi kampus yang ditampilkan pada peta.

Kode Program 2, Perintah menampilkan icon kampus Blotongan dan Diponegoro pada Peta.

1. public boolean onMarkerClick(Marker marker) {

2. if (marker.getTitle().equals("Kampus III Blotongan")) {

3. Class classObject = PanoramaViewBlotongan.class;

4. Intent panoramaViewIntent = new Intent(this, classObject);

5. panoramaViewIntent.putExtra("param1", marker.getTitle());

6. panoramaViewIntent.putExtra("param2", "BackToMainMenu");

7. startActivity(panoramaViewIntent);

8. finish();

9. } else if (marker.getTitle().equals("Kampus Diponegoro")) {

10. Class classObject = PanoramaViewDiponegoro.class;

11. Intent panoramaViewIntent = new Intent(this, classObject);

12. panoramaViewIntent.putExtra("param1", marker.getTitle());

13. panoramaViewIntent.putExtra("param2", "BackToMainMenu");

14. startActivity(panoramaViewIntent);

15. finish();

16. }

17. return false;

18.}

Pada kode program 3 ditampilkan kode program class PanoramaView yang diturunkan dari kelas PLQuadricPanoramaBase dengan menambahkan try-catch pada fungsi setImage dan setTexture dalam mengatasi kesalahan memuat gambar yang ditampilkan.

Kode Program 3, Fungsi yang menampilkan foto panorama.

1. public class PanoramaView extends PLQuadricPanoramaBase {

2. public PanoramaView() {...}

3. protected void initializeValues() {... }

4. @Override

5. public void setImage(PLIImage image) {

6. try {

7. if (image != null)

8. this.setTexture(new PLTexture(image));

9. } catch (RuntimeException ex) {

10. ex.printStackTrace();

11. }

12. }

13. @Override


(16)

15. try {

16. this.setTexture(texture, 0);

17. } catch (RuntimeException ex) {

18. ex.printStackTrace();

19. }

20. }

21. protected void internalRender(GL10 gl, PLIRenderer renderer) {...}

22.}

Gambar 9, Tampilan Kampus Blotongan. Gambar 10, TampilanKampus Diponegoro. Pada Gambar 9, terlihat tampilan panoramaView dari lokasi bangunan kampus Blotongan, sedangkan Gambar 10 menunjukkan tampilan Kampus Diponegoro. Fungsi untuk menampilkan panoramaView lokasi dari bangunan kampus Blotongan.

Pada kode program 4, terdapat kode program yang menampilkan fungsi

setImage yang mengatur gambar panorama yang ditampilkan pada

PanoramaView. Pada kode program 4 terdapat variabel pano yang merupakan objek dari kelas PanoramaView yang digunakan untuk menampilkan gambar dalam mode panorama, sedangkan PLFrontHotspot dan PLBackHotspot adalah objek dari kelas PLHotspot yang digunakan untuk menampilkan icon hotspot pada tampilan gambar Panorama yang ditampilkan dan digunakan sebagai navigasi ke gambar berikutnya dan sebelumnya. PLBackHostpot berfungsi menampilkan gambar panorama pada urutan sebelumnya, sedangkan PLFrontHotstpot berfungsi menampilkan gambar panorama pada urutan berikutnya. Kode program 4 dapat dilihat pada tampilan kode program dibawah ini.


(17)

11

Kode Program 4, Fungsi yang menampilkan foto panorama.

1. private void setImage(PLIView pView, int idx) {

2. if (idx == 0) {

3. Toast.makeText(this,"Mengulang dari titik awal",Toast.LENGTH_SHORT).show();

4. }

5. PanoramaView pano = new PanoramaView();

6. pano.getCamera().lookAt(0.0f, idsImageGedungFTI[idx].getCameraAngle());

7. txtViewWayPoint.setText(param1+", "+idsImageGedungFTI[idx].getName());

8. pano.setImage(new PLImage(PLUtils.getBitmap(this,

9. idsImageGedungFTI[idx].getDrawableId()), false));

10.plFrontHotspot = new PLHotspot(1, new PLImage(PLUtils.getBitmap(this,

11. R.raw.ic_hotspot_front), false),

12. idsImageGedungFTI[idx].getAtvFrontHotspot(),

13. idsImageGedungFTI[idx].getAthFrontHotspot(),

14. idsImageGedungFTI[idx].getWidthFrontHotspot(),

idsImageGedungFTI[idx].getHeightFrontHotspot());

15.plBackHotspot = new PLHotspot(2, new PLImage(PLUtils.getBitmap(this,

16. R.raw.ic_hotspot_front), false),

idsImageGedungFTI[imgIdx].getAtvBackHotspot(), idsImageGedungFTI[imgIdx].getAthBackHotspot(), idsImageGedungFTI[imgIdx].getWidthBackHotspot(), idsImageGedungFTI[imgIdx].getHeightBackHotspot()); 17. pano.addHotspot(plFrontHotspot); 18. pano.addHotspot(plBackHotspot); 19. pView.setResetEnabled(true); 20. pView.reset();

21. pView.startTransition(new PLTransitionBlend(2.0f, 1.0f), pano);

22.}

Setelah proses implementasi selesai dilakukan, untuk mengetahui apakah sistem sudah berjalan dengan baik atau belum maka dilakukan pengujian terhadap sistem yang telah dibuat. Metode yang digunakan untuk pengujian sistem menggunakan metode Black Box Testing. Black Box Testing adalah sebuah metode pengujian perangkat lunak yang menguji fungsionalitas sebuah aplikasi tanpa melihat alur eksekusi program, namun cukup memperhatikan apakah setiap fungsi menghasilkan output sesuai dengan yang diinginkan. Tabel 1 menunjukan hal-hal yang diuji dan hasil pengujian sistem.

Tabel 1, Hasil Pengujian Blackbox Testing prototipe sistem

No Fungsi Pengujian Hasil yang

diharapkan Hasil yang muncul Kesimpulan

01 Menampilkan

Daftar Lokasi dan Peta

Menjalankan Aplikasi dari awal

Aplikasi dapat menampilkan daftar Lokasi dan Peta

Daftar ditampilkan dengan item lokasi dan

peta Berhasil

02 Menampilkan

Lokasi Memilih lokasi yang igin ditampilkan Aplikasi dapat menampilkan gambar panorama dari lokasi yang dipilih Aplikasi dapat menampilkan gambar panorama dari titik awal

lokasi Berhasil

03 Menampilkan

Peta

Memilih menu peta pada daftar

Aplikasi dapat menampilkan

Apliaksi dapat


(18)

menu. peta yang berisi titik tiap lokasi kampus

dengan titip tiap lokasi ditandai dengan icon

Pengujian aplikasi dilakukan dengan metode Snowball. Snowball sampling adalah teknik pengambilan sampel sumber data, yang pada awalnya berjumlah sedikit, lama-lama menjadi besar. Hal tersebut dilakukan karena dari jumlah sumber data yang sedikit tersebut belum mampu memberikan data yang memuaskan, maka perlu mencari orang lain lagi yang dapat digunakan sebagai sumber data. Dengan demikian jumlah sumber data akan semakin besar, seperti bola salju yang menggelinding, lama-lama menjadi besar [7]. Setelah dilakukan pengambilan pendapat menggunakan Snowball Sampling diperoleh hasil sebagai berikut : Pada pengujian aplikasi dilakukan terhadap 3 aktor yang terdapat pada universitas yaitu mahasiswa, dosen dan staff pendidik. Pada pengujian yang dilakukan terhadap beberapa mahasiswa menyatakan aplikasi Tur Virtual yang dibuat cukup bagus karena bermanfaat dalam menyampaikan informasi mengenai lokasi kampus, namun perlu beberapa perubahan pada efek transisi antara gambar dan perlu penambahan gambar lokasi, kemudian pengujian kedua yang dilakukan terhadap dosen menyatakan bahwa aplikasi Tur Virtual sudah baik namun perlu diberikan judul dari gambar suatu lokasi, sedangkan pengujian ketiga yang dilakukan terhadap staff pendidik menyatakan aplikasi yang dibuat sudah sangat baik dan bermanfaat untuk memperkenalkan lokasi-lokasi pada kampus UKSW, namun pada aplikasi Tur Virtual perlu dibuat panduan tambahan agar aplikasi yang digunakan lebih menarik dengan harapan kedepannya aplikasi Tur Virtual dapat digunakan tidak hanya bagi Tim Promosi UKSW namun calon mahasiswa maupun tamu undangan universitas yang mengujungi universitas dapat menggunakan aplikasi Tur Virtual untuk melihat lokasi kampus jika tamu undangan tidak memiliki cukup waktu melakukan Tur secara langsung pada lokasi-lokasi kampus, dapat menggunakan aplikasi Tur Virtual sehingga tamu memiliki gambaran lokasi-lokasi kampus yang ada pada UKSW.

5. Simpulan

Berdasarkan penelitian yang telah dilakukan, maka dapat ditarik beberapa kesimpulan sebagai berikut : Pembuatan aplikasi Tur Virtual Kampus menggunakan PanoramaGL pada android dapat dibuat menggunakan kelas PanoramaView untuk menampilkan gambar panorama yang direkayasa dengan menambahkan Error Handling dan hasil yang didapatkan ialah aplikasi dapat berjalan secara normal tanpa terhenti. Aplikasi Tur Virtual ini dapat membantu pengguna untuk memberikan pengalaman seperti berada pada lokasi kampus secara langsung. Aplikasi ini juga dapat digunakan sebagai media promosi UKSW. Saran untuk pengembang aplikasi ke depan ialah dalam pengambilan gambar dapat menggunakan kamera yang telah mendukung VR360 (Virtual Reality 360) atau dapat menggunakan 6 kamera yang dikombinasikan didalam satu Kit, kemudian gambar yang didapatkan digabung menjadi suatu gambar spherical menggunakan aplikasi yang dapat melakukan pengabungan gambar.


(19)

13

Sehingga didapatkan gambar dengan kualitas yang jauh lebih baik, dan perlu penambahan jumlah gambar lokasi agar informasi yang diberikan lebih detail. 6. Daftar Pustaka

[1] Shohifah, Eni, 2013, Aplikasi Tur Virtual Taman Sari 3 Dimensi Menggunakan Unity, Yogyakarta : Universitas Islam Indonesia.

[2] Highton. Scott. 2010. Paper of Virtual Reality Photography - Creating Panoramic and Object Images. China: Library of Congress.

[3] Bellosa, Frank & Miller, 2010 Analysis of the Android Architecture, Karlsruhe:Karlsruhe Institute of Technology.

[4] Statista, 2015, Market share held by mobile operating systems in Indonesia

from January 2012 to July 2015,

http://www.statista.com/statistics/262205/market-share-held-by-mobile-operating-systems-in-indonesia/, Diakses pada tanggal 9 Agustus 2016.

[5] Pressman, Roger S. 2001. Software Engineering : A Practitioner’s Approach,

5th. New York: McGrawHill.

[6] Hasibuan, Zainal A. 2007. Metodologi Penelitian Pada Bidang Ilmu Komputer dan Teknologi Informasi : Konsep, Teknik, dan Aplikasi. Jakarta : Ilmu Komputer Universitas Indonesia.


(1)

Gambar 7, Tampilan Utama Aplikasi Tur Virtual.

Halaman lokasi kampus Blotongan atau lokasi kampus Diponegoro dapat diakses dengan memilih menu lokasi Blotongan atau lokasi kampus Diponegoro, dan halaman Peta dapat diakses dengan memilih menu peta pada pilihan menu aplikasi.

Pada halaman peta menampilkan lokasi kampus Blotongan dan kampus Diponegoro dan lokasi pengguna aplikasi menggunakan google map. Lokasi kampus Blotongan dan kampus Diponegoro ditandai dengan ikon bangunan, sedangkan lokasi pengguna aplikasi ditampilkan dengan icon bawaan google map berbentuk balon merah. Halaman Peta dapat dilihat pada Gambar 8.


(2)

Kode Program 1, Perintah menampilkan icon kampus Blotongan dan Diponegoro pada peta. 1. latLngPoints.add(new LatLng(this.latitude, this.longitude));

2. for (LocationPoint mark : mapArray) {

3. addMultipleMarkers(mark.getLatitude(), mark.getLongitude(), mark.getName(), mark.getDescription());

4. }

Kode program 1 menjelaskan tentang fungsi yang digunakan untuk menampilkan icon lokasi kampus dengan melakukan operasi perulangan yang mengambil tiap objek lokasi dari variabel mapArray dan mengirim parameter tersebut ke fungsi addMultipleMarkers yang berfungsi membuat icon lokasi dan menampilkannya pada peta. Selain kode program 1 yang menampilkan icon lokasi kampus pada peta google, terdapat kode program 2 yang digunakan untuk menampilkan tampilan panoramaView dari lokasi kampus yang dipilih ketika pengguna menekan salah satu icon dari lokasi kampus yang ditampilkan pada peta.

Kode Program 2, Perintah menampilkan icon kampus Blotongan dan Diponegoro pada Peta. 1. public boolean onMarkerClick(Marker marker) {

2. if (marker.getTitle().equals("Kampus III Blotongan")) { 3. Class classObject = PanoramaViewBlotongan.class;

4. Intent panoramaViewIntent = new Intent(this, classObject); 5. panoramaViewIntent.putExtra("param1", marker.getTitle()); 6. panoramaViewIntent.putExtra("param2", "BackToMainMenu");

7. startActivity(panoramaViewIntent);

8. finish();

9. } else if (marker.getTitle().equals("Kampus Diponegoro")) { 10. Class classObject = PanoramaViewDiponegoro.class;

11. Intent panoramaViewIntent = new Intent(this, classObject); 12. panoramaViewIntent.putExtra("param1", marker.getTitle()); 13. panoramaViewIntent.putExtra("param2", "BackToMainMenu");

14. startActivity(panoramaViewIntent);

15. finish();

16. }

17. return false;

18.}

Pada kode program 3 ditampilkan kode program class PanoramaView yang diturunkan dari kelas PLQuadricPanoramaBase dengan menambahkan try-catch pada fungsi setImage dan setTexture dalam mengatasi kesalahan memuat gambar yang ditampilkan.

Kode Program 3, Fungsi yang menampilkan foto panorama.

1. public class PanoramaView extends PLQuadricPanoramaBase { 2. public PanoramaView() {...}

3. protected void initializeValues() {... }

4. @Override

5. public void setImage(PLIImage image) {

6. try {

7. if (image != null)

8. this.setTexture(new PLTexture(image));

9. } catch (RuntimeException ex) {

10. ex.printStackTrace();

11. }

12. }


(3)

15. try {

16. this.setTexture(texture, 0);

17. } catch (RuntimeException ex) {

18. ex.printStackTrace();

19. }

20. }

21. protected void internalRender(GL10 gl, PLIRenderer renderer) {...}

22.}

Gambar 9, Tampilan Kampus Blotongan. Gambar 10, Tampilan Kampus Diponegoro. Pada Gambar 9, terlihat tampilan panoramaView dari lokasi bangunan kampus Blotongan, sedangkan Gambar 10 menunjukkan tampilan Kampus Diponegoro. Fungsi untuk menampilkan panoramaView lokasi dari bangunan kampus Blotongan.

Pada kode program 4, terdapat kode program yang menampilkan fungsi

setImage yang mengatur gambar panorama yang ditampilkan pada

PanoramaView. Pada kode program 4 terdapat variabel pano yang merupakan objek dari kelas PanoramaView yang digunakan untuk menampilkan gambar dalam mode panorama, sedangkan PLFrontHotspot dan PLBackHotspot adalah objek dari kelas PLHotspot yang digunakan untuk menampilkan icon hotspot pada tampilan gambar Panorama yang ditampilkan dan digunakan sebagai navigasi ke gambar berikutnya dan sebelumnya. PLBackHostpot berfungsi menampilkan gambar panorama pada urutan sebelumnya, sedangkan PLFrontHotstpot berfungsi menampilkan gambar panorama pada urutan berikutnya. Kode program 4 dapat dilihat pada tampilan kode program dibawah ini.


(4)

Kode Program 4, Fungsi yang menampilkan foto panorama. 1. private void setImage(PLIView pView, int idx) { 2. if (idx == 0) {

3. Toast.makeText(this,"Mengulang dari titik awal",Toast.LENGTH_SHORT).show(); 4. }

5. PanoramaView pano = new PanoramaView();

6. pano.getCamera().lookAt(0.0f, idsImageGedungFTI[idx].getCameraAngle()); 7. txtViewWayPoint.setText(param1+", "+idsImageGedungFTI[idx].getName()); 8. pano.setImage(new PLImage(PLUtils.getBitmap(this,

9. idsImageGedungFTI[idx].getDrawableId()), false));

10.plFrontHotspot = new PLHotspot(1, new PLImage(PLUtils.getBitmap(this,

11. R.raw.ic_hotspot_front), false),

12. idsImageGedungFTI[idx].getAtvFrontHotspot(),

13. idsImageGedungFTI[idx].getAthFrontHotspot(),

14. idsImageGedungFTI[idx].getWidthFrontHotspot(),

idsImageGedungFTI[idx].getHeightFrontHotspot());

15.plBackHotspot = new PLHotspot(2, new PLImage(PLUtils.getBitmap(this,

16. R.raw.ic_hotspot_front), false),

idsImageGedungFTI[imgIdx].getAtvBackHotspot(), idsImageGedungFTI[imgIdx].getAthBackHotspot(), idsImageGedungFTI[imgIdx].getWidthBackHotspot(), idsImageGedungFTI[imgIdx].getHeightBackHotspot()); 17. pano.addHotspot(plFrontHotspot); 18. pano.addHotspot(plBackHotspot); 19. pView.setResetEnabled(true); 20. pView.reset();

21. pView.startTransition(new PLTransitionBlend(2.0f, 1.0f), pano); 22.}

Setelah proses implementasi selesai dilakukan, untuk mengetahui apakah sistem sudah berjalan dengan baik atau belum maka dilakukan pengujian terhadap sistem yang telah dibuat. Metode yang digunakan untuk pengujian sistem menggunakan metode Black Box Testing. Black Box Testing adalah sebuah metode pengujian perangkat lunak yang menguji fungsionalitas sebuah aplikasi tanpa melihat alur eksekusi program, namun cukup memperhatikan apakah setiap fungsi menghasilkan output sesuai dengan yang diinginkan. Tabel 1 menunjukan hal-hal yang diuji dan hasil pengujian sistem.

Tabel 1, Hasil Pengujian Blackbox Testing prototipe sistem

No Fungsi Pengujian Hasil yang

diharapkan Hasil yang muncul Kesimpulan

01 Menampilkan Daftar Lokasi dan Peta

Menjalankan Aplikasi dari awal

Aplikasi dapat menampilkan daftar Lokasi dan Peta

Daftar ditampilkan dengan item lokasi dan

peta Berhasil

02 Menampilkan Lokasi Memilih lokasi yang igin ditampilkan Aplikasi dapat menampilkan gambar panorama dari lokasi yang dipilih Aplikasi dapat menampilkan gambar panorama dari titik awal

lokasi Berhasil

03 Menampilkan Peta

Memilih menu peta pada daftar

Aplikasi dapat menampilkan

Apliaksi dapat


(5)

menu. peta yang berisi titik tiap lokasi kampus

dengan titip tiap lokasi ditandai dengan icon

Pengujian aplikasi dilakukan dengan metode Snowball. Snowball sampling adalah teknik pengambilan sampel sumber data, yang pada awalnya berjumlah sedikit, lama-lama menjadi besar. Hal tersebut dilakukan karena dari jumlah sumber data yang sedikit tersebut belum mampu memberikan data yang memuaskan, maka perlu mencari orang lain lagi yang dapat digunakan sebagai sumber data. Dengan demikian jumlah sumber data akan semakin besar, seperti bola salju yang menggelinding, lama-lama menjadi besar [7]. Setelah dilakukan pengambilan pendapat menggunakan Snowball Sampling diperoleh hasil sebagai berikut : Pada pengujian aplikasi dilakukan terhadap 3 aktor yang terdapat pada universitas yaitu mahasiswa, dosen dan staff pendidik. Pada pengujian yang dilakukan terhadap beberapa mahasiswa menyatakan aplikasi Tur Virtual yang dibuat cukup bagus karena bermanfaat dalam menyampaikan informasi mengenai lokasi kampus, namun perlu beberapa perubahan pada efek transisi antara gambar dan perlu penambahan gambar lokasi, kemudian pengujian kedua yang dilakukan terhadap dosen menyatakan bahwa aplikasi Tur Virtual sudah baik namun perlu diberikan judul dari gambar suatu lokasi, sedangkan pengujian ketiga yang dilakukan terhadap staff pendidik menyatakan aplikasi yang dibuat sudah sangat baik dan bermanfaat untuk memperkenalkan lokasi-lokasi pada kampus UKSW, namun pada aplikasi Tur Virtual perlu dibuat panduan tambahan agar aplikasi yang digunakan lebih menarik dengan harapan kedepannya aplikasi Tur Virtual dapat digunakan tidak hanya bagi Tim Promosi UKSW namun calon mahasiswa maupun tamu undangan universitas yang mengujungi universitas dapat menggunakan aplikasi Tur Virtual untuk melihat lokasi kampus jika tamu undangan tidak memiliki cukup waktu melakukan Tur secara langsung pada lokasi-lokasi kampus, dapat menggunakan aplikasi Tur Virtual sehingga tamu memiliki gambaran lokasi-lokasi kampus yang ada pada UKSW.

5. Simpulan

Berdasarkan penelitian yang telah dilakukan, maka dapat ditarik beberapa kesimpulan sebagai berikut : Pembuatan aplikasi Tur Virtual Kampus menggunakan PanoramaGL pada android dapat dibuat menggunakan kelas PanoramaView untuk menampilkan gambar panorama yang direkayasa dengan menambahkan Error Handling dan hasil yang didapatkan ialah aplikasi dapat berjalan secara normal tanpa terhenti. Aplikasi Tur Virtual ini dapat membantu pengguna untuk memberikan pengalaman seperti berada pada lokasi kampus secara langsung. Aplikasi ini juga dapat digunakan sebagai media promosi UKSW. Saran untuk pengembang aplikasi ke depan ialah dalam pengambilan gambar dapat menggunakan kamera yang telah mendukung VR360 (Virtual Reality 360) atau dapat menggunakan 6 kamera yang dikombinasikan didalam satu Kit, kemudian gambar yang didapatkan digabung menjadi suatu gambar spherical menggunakan aplikasi yang dapat melakukan pengabungan gambar.


(6)

Sehingga didapatkan gambar dengan kualitas yang jauh lebih baik, dan perlu penambahan jumlah gambar lokasi agar informasi yang diberikan lebih detail.

6. Daftar Pustaka

[1] Shohifah, Eni, 2013, Aplikasi Tur Virtual Taman Sari 3 Dimensi Menggunakan Unity, Yogyakarta : Universitas Islam Indonesia.

[2] Highton. Scott. 2010. Paper of Virtual Reality Photography - Creating Panoramic and Object Images. China: Library of Congress.

[3] Bellosa, Frank & Miller, 2010 Analysis of the Android Architecture, Karlsruhe:Karlsruhe Institute of Technology.

[4] Statista, 2015, Market share held by mobile operating systems in Indonesia

from January 2012 to July 2015,

http://www.statista.com/statistics/262205/market-share-held-by-mobile-operating-systems-in-indonesia/, Diakses pada tanggal 9 Agustus 2016.

[5] Pressman, Roger S. 2001. Software Engineering : A Practitioner’s Approach,

5th. New York: McGrawHill.

[6] Hasibuan, Zainal A. 2007. Metodologi Penelitian Pada Bidang Ilmu Komputer dan Teknologi Informasi : Konsep, Teknik, dan Aplikasi. Jakarta : Ilmu Komputer Universitas Indonesia.