• Tidak ada hasil yang ditemukan

Implementasi Augmented Reality Pada Alat Musik Dairi Menggunakan Metode Markerless Berbasis Android

N/A
N/A
Protected

Academic year: 2017

Membagikan "Implementasi Augmented Reality Pada Alat Musik Dairi Menggunakan Metode Markerless Berbasis Android"

Copied!
6
0
0

Teks penuh

(1)

LISTING PROGRAM

Event_Script.cs

using UnityEngine;

using System.Collections;

public class Event_Script : MonoBehaviour {

public void aktifstart (string startaktif) { Application.LoadLevel (startaktif); }

public void aktifinfo (string infoaktif) { Application.LoadLevel (infoaktif); }

public void aktifprofile (string profileaktif) { Application.LoadLevel (profileaktif);

}

public void ExitApplication () { ExitApplication ();

}

public void aktifaugmented (string augmentedaktif) { Application.LoadLevel (augmentedaktif);

}

public void aktifview (string viewaktif) { Application.LoadLevel (viewaktif); }

public void aktifhome (string homeaktif) { Application.LoadLevel (homeaktif); }

public void aktifback (string backaktif) { Application.LoadLevel (backaktif); }

}

PinchZoom.cs

using UnityEngine;

using System.Collections;

public class PinchZoom : MonoBehaviour {

private float scale_factor= 0.07f;

private float MAXSCALE = 6.0f, MIN_SCALE = 0.6f; // zoom-in and zoom-out limits

private bool isMousePressed;

(2)

private Vector3 originalPos; private GameObject parentObject;

void Start () {

// Game Object will be created and make current object as its child (only because we can set virtual

anchor point of gameobject and can zoom in and zoom out from particular position)

parentObject = new GameObject("ParentObject"); parentObject.transform.parent =

transform.parent;

parentObject.transform.position = new

Vector3(transform.position.x*-1, transform.position.y*-1, transform.position.z);

transform.parent = parentObject.transform;

ScreenSize = Camera.main.ScreenToWorldPoint(new Vector2(Screen.width,Screen.height));

originalPos = transform.position; isMousePressed = false;

}

/*void Update () {

if(Input.GetMouseButtonDown(0)) isMousePressed = true;

else if(Input.GetMouseButtonUp(0)) isMousePressed = false;

// These lines of code will pan/drag the object around untill the edge of the image

if(isMousePressed && Input.touchCount==1 && Input.GetTouch(0).phase == TouchPhase.Moved &&

(parentObject.transform.localScale.x > MIN_SCALE || parentObject.transform.localScale.y > MIN_SCALE))

{

Touch touch = Input.GetTouch(0);

Vector3 diff = touch.deltaPosition*0.1f; Vector3 pos = transform.position + diff; if(pos.x > ScreenSize.x *

(parentObject.transform.localScale.x-1)) pos.x = ScreenSize.x * (parentObject.transform.localScale.x-1);

if(pos.x < ScreenSize.x * (parentObject.transform.localScale.x-1)*-1)

pos.x = ScreenSize.x * (parentObject.transform.localScale.x-1)*-1;

if(pos.y > ScreenSize.y * (parentObject.transform.localScale.y-1))

(3)

if(pos.y < ScreenSize.y * (parentObject.transform.localScale.y-1)*-1)

pos.y = ScreenSize.y * (parentObject.transform.localScale.y-1)*-1;

transform.position = pos; }

// On double tap image will be set at original position and scale

else if(Input.touchCount==1 &&

Input.GetTouch(0).phase == TouchPhase.Began && Input.GetTouch(0).tapCount==2)

{

parentObject.transform.localScale = Vector3.one;

parentObject.transform.position = new Vector3(originalPos.x*-1, originalPos.y*-1,

originalPos.z);

transform.position = originalPos; }

checkForMultiTouch(); }*/

// Following method check multi touch private void checkForMultiTouch() {

// These lines of code will take the distance between two touches and zoom in - zoom out at middle point between them

if (Input.touchCount == 2 &&

Input.GetTouch(0).phase == TouchPhase.Moved && Input.GetTouch(1).phase == TouchPhase.Moved)

{

midPoint = new

Vector2(((Input.GetTouch(0).position.x + Input.GetTouch(1).position.x)/2),

((Input.GetTouch(0).position.y + Input.GetTouch(1).position.y)/2));

midPoint =

Camera.main.ScreenToWorldPoint(midPoint);

curDist = Input.GetTouch(0).position -Input.GetTouch(1).position; //current distance between finger touches

prevDist = ((Input.GetTouch(0).position Input.GetTouch(0).deltaPosition)

(Input.GetTouch(1).position

-Input.GetTouch(1).deltaPosition)); //difference in previous locations using delta positions

float touchDelta = curDist.magnitude -prevDist.magnitude;

(4)

if(touchDelta>0) {

if(parentObject.transform.localScale.x < MAXSCALE && parentObject.transform.localScale.y < MAXSCALE)

{

Vector3 scale = new Vector3(parentObject.transform.localScale.x +

scale_factor, parentObject.transform.localScale.y + scale_factor, 1);

scale.x = (scale.x > MAXSCALE) ? MAXSCALE : scale.x;

scale.y = (scale.y > MAXSCALE) ? MAXSCALE : scale.y;

scaleFromPosition(scale,midPoint); }

}

//Zoom in

else if(touchDelta<0) {

if(parentObject.transform.localScale.x > MIN_SCALE && parentObject.transform.localScale.y > MIN_SCALE)

{

Vector3 scale = new Vector3(parentObject.transform.localScale.x +

scale_factor*-1, parentObject.transform.localScale.y + scale_factor*-1, 1);

scale.x = (scale.x < MIN_SCALE) ? MIN_SCALE : scale.x;

scale.y = (scale.y < MIN_SCALE) ? MIN_SCALE : scale.y;

scaleFromPosition(scale,midPoint); }

} }

HideShow.cs

using UnityEngine;

using System.Collections; using UnityEngine.UI;

public class HideShow : MonoBehaviour {

(5)

public GameObject Button1, Button2, Button3, Button4, Button5, Button6, Button7, Button8;

public void Showbutton() {

Button1.gameObject.SetActive (true); Button2.gameObject.SetActive (true); Button3.gameObject.SetActive (true); Button4.gameObject.SetActive (true); Button5.gameObject.SetActive (true); Button6.gameObject.SetActive (true); Button7.gameObject.SetActive (true); Button8.gameObject.SetActive (true); }

public void HideButton() {

Button1.gameObject.SetActive (false); Button2.gameObject.SetActive (false); Button3.gameObject.SetActive (false); Button4.gameObject.SetActive (false); Button5.gameObject.SetActive (false); Button6.gameObject.SetActive (false); Button7.gameObject.SetActive (false); Button8.gameObject.SetActive (false);

(6)

CURRICULUM VITAE

Nama : M. Hafis Ritonga

Tempat/ Tanggal Lahir : Medan/25 November 1991

Alamat : Jl. Tuba III No. 104 A Medan

Jenis Kelamin : Laki-laki

Agama : Islam

Tinggi : 169 cm

No. Telp/Hp : 085358835491

Status : Belum kawin

Email : hafisritonga@gmail.com

No. HP : 085358835491

PENDIDIKAN FORMAL

• Universitas Sumatera Utara D3 Teknik Informatika Fakultas MIPA USU Medan. (Tahun Ajaran 2010 s/d 2013. Berijazah).

• Sekolah Menengah Kejuruan Swasta Dwiwarna 2 Medan. ( Tahun Ajaran 2007 s/d 2010. Berijazah).

• Sekolah Menengah Pertama Negeri 13 Medan. (Tahun Ajaran 2004 s/d 2007.

Berijazah).

• Sekolah Dasar Negeri 067241 Medan. (Tahun Ajaran 1998 s/d 2004. Berijazah).

SEMINAR

• Peserta Seminar Nasional Literasi Informasi 2014 Universitas Sumatera Utara.

PENGALAMAN KERJA

• Magang di Biro Keuangan Setdaprovsu Kantor Gubernur Tahun 2012.

DATA KEMAMPUAN

• Database : SQL server dan Mysql.

Referensi

Dokumen terkait

Kemerdekaan selama 72 tahun belum mampu menunjukkan pembangunan pertanian dapat secara komprehensif menjawab keterpurukan masyarakat perdesaan masih dalam menghadapi

Dari 75,5 juta ha lahan yang dapat digunakan untuk usaha pertanian, baru sekitar 25,7 juta ha yang telah diolah untuk sawah dan perkebunan (BPS, 2000). Pertanian organik menuntut

PENULISAN BAHASA INDONESIA YANG BENAR DALAM SURAT MENYURAT BISNIS 63 diawali kata kepada karena kata tersebut berfungsi sebagai penghubung intrakalimat yang menyatakan arah

BAB III : TIMBULNYA PEMENUHAN PRESTASI KLAUSULA DARI PIHAK PERTAMA UNTUK MENYEDIAKAN RU­ MAH PENGGANTI YANG SESUAI 1.. Cacat-cacat Pada Surat Mengenai Obyek Sewa

[r]

Kosasih wajib menyetorkan sendiri PPh atas penghasilan dari persewaan tanah dan/atau bangunan tersebut dengan menggunakan Surat Setoran Pajak (SSP) karena penghuni rumah

Abstract: This research was conducted to design a comic based on West Kalimantan folklore to support teaching reading on narrative text. The method of this

Selain faktor strategi coping, self monitoring juga merupakan faktor lain yang tidak kalah berpengaruh terhadap diri individu yang dapat membantunya dalam menghadapi