Tesi di laurea Master MDE 2019/2020

Page 1


MamurrAR+

Applicazionemobileperl’AreaprotettadiGianolaedelMontediScauri

Tesidi:

Dott.BiancaGagliardi

Matricolan.293860

Relatore:

CristinaBarbiani

AnnoAccademico2019/2020

Indice

1.Ilcontesto

2.Ilprogetto

a.Concept

b.Progettogra!co

c.SviluppoUnity

3.Sviluppifuturi

1.Ilcontesto

All’estremo sud del Lazio, il Parco Regionale SuburbanodiGianolaeMontediScauriècollocato sullalinguacostieracheseparaiMontiAuruncidal maredelGolfodiGaetaerappresentaunodeipochi lembiverdidiunterritoriofortementeantropizzato.

Gliambientinaturaliconsentieriimmersinellafolta vegetazioneaccolgonoepreservanonumerosiresti diepocaromanasegnodiunintensaattivitàumana cheincessantementesiprotraeda2000anni, no aigiorninostri.

All’internodelParcoèinserital’AreaArcheologica della Villa di Mamurra, con le sue strutture parzialmentevisibiliattualmenteinfasediscavoe reastauro.

AreaArcheologicadellaVilladiMamurra

L’Area Archeologica della Villa di Mamurra comprende numerose strutture murarie attualmenteinteressatedastudiericostruzioni.

La lettura e ricostruzione visiva della dimora originaria e la destinazione d’uso di ogni edi!cio risultanodidifficilecomprensioneinquantolagran partediessièancoraprotettadalterreno.

Gliedi!ciprincipalisono:

1-Porticciolo

2-Cisternagrande

3-Galleriainterrata

4-GrottadellaJanara

5-Cisternadelle36colonne

6-Edi!cioottagonale

2.Ilprogetto

a.il concept

Il progetto di tesi propone lo sviluppo di una applicazione che sia di supporto ai visitatori permettendo la prenotazione della visita e la personalizzazionedeipercorsi.

Attualmente il Parco non è dotato app e le visite avvengonoliberamentemasenzaunasegnalazione deicontenutilungoipercorsi.

I percorsi principali sono 3 e sono segnalati in modalitàtradizionale:

-SentierodiMamurra

-SentierodiPortoCofaniello

-Sentierodelcrinale

Lo sviluppo è avvenuto per Android ma è implementabileancheperiOS.

SiipotizzaladistribuzionesuentrambigliStore.

DallaschermatadiHomesaràpossibilesceglierelalingua.

Laschermatasuccessivadaràlapossibilitàdiaccedereallostoricodelleprenotazionieallenuoveprenotazioni.

Grazie all’inserimento del tempo a disposizione del visitatore e alla scelta dei punti di interesse da visitare, ogni sentiero sarà personalizzatoepotràesserediversoadognivisita.

Unavoltapersonalizzatoilpercorsosaràpossibilesalvarloeaccederviinqualsiasimomento.

Ilvisitatorechevorràiniziarelavisitapotràseguuireilpropriopercorsodirettamentenell’appevisualizzareipuntidiinteressenele vicinanze.

Inognimomentodellavisita,ilvisitatorepotràvisualizzarelenormedelParcoinmateriadisicurezza.

c.losviluppoinUnity

Lo sviluppo dell’app è avvenuto su Unity in ambiente dedicato ad AndroideildebugèavvenutosuundeviceAndroidperveri carne l’effettivofunzionamento.

c.losviluppoinUnity

ATTIVAZIONEBOTTONIONCLICK

usingSystem.Collections; usingSystem.Collections.Generic; usingUnityEngine; usingUnityEngine.SceneManagement;

publicclassButtonManager:MonoBehaviour{ publicvoidNewGameBtn(stringnewGameLevel)

{ SceneManager.LoadScene(newGameLevel);

APERTURASOCIALONCLICK

usingSystem.Collections; usingSystem.Collections.Generic; usingUnityEngine; usingUnityEngine.SceneManagement; publicclassAppOpener:MonoBehaviour { AsyncOperationasync; publicboolmIsAppLeft; voidOnApplicatioFocus(boolhasFocus)

{ mIsAppLeft=!hasFocus; } voidOnApplicatioPause(boolpauseStatus)

{ mIsAppLeft=pauseStatus;

} publicvoidFacebook()

{ StartCoroutine(OpenFacebook());

}

IEnumeratorOpenFacebook()

{ Application.OpenURL(“https://m.facebook.com/parcorivieradiulisse”); yieldreturnnewWaitForSeconds(1f); if(mIsAppLeft)

mIsAppLeft=false; else

}

Application.OpenURL(“https://m.facebook.com/parcorivieradiulisse”);

publicvoidInstagram()

{ StartCoroutine(OpenInstagram());

}

IEnumeratorOpenInstagram()

{ Application.OpenURL(“https://instagram.com/parcorivieradiulisse?utm_medium=copy_link”); yieldreturnnewWaitForSeconds(1f); if(mIsAppLeft)

mIsAppLeft=false; else

Application.OpenURL(“https://instagram.com/parcorivieradiulisse?utm_medium=copy_ link”);

} publicvoidYoutube()

{ StartCoroutine(OpenYoutube());

} IEnumeratorOpenYoutube()

{ Application.OpenURL(“https://www.youtube.com/user/parcorivieradiulisse”); yieldreturnnewWaitForSeconds(1f); if(mIsAppLeft)

mIsAppLeft=false; else

Application.OpenURL(“https://www.youtube.com/user/parcorivieradiulisse”);

} publicvoidTwitter()

{ StartCoroutine(OpenTwitter());

} IEnumeratorOpenTwitter()

{ Application.OpenURL(“https://twitter.com/RivieraDiUlisse?s=20”); yieldreturnnewWaitForSeconds(1f); if(mIsAppLeft)

mIsAppLeft=false; else

Application.OpenURL(“https://twitter.com/RivieraDiUlisse?s=20”);

} publicvoidSite()

{ StartCoroutine(OpenSite()); } IEnumeratorOpenSite()

{ Application.OpenURL(“https://www.parchilazio.it/rivieradiulisse”); yieldreturnnewWaitForSeconds(1f); if(mIsAppLeft)

mIsAppLeft=false; else

Application.OpenURL(“https://www.parchilazio.it/rivieradiulisse”); } }

c.losviluppoinUnity

SWIPEMENUNORMEDELPARCO

usingSystem.Collections; usingSystem.Collections.Generic; usingUnityEngine; usingUnityEngine.UI; publicclassswipe_menu:MonoBehaviour

using using classswipe_menu:MonoBehaviour

{ publicGameObjectscrollbar; !oatscroll_pos=0; !oat[]pos;

//Usethisforinitialization voidStart()

{ } //Updateiscalledonceperframe voidUpdate()

{ pos=new!oat[transform.childCount]; !oatdistance=1f/(pos.Length-1f); for(inti=0;i<pos.Length;i++)

{ pos[i]=distance*i;

} if(Input.GetMouseButton(0))

{ scroll_pos=scrollbar.GetComponent<Scrollbar>().value; } else

{ for(inti=0;i<pos.Length;i++)

!oat =0; pos; Usethisforinitialization void iscalledonceperframe void pos=new !oatdistance=1ffor i=0;i< =distance*i; if scroll_pos= for i=0;i< if < + &&scroll_pos>=

{ if(scroll_pos<pos[i]+(distance/2)&&scroll_pos>pos[i]-(distance/2))

{ scrollbar.GetComponent<Scrollbar>().value=Mathf.Lerp(scrollbar.GetComponent<Scrollbar>().value,pos[i],0); } } }

for(inti=0;i<pos.Length;i++)

{ if(scroll_pos<pos[i]+(distance/2)&&scroll_pos>pos[i]-(distance/2))

{ transform.GetChild(i).localScale=Vector2.Lerp(transform. GetChild(i).localScale,newVector2(2,2),0.1f); for(inta=0;a<pos.Length;a++)

{ transform.GetChild(a).localScale=Vector2.Lerp(transform. GetChild(a).localScale,newVector2(0.3f,0.3f),0.1f); { } } } } } }

Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.