TALOSUUNNITTELUOHJELMAN KÄYTTÖLIITTYMÄ
|
|
- Kaarlo Mäki
- 8 vuotta sitten
- Katselukertoja:
Transkriptio
1 TALOSUUNNITTELUOHJELMAN KÄYTTÖLIITTYMÄ Ammattikorkeakoulututkinnon opinnäytetyö Riihimäki, Tietotekniikka Kevät, 2017 Nicholas Nurminen
2 TIIVISTELMÄ Tietotekniikka Riihimäki Tekijä Nicholas William Nurminen Vuosi 2017 Työn nimi Työn ohjaaja /t Talosuunnitteluohjelman käyttöliittymä Petri Kuittinen TIIVISTELMÄ Työn idea tuli Masterhouse Oy -nimiseltä piharakennusyritykseltä. Se (yritys) tarvitsisi selaimeen sijoitettavan ohjelman, jolla asiakas pystyisi suunnittelemaan helposti omiin tarpeisiinsa soveltuvan piharakennuksen erilaisista elementtiosista. Tästä suunnitelmasta asiakkaan oli tarkoitus pystyä lähettämään tiedot yritykselle tarjouspyyntöä varten. Masterhouse Oy:n projektin laajuus ei olisi soveltunut opinnäytetyöhön suunniteltuun työmäärään, joten ohjelmasta päätettiin tehdä opinnäytetyön puitteissa vain toimiva prototyyppi. Tämän prototyypin pohjalta saatettaisiin rakentaa lopullinen versio opinnäytetyön jälkeen tai vaihtoehtoisesti käyttää jotain muuta ratkaisua. Käyttöliittymä toteutettiin hyödyntämällä yleisimpiä web-tekniikoita, jotka ovat merkkauskieli HTML5, ohjelmointikieli JavaScript ja kuvauskieli CSS. Opinnäytetyössä käydään läpi edellä mainittujen web-tekniikoiden vahvuuksia sekä heikkouksia ja tutustutaan jqueryyn ja Bootstrappiin. Käyttöliittymästä saatiin valmiiksi toimiva prototyyppi. Tulos ei välttämättä ollut niin nätti kuin olisi voinut toivoa, mutta käyttöliittymässä on kaikki tarvittavat ominaisuudet, jotka siihen suunniteltiin. Ainoa ero on se, että suunnitelma ladataan prototyypissä omalle koneelle sen sijaan, että se lähetettäisi yritykselle. Lopputulos oli loppujen lopuksi onnistunut, sillä ohjelma tekee sen mitä sen täytyykin. JQueryn ja Bootstrapin käyttäminen olisi nopeuttanut toteutusprosessia ja parantanut lopputulosta, mutta niihin tutustuminen tapahtui liian myöhäisessä vaiheessa. Tästä syystä opinnäytetyön jälkeen teen ohjelman yritykselle uudestaan paremmalla osaamisella. Avainsanat HTML5, JavaScript, CSS, Suunnitteluohjelma, Käyttöliittymä Sivut 26 sivua
3 ABSTRACT Information Technology Riihimäki Author Nicholas Nurminen Year 2017 Subject Supervisors User interface for house design program Petri Kuittinen ABSTRACT The idea for the thesis came from Masterhouse Oy. They wanted an application that their customers could use to design small warehouses, which are made of different kinds of elements. This warehouse design could afterwards be sent to Masterhouse Oy for a possible deal to be made. The scope of this project was excessively big for bachelor s thesis limit, so it was decided that only a functional prototype of the program would be made. This prototype could be continued after the bachelor s thesis or a new version of the program would be made. User interface was made with using the most universal and used webtechnologies. These are HTML5 markup language, JavaScript programming language and CSS style sheet language. The bachelor s thesis also examines their positive and negative qualities. jquery and Bootstrap will be examined, even though they weren t used in the prototype. A complete prototype of the user interface was achieved. The outcome was not as good looking as it could have been, but it included almost all the necessary features that were planned. The only thing that differed in prototype was the sending of design. Instead of sending it to the company, it was downloaded to the user s computer. The result was quite successful, even though it had its flaws. At least it did what it was supposed to do. Earlier interaction and reading about jquery and Bootstrap would have affected the result positively and made the process faster, but I learned about them too late. For this reason, I will remake the program with better skills and knowledge. Keywords Pages HTML5, JavaScript, CSS, Design Program, User Interface 26 pages
4 SISÄLLYS 1 JOHDANTO SUUNNITTELU Web-tekniikat HTML JavaScript CSS Avoimen lähdekoodin kirjastot JQuery Bootstrap Ominaisuuksien kartoitus Opinnäytetyöhön kuuluvat ominaisuudet Opinnäytetyön ulkopuolelle jäävät ominaisuudet Työkalut Tekstieditori Graafiset työkalut Ohjelmien ulkoasun suunnittelu Ensimmäinen suunnitelma Toinen suunnitelma Kolmas suunnitelma TOTEUTUS Drag and copy Ruudukko Prototyyppipalat Poistaminen Informaatio kentät Tallentaminen Virheiden korjaus ja hienosäätö Valikon kopioituminen Valikon asettelu Elementtiosien kuvien linkitys YHTEENVETO Lopputulos JQuery Bootstrap Arviointi LÄHTEET... 24
5 1 1 JOHDANTO Työ tehtiin Masterhouse Oy -nimiselle yritykselle. Työn tarkoituksena on suunnitella käyttöliittymä pienrakennusten suunnitteluohjelmalle ja luoda prototyyppi kyseisestä ohjelmasta. Ohjelma tulisi olla sijoitettavissa internet-selaimeen, jossa asiakas kykenisi itse vaivatta suunnittelemaan halutun kaltaisen rakennuksen pohjaluonnoksen ja lähettää tarjouspyynnön yritykselle tarjouslaskentaa varten. Työtä ei ole tarkoitus viedä alusta loppuun saakka, vaan tehdä ohjelmasta toimiva prototyyppi, josta olisi mahdollista jatkaa myöhemmin valmiiseen versioon. Asiakasyrityksellä itsellään ei ole kokemusta verkkosivujen tai sovellusten tekemisestä, joten toteutustapa jäi vapaasti valittavaksi, kunhan se soveltuu selaimessa käytettäväksi. Työn tarkoituksena minulle opiskelijana on kehittää omia käyttöliittymäsuunnittelu taitoja ja saada käytännön kokemusta asiasta. Sivussa tulee myös virkistettyä ja hiottua ohjelmoinnin taitoja tehdessä prototyyppiä tai pohjaa käyttöliittymälle. Työn painopisteenä tulee kuitenkin olemaan erilaisten käyttöliittymien suunnittelemisen harjoittelu ja ohjelmasta karkean prototyypin luominen. 2 SUUNNITTELU Työn tilaajalla ei ole tällä hetkellä käytössään vastaavanlaista ohjelmaa, eikä vastaavanlaisia ohjelmia tällä hetkellä ole tietääkseni suunniteltu yritysten asiakkaiden käytettäväksi. Nykyiset versiot suunnitteluohjelmista on tarkoitettu ammattilaisten käyttöön ja tästä syystä liian monimutkaisia ja vaikeakäyttöisiä yritysten asiakkaiden käytettäviksi. Työn toteutus vaatii joitakin työkaluja, koodikieliä sekä editoreita. 2.1 Web-tekniikat Web-tekniikat ovat koodikieliä, jotka on tarkoitettu verkkosivujen ja sovelluksien tekemiseen. Yleisimpiä Web-tekniikoita ovat avoimesti standardoitu kuvauskieli HTML, dynaaminen komentosarjakieli JavaScript ja tyyliohjeiden laji CSS HTML HTML eli Hyper Text Markup Language on avoimesti standardoitu kuvauskieli. Uusin standardi tästä kuvauskielestä on HTML5, joka sai W3C-
6 suosituksen 2014 lokakuussa (W3Schools HTML5, n.d.). Monet webselaimet ovat tukeneet HTML5:n uusia ominaisuuksia ja lisäksi monet verkkosivut ovat siirtyneet HTML5:n käyttämiseen. HTML-verkkosivu koostuu erilaisista HTML-elementeistä. Elementti koostuu alku-tägistä, jonka jälkeen tulee haluttu sisältö, minkä jälkeen taas suljetaan elementti. Alla olevassa koodissa on esimerkki, jossa luodaan title-tägi, jonka sisään laitetaan haluttu sisältö. Se on tässä tapauksessa tekstiä ja suljetaan jälkeenpäin uudella tägillä. <title>suunnittele Oma Rakennuksesi</title> HTML5:n ominaisuuksia ovat mm. <canvas>-, <video>- ja <audio> - elementit. HTML5 mahdollistaa myös SVG-muotoisen (Scaleable Vector Graphics) sisällön näyttämisen käyttämättä <object> -tägiä. HTML5:ssä on myös merkityksiä rikastuttavia ominaisuuksia, kuten <section>-, <article>-, <header>- ja <nav>-tägit ja uusia tägien määrittelemiseksi ja selkeyttämiseksi tehtyjä attribuutteja. (Wikipedia HTML5, n.d.) HTML5-verkkosivuilla on edeltävää HTML4-versiota paljon lyhyempi doctype. HTML5 doctype on myös paljon yksinkertaisempi verrattuna edeltävään versioon. Alla vertailtavissa ensin strict-tyyppinen HTML4 doctype ja HTML5 doctype. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" " <!DOCTYPE HTML> HTML Canvas on hämmästyttävä piirustustekniikka, joka sisältyy kaikkiin nykyaikaisiin web-selaimiin. Sillä voi piirtää kuvioita, manipuloida kuvia, rakentaa pelejä ja animoida käytännössä mitä tahansa, voit jopa luoda mobiilisovelluksia. (Marinacci 2012.) JavaScript JavaScript on erittäin yleinen ohjelmointikieli, jolla voidaan luoda verkkosivuun erinäisiä dynaamisia ominaisuuksia. Sitä voidaan mm. käyttää HTML-sivuja luodessa, jos websivuille halutaan lisätä käyttäjäpuolen interaktiivisuutta tai lisätä jotain ominaisuuksia web-sivuille. (Wikipeida JavaScript, n.d.) JavaScriptin esiintyvyyden takia internetissä ja muualla, JavaScriptistä on tullut vaikeasti vältettävä. Tämä ei kuitenkaan tarkoita sitä, että siitä ei pidettäisi. Vaikka JavaScriptissä onkin paljon oikkuja käytettäessä, se on käypä ohjelmointikieli, joka tekee käyttäjästään tuotteliaan ja sillä voi olla myös hauska ohjelmoida. (Rauschmayer, 2014.)
7 3 Nimestään huolimatta JavaScript on täysin eri ohjelmointikieli kuin Java, pois lukien syntaksin yhteneväisyydet. Tämä johtuu JavaScriptin julkaisuajasta, jolloin Java-ohjelmointikieli oli suosiossa, mikä johti etuliitteen lisäämiseen markkinointitarkoituksessa. Tästä huolimatta JavaScript on itsenäinen ohjelmointikieli ja yleisessä käytössä tänä päivänäkin. (Haverbeke, 2014.) JavaScriptistä on ollut olemassa useita eri versioita. ECMAScript-versio 3 oli laajasti tuettu versio sillä hetkellä kun JavaScript nousi yleisimmäksi ohjelmointikieleksi vuosien 2000 ja 2010 välillä. Se kävi läpi useita versioita, mutta vuonna 2009 tullut viides versio on nykyään kaikkien selainten tukema. Kuudes versio on tällä hetkellä tekeillä ja jotkin selaimet ovat alkaneet tukemaan sen ominaisuuksia. (Haverbeke, 2014.) Tällä hetkellä suurin osa nykyaikaisista websivuista käyttää JavaScriptiä, sekä kaikki nykyaikaiset selaimet, peli- sekä mobiililaitteet tukevat sitä, mikä tekee JavaScriptistä yhden yleisimmistä ohjelmointikielistä tällä hetkellä. Myös tietokannat, kuten MongoDB ja CouchDB käyttävät JavaScriptiä, kuten myös serveripuolen ohjelmointi, kuten Node.js (Haverbeke, 2014.). JavaScriptillä pystyy muokkaamaan HTML-sisältöä ja ominaisuuksia. Sillä pystyy myös vaihtamaan CSS-tyyliä, piilottamaan HTML-elementtejä, sekä palauttamaan näkyville piilotettuja HTML-elementtejä. Nämä ovat esimerkkejä siitä, mitä JavaScriptillä pystyy tekemään. Alla olevassa HTML esimerkissä nappulan onclick-toimintoon on lisätty JavaScript-toiminto, joka muuttaa JavaScript voi muuttaa HTML sisältöä. tekstin Hello World! tekstiksi. <!DOCTYPE html> <html> <body> <p id="testi">javascript voi muuttaa HTML sisältöä.</p> <button type="button" onclick='document.getelementbyid("testi").innerh TML = "Hello World!"'>Muutos </button> </body> </html>
8 CSS CSS eli Cascading Style Sheets, on verkkosivuja varten tehty tyylikieli. Niiden avulla voidaan ohjata erinäisten HTML-elementtien ulkonäöllisiä seikkoja ja sommittelua. Vaihtoehtoisesti HTML-elementeille voi lisätä myös id- tai luokka-muuttujan. Näin on helpompi erotella kohdat, joilla on sama HTML-elementti, mutta vaativat hieman tai kokonaan erilaisen muotoilun. (Wikipedia CSS, n.d.) Alla olevassa esimerkissä kyseessä olevan sivun bodyn taustaksi on valittu black, eli musta. Värin voi valita myös värikoodilla (musta on #000000). Toisena tiedostossa on h1, joka tarkoittaa ensimmäisen asteen otsikkoa, jonka väriksi on valittu punainen ja se on sijoitettu keskelle näyttöä. Viimeisenä esimerkissä on p, joka tarkoittaa tekstiä, tulee englanninkielisestä sanasta paragraph. Tässä on asetettu tekstin fontiksi verdana ja kooksi 20 pikseliä. body { background-color: black; h1 { color: red; text-align: center; p { font-family: verdana; font-size: 20px; CSS-tiedosto sisältää paljon sääntöjä, joilla sivusto saadaan helposti näyttämään yhdenmukaiselta ilman tarvetta toistaa samoja visuaalisia ominaisuuksia muokkaavia koodeja. CSS ei tuo websivulle lisää sisältöä, vaan sen tarkoitus on helpottaa tiedon esittämistä. CSS-tiedosto on käytännössä tekstitiedosto, jonka päätteenä on.css. Css-tiedostoon viitataan html-tiedostossa, jolloin siellä olevat tägit tulevat html-tiedostoon käytettäväksi. CSS-tyylitiedoston käyttämisessä on monia etuja. Sen avulla on helppo muokata sivustoa jälkeenpäin. Fontit, värit, sommittelu ja koot on valmiiksi määritelty ja pätee asetettuihin HTML-elementteihin automaattisesti. Etuna on myös, että tyylin muokkaaminen tai kokonainen vaihtaminen on suhteellisen helppoa, sillä tyylitiedostoa tarvitsee muokata vain yhdestä paikasta. Verkkosivun tiedot eivät myöskään katoa yltiömääräisen visuaalisen muotoilun sekaan, vaan kaikki pysyy hyvin järjestyksessä ja helposti muokattavissa.
9 5 2.2 Avoimen lähdekoodin kirjastot JQuery ja Bootstrap ovat avoimen lähdekoodin kirjastoja, jotka soveltuvat kaikille selaimille. Avoimen lähdekoodin kirjasto on sivusto, josta voi ladata erilaisia ominaisuuksia, jotka vaikuttavat ohjelmointiin. Tässä tapauksessa ne vaikuttavat websivujen ohjelmointiin siten, että ne antavat valmiita vaihtoehtoja, joita voi käyttää websivuja tehdessä. Bootstrap vaatii toimiakseen myös jqueryn. Näiden kirjastojen hyötyinä on toistamisen välttäminen projektien välillä, helposti luotava mukautuminen esimerkiksi erikokoisille ruuduille, nopeasti prototyyppien luominen ja selainten välinen yhteensopivuus. Tämän lisäksi useampi kehittäjä saa samanlaisen designin aikaiseksi helposti, sillä tyylisäännöt tulevat valmiista kirjastosta. (Rascia, 2015.) JQuery JQuery on erittäin suosittu JavaScript-koodikehys eli kirjasto. Se on tarkoitettu kaikille selaimille ja sen käyttäminen on täysin ilmaista. Siitä on tehty myös mahdollisimman yksinkertainen, jotta sitä olisi helppo ymmärtää ja käyttää. (jquery, n.d.) JQueryn käyttäminen toimii siten, että ladataan kopio, joka voidaan linkittää www-sivuun. Suurin osa jquerystä löytyvistä ominaisuuksista liittyy joko HTML-dokumenttien manipulointiin, tapahtumien hallintaan, animointiin tai Ajax-sovelluksiin. (jquery, n.d.) JQuery-kirjasto tekee helpommaksi manipuloida HTML-sivua itse selaimessa. Se antaa myös työkaluja, jotka helpottavat käyttäjän vuorovaikuttamista sivun kanssa, tekevät animaatioiden luomisesta sivulle helpompaa ja antavat käyttäjän kommunikoida serverin kanssa päivittämättä sivua. (Murphey, 2012.) JQueryn käyttämisestä on oiva esimerkki w3schoolsin sivuilla. Esimerkissä käytetään hide-toimintoa piilottamaan tekstiä, eli p html-elementeissä olevaa sisältöä, mikäli sitä klikkaa hiiren vasemmalla painikkeella. (W3schools, n.d.) <script src=" ery/3.2.1/jquery.min.js"></script> <script> $(document).ready(function(){ $("p").click(function(){ $(this).hide(); ); ); </script>
10 Script elementin alkuun on laitettu etsimiskomento, joka hakee tarvittavat JavaScript-toiminnot Googlen isännöimästä kirjasto-palvelusta. Tämän jälkeen alle lisätään toiminto, joka aiheuttaa sen, että kun p htmlelementtiä klikkaa, se katoaa Bootstrap Bootstrap on ilmainen web-kehys, jolla on avoimen lähdekoodin kirjasto, joka on suunnattu lähinnä websivujen muotoiluun ja webohjelmien toimintoihin. Se sisältää HTML- ja CSS-pohjaisia muotoilumalleja kaavioille, nappuloille, websivuilla navigoinnille ja muita käyttöliittymän komponentteja. Tämän lisäksi <bootstrapista löytyy myös vapaavalintaisia JavaScript-laajennuksia. Bootstrap keskittyy vain käyttöliittymäsuunnitteluun tarkoitettuihin ominaisuuksiin. (Bootstrap, n.d.) Bootstrapin hyviä puolia ovat helppokäyttöisyys, mukautuvat ominaisuudet ja selainten kanssa yhteensopivuus. Kuka tahansa, jolla on perusymmärrys HTML:stä ja CSS:stä voi alkaa käyttää Bootstrappia. Ominaisuudet mukautuvat hyvin puhelimesta tabletin kautta pöytäkoneisiinkin. Bootstrap 3, joka on tällä hetkellä uusin versio Bootstrapista, tukee erityisesti mobiililaitteita. (W3schools, n.d.) 2.3 Ominaisuuksien kartoitus Ohjelmalla tulee olla joitakin ominaisuuksia minimissään, jotta ohjelma toimii ja se pystyy suorittamaan sille asetetun tehtävän. On tärkeitä ominaisuuksia, joita ilman ohjelma ei toimi ja on ominaisuuksia, jotka helpottavat ohjelman käyttöä ja tekevät siitä paremman Opinnäytetyöhön kuuluvat ominaisuudet Tärkeisiin ominaisuuksiin kuuluu jonkinlainen pohja, jolle suunnitelma rakennetaan ja kyky lähettää se yritykselle, jotta se voi käydä asiakkaan tekemän suunnitelma läpi ja lähettää mahdollisen tarjouksen asiakkaalle takaisin. Tähän tietenkin tarvitaan myös tapa, jolla asiakas voi kertoa kuka hän on ja miten häneen saa yhteyttä, eli siis etunimi sukunimi ja sähköposti. Jonkinlaiset nimi- ja sähköpostikentät ovat erittäin tärkeitä ominaisuuksia. Tärkeäksi ominaisuudeksi voi myös laskea sen, että suunnitelmasta pystyy ottamaan palasia pois joko perumalla viimeisimpiä toimintoja, poistamalla paloja erillisen nappulan kanssa tai mahdollisuudella korvata paloja jälkeenpäin asettamalla uuden palan sen päälle. Parhaassa tapauksessa molemmat ominaisuudet ovat tietenkin käytettävissä.
11 Opinnäytetyön ulkopuolelle jäävät ominaisuudet Näitä ominaisuuksia ovat esimerkiksi suunnitelman kolmiulotteinen mallinnus, automaattisen hinta-arvion laskeminen ja automaattisesti kääntyvät osat, jotta osia ei voi laittaa väärin päin. Nämä ominaisuudet olisivat suotavia sisällyttää ohjelmaan, jotta ne loisivat ohjelmalle paremman ulkoasun. Niitä ei kuitenkaan sisällytetä opinnäytetyön puitteisiin, mutta kerron niistä tässä hieman silti, koska se on ohjelman suunnittelun kannalta hyödyllistä. Vaikein ominaisuuksista on kolmiulotteinen mallinnus asiakkaalle, josta hän hahmottaa paremmin rakennuksen. Tähän liittyen asiakas voisi myös vaihtaa seinien värejä tai kokeilla miltä erilaiset kattomateriaalit näyttäisivät. Jos ideaa haluaisi lähteä kehittämään vielä pidemmälle, voisi sisällyttää suunnitteluohjelmaan myös huonekalujen asettelun, jolloin asiakas voisi sisustaa suunnitelmansa samalla kun suunnittelee rakennustaan. Automaattinen hinta-arvio laskettaisiin siten, että osilla on jokaisella omat hintansa ja ne laskettaisi yhteen. Tämän lisäksi lattiat ja kattomateriaali nostaisivat hintaa. Mahdollista olisi myös, että palojen hinta laskee pikkuhiljaa tiettyyn pisteeseen asti sen mukaan mitä isomman rakennuksen asiakas on suunnitellut. Automaattisesti kääntyvät osat toimisivat siten, että joka kulmalle ei tarvittaisi erilaisia osia niitä ei tarvitsisi manuaalisesti kääntää, vaan ne ikään kuin magnetisoituisivat oikein päin. Tämä vähentäisi huomattavasti tarvittavien osien määrää. 2.4 Työkalut Työnteon apuvälineinä käytin Notepad++:a, Photoshop CS5:ttä, MSPaintohjelmaa, pikseligrafiikka ohjelmaa PyxelEdit ja Wacomin piirtopöytää. Lisäksi luonnostelin mahdollisia piirustuksia käyttöliittymästä perinteisesti kynällä ja paperilla Tekstieditori Olin kahden vaiheilla siinä, että käytänkö tekstieditorina PsPad:ia vai Notepad++:a. PsPad-tekstieditoria oli opetettu käyttämään koulussa, mutta omaa kokemusta löytyi enemmän Notepad++:sta. Oli myös pidempi aika, kun olen viimeksi käyttänyt PsPadia, sekä internetistä löytyvät tutorialit ja tieto oli suurimmaksi osaksi tehty Notepad++:lla. Tästä johtuen päätin valita Notepad++:n tekstieditorikseni. Tekstieditoreilla ei ole suurempia eroavaisuuksia toiminnallisuudeltaan, mutta käyttöliittymät ovat jotakuinkin erilaiset. Erillisen tekstieditorin käyttämisen hyöty verrattuna tavallisen tekstitiedoston muokkaamiseen
12 on se, että tekstieditori värjää koodia sen mukaan mikä osa koodia se on, näyttää rivit, jolloin se ilmoittaa mahdollisista virheistä ja puuttuvista merkeistä Graafiset työkalut Graafista työkalua ei tarvinnut valita, vaan hyödynsin tarvittaessa tilanteeseen parhaiten soveltuvaa graafista ohjelmaa. Käytin Painttia silloin kun tarvitsi nopeasti leikata kuva pienemmäksi tai rajata kuvakaappauksesta tietty alue näytettäväksi. Jotkin yksinkertaiset mallit on myös tehty Paintilla. PyxelEdit on pikseligrafiikkaohjelma, jota olen käyttänyt paljon viime aikoina. Tällä ohjelmalla loin nopeasti väliaikaiset kuvat elementtien pohjapiirustuksista. Ohjelmalla pystyi helposti tekemään ruudukon ja tallentamaan jokaisen ruudun kuvat erillisinä tiedostoina kansioon, josta niitä oli helppo käyttää talosuunnitteluohjelmassa korvaavina kuvina. Photoshop CS5 versio, jota käytän, on vanha versio Photoshopista, jonka joskus ostin opiskelija-alennuksella. Se oli myös valmiiksi asennettuna tietokoneelleni, joten päätin käyttää sitä joidenkin luonnosten tekemiseen ja lopullisten pohjapiirustus palojen luomiseen. Photoshopia käyttäessäni minulla oli useimmiten käytössäni myös Wacom Intuos4 piirtopöytä. 2.5 Ohjelmien ulkoasun suunnittelu Ennen kuin lähdin tekemään ohjelmaa, tein paperille muutaman suunnitelman siitä, miltä ohjelman tulisi suurin piirtein näyttää. Osa suunnitelmista on tehty sellaisiksi, että niiden kaikki ominaisuudet eivät sisälly opinnäytetyön puitteisiin. Suunnitelmia on tehty eri vaiheissa tutkimusta, joten ominaisuuksien määrä vaihtelee myös sen mukaan Ensimmäinen suunnitelma Ensimmäinen suunnitelma oli, että ohjelma kysyisi ensin rakennuksen mitat ja loisi sopivan ruudukon sitä varten. Toisessa vaiheessa ruudulla olisi halutun kokoinen ruudukko näkyvissä ja oikeasta kulmasta saisi vedettyä esiin valikon, joka sisältää kaikki elementtiosat. Näillä elementtiosilla asiakas voisi luoda suunnitelmansa ja kun hän on valmis hän voisi siirtyä seuraavaan vaiheeseen. Kolmannessa ja viimeisessä vaiheessa asiakas laitetaan täyttämään omat tiedot, joihin sisältyy oma nimi, sähköposti ja vapaa kenttä omille kommenteille tai huomautuksille. Asiakas voi myös tarkastella suunnitelmaansa tässä vaiheessa. Mahdollista olisi myös tarkastella suunnitelmasta luotua kolmiulotteista mallia, jota asiakas voi katsella eri kulmista (kuva 1).
13 9 Kuva 1. Kuva ensimmäisen suunnitelman piirustuksesta. Värikoodit kuvalle: - Vaaleanpunainen: Asiakkaalle täytettävä kenttä. - Vihreä: Liikkuva paneeli joka tulee ruudun päälle. Sisältää listan elementtiosista, joita käyttäjä voi siirtää ruudukolle. Paneeli menee takaisin piiloon, kun käyttäjä nappaa hiirellä elementtiosasta kiinni. - Sininen: Suunnittelua varten tehty ruudukko. - Punainen: Valmis nappula. Siirtää käyttäjän seuraavaan vaiheeseen. Viimeisessä vaiheessa nappulan nimeksi muuttuu lähetä, joka painettaessa lähettää tarjouspyynnön, suunnitelman ja tiedot. - Keltainen: Sisältää asiakkaan luoman suunnitelman ja kolmiulotteisen mallinnuksen asiakkaan suunnittelemasta rakennuksesta Toinen suunnitelma Toinen suunnitelma oli huomattavan samanlainen ensimmäiseen suunnitelmaan verrattuna. Siinä kysyttiin ensin pituus ja leveys mittoja, joiden jälkeen käyttäjä siirtyy toiseen vaiheeseen, jossa on valmis ruudukko aikaisemmin syötetyillä mitoilla. Tässä vaiheessa erona on kuitenkin valmiiksi luodut seinät. Ruudukon uloimmilla ruuduilla on valmiiksi seinät ja käyttäjällä on mahdollisuus lisätä ovia ja ikkunoita ruudukon yläpuolelta haluamillensa kohdille. Kolmas vaihe on myös hyvin samanlainen kuin ensimmäisen suunnitelman vastaava vaihe, mutta kaikki tiedot näkyvät samaan aikaan ruudulla. Tässä versiossa ei ole kolmiulotteista mallinnusta rakennuksesta, vaan sen tilalla on muita tietoja rakennuksesta, kuten katon materiaali, rakennuksen mitat ja mahdollisesti jonkinlainen hintaarvio (kuva 2). Kuva 2. Kuva toisen suunnitelman piirustuksesta.
14 Värikoodit kuvalle: - Vaaleanpunainen: Asiakkaalle täytettävä kenttä. - Punainen: Seuraava nappula. Siirtää käyttäjän seuraavaan vaiheeseen. Viimeisessä vaiheessa muuttuu lähetä nappulaksi, joka lähettää asiakkaan luomasta suunnitelmasta tarjouspyynnön. - Vihreä: Ikkuna, ovi ja muut mahdolliset elementtiosat, joita käyttäjä siirtää ruudukon reunoille. - Keltainen: Asiakkaan luoma suunnitelma ja tietoja suunnitellusta rakennuksesta, kuten mitat ja kattomateriaali. - Sininen: Ruudukko, jonka uloimmille reunoille on valmiiksi luotu seinät Kolmas suunnitelma Kolmas ja viimeinen suunnitelma oli lähimpänä lopullista tulosta. Se oli myös suunnitelma, jonka valitsin. Kolmannesta suunnitelmasta vaikutti todennäköisimmältä saada valmiiksi toimiva prototyyppi, jossa on suurin osa vaadittavista toiminnoista. Kaikki toiminnot ja tieto on myös sisällytetty samaan ikkunaan, ettei ole minkäänlaista vaiheistusta joka voisi sekoittaa asiakkaan ajatuksenjuoksun (kuva 3). Kuva 3. Kuva kolmannen suunnitelman piirustuksesta.
15 11 Sivuston käynnistyessä ruudulle pitäisi tulla ohjeilmoitus, joka sisältää perusohjeet ohjelman käyttämisestä ja tiedon lähettämisestä. Ohjeissa kerrotaan, että asiakkaan tulisi muistaa täyttää omat tietonsa ennen suunnitelman lähettämistä ja kehotetaan valitsemaan rakennuksen mitat. Myös palojen siirtelystä, kääntämisestä ja poistamisesta neuvotaan. Ohje ikkunan saa esiin myös jälkeenpäin painamalla ohjenappulaa oikeassa alakulmassa. Seuraava vaihe olisi pohjapiirroksen suunnittelu. Tässä vaiheessa käyttäjä siirtää elementtiosia ruudukolle ja luo oman suunnitelmansa. Palikoita voi käännellä valikon alla olevien painikkeiden avulla, mutta kääntäminen täytyy tehdä ennen kuin palikan siirtää ruudukolle. Näin säästyisi arvokasta tilaa, eikä tarvitse tehdä samasta palikasta montaa eri versiota. Valikon alapuolella on myös roskakorinappula, johon tarvittaessa voi siirtää väärälle paikalle menneen elementtiosan. Viimeiseksi asiakas täyttää tiedot kohdan, syöttämällä tekstikenttiin oman nimensä, sähköpostinsa ja mahdollista muuta huomautettavaa. Lähetä-nappula ei suostu lähettämään, mikäli sähköpostia ei ole asetettu tarvittavaan kenttään. 3 TOTEUTUS Ensimmäisenä loin perus pohjan HTML5-tiedostolle, joka sisälsi doctypen, sekä html-, head-, script-, meta-, ja body-tägit. Tämän jälkeen lähdin kehittämään web-ohjelmaa HTML5:lla tekemällä pari riviä ruutuja div-tägiä käyttäen. Tein näille diveille myös erikseen tyylin, vielä tällä hetkellä piittaamatta css-tyylitiedoston luomisesta. Lisäsin myös ensimmäisiin ruutuihin vasemmalla erilaiset kuvat, jotta voisin testata drag- ja droptoimintoja seuraavaksi. Näiden jälkeen työ oli saatu hyvin alkuun ja tulos oli seuraavanlainen (kuva 4). Kuva 4. Ensimmäinen testi ohjelmasta.
16 Kun olin saanut pohjan kuntoon, oli aika alkaa työstää toimintoja. Aloitin lisäämällä kuviin drag- ja drop-ominaisuudet hyödyntämällä seuraavan laisia toimintoja script-tägin sisällä. function drop(ev) { ev.preventdefault(); var data=ev.datatransfer.getdata("text"); var clone = document.getelementbyid(data).clonenode(true); clone.id = clone.id + (new Date()).getMilliseconds(); ev.target.appendchild(clone); if (ev.target == document.getelementbyid("trash")) var img = document.getelementbyid(data); img.parentnode.removechild(img); Kun olin saanut laitettua toiminnot script-tägien sisään, piti myös imgtägeihin lisätä drag(event)-toiminnot, jotta ne toimivat niin kuin niiden pitäisikin. Jokaisella div-tägillä tuli olla myös oma id ja niihinkin piti lisätä drop(event)- ja allowdrop(event)-toiminnot. Näin ollen kuvia pystyi siirtelemään ruutujen välillä vaivatta Drag and copy Seuraava vaihe oli muuttaa drop-toiminto siirtämisen sijasta siihen, että ohjelma kopioisi alkuperäisen kuvan. Tällöin olisi mahdollista luoda erillinen rivi talon elementeille, ikään kuin valikko, josta voi tuoda osia pohjapiirustusta varten ruudukolle. Kopioimistoiminnon saavuttamiseksi, drop-toimintoa piti lähteä muokkaamaan siten, että se ei hae kuvaa pois alkuperäisestä sijainnistaan, vaan luo siitä kopion uuteen ruutuun. Tämä oli ensimmäinen kokeilu ruudun tiedon kopioimisesta, sen sijaan että sen siirtäisi. Alla olevan koodin toiminto siis korvasi ylemmän kuvan drop-toiminnon. function drop(ev) { ev.preventdefault(); var data=ev.datatrandfer.getdata("text/html"); var nodecopy = document.getelementbyid(data).clonenode (true); nodecopy.id = "newid"; ev.target.appendchild(nodecopy);
17 13 Ensimmäinen tiedon kopioimiskokeilu toimi suhteellisen hyvin. Pystyin kopioimaan molemmat kuvat ja alkuperäinen lähde pysyi koskemattomana. Tässä tuli kuitenkin pieni epäkäytännöllisyys. Mikäli oli jo kopioinut kuvan yksi, ei voinut kopioida enää kuvaa kaksi kopioidusta lähteestä, vaan tähän ruutuun tuli kuva ensimmäisestä kuvasta (kuva 5). Kuva 5. Viivat osoittavat mistä mihin kopioitu. Vihreä on toivottu tulos ja punainen ei toivottu tulos. Tämä pieni epäkäytännöllisyys tulisi korjata heti, joten lähdin selvittämään mistä se johtui. Hetken pohdinnan ja kokeilun jälkeen sain selville, että poistamalla yhden rivin drop-toiminnosta, sain sen toimimaan halutulla tavalla. Alla oleva rivi on pois suljettu koodirivi. /*nodecopy.id = "newid";*/ En kuitenkaan poistanut riviä, vaan lisäsin rivin ympärille /* */ merkinnät, jotta sain suljettua rivin pois toimivasta koodista. Laitoin viereen myös selityksen, että toiminto tekee tehtävänsä paremmin ilman tätä riviä, mahdollista myöhempää selvittelyä varten. Tämän jälkeen kuvat kopioituivat ruutuihin halutulla tavalla. 3.2 Ruudukko Loin ruudukon div-tägejä käyttämällä ja kopioimalla niitä useaan kertaan peräjälkeen. Sijoitin div-tägit useamman div-tägin sisään ja asetin eri divtägeille eri luokat, joille on määritetty tietyt tyyliasetukset csstyylitiedostossa. Div-tägeihin lisättiin myös jo aikaisemmin käytetyt drop(event)- ja allowdrop(event)-toiminnot, jotta kuvien kopioiminen niihin onnistuisi.
18 14 <div class="grid"> <div class="row"> <div class="cell"ondrop="drop(event)" ondragover="allowdrop(event)"></div> <div class="cell"ondrop="drop(event)" ondragover="allowdrop(event)"></div> Tämän jälkeen tein css-tyylitiedoston, jotta div-tägeille saa helposti tyyliluokan johon viitata. Tämä helpottaa myös tulevaisuudessa uusien samanlaisten divien luomista ja tekee html-tiedoston sisällöstä helppolukuisempaa..grid >.row { font-size: 0; width: 100px; white-space: nowrap;.grid >.row >.cell { position: relative; display: inline-block; width: 70px; height: 70px; outline: 1px solid rgba(0, 0, 0, 0.3); Kun yllä olevan tyyliasetusten grid- ja row-osia käyttää div-tägien luokkia luodessa, saadaan siitä aikaiseksi seuraavan lainen ruudukko (kuva 6). Kuva 6. Kuva div-tägeilla ja css-tyylitiedostolla luodusta ruudukosta.
19 15 Ruudukon oikean alakulman ruudun päällä on pidetty hiirtä ja tästä syystä ruutu on värjätty harmaaksi (kuva 6). Css-tyylitiedoston viimeinen rivi aiheuttaa ruudun harmaaksi muuttumisen, jotta käyttäjän on helpompi seurata hiiren liikettä, kun hän kopioi ruudulle palaa. Alla koodiesimerkki, joka muuttaa ruudun väriä..grid >.row >.cell:hover { background-color: #D8D8D8; 3.3 Prototyyppipalat Seuraavaksi tein yhden ylimääräisen rivin erilliseksi kaiken yläpuolelle ja tämän rivin alapuolelle pienen marginaalin, jotta olisi helppo erottaa palat, joita on tarkoitus kopioida ruudukolle. Loin pikaisesti PyxelEdit-ohjelmassa luonnokset ohjelman elementtiosista (kuva 7), joita voisi käyttää havainnollistavina kuvina lopullisten sijaan. Tässä vaiheessa tyydyin kuitenkin luomaan kuvat vain ovelle, ikkunalle, seinälle ja kulmapaloille. Kuva 7. Ensimmäiset versiot elementtiosien kuvista. Seuraavaksi huomasin, että kopioitavat palat ja pohjapiirroksen ruudukko menevät päällekkäin, joten jouduin lisäämään wrapperin csstyylitiedostoon ja laittamaan kaikki div-tägit wrapper divin sisälle, jolle oli asetettu seuraavan laiset asetukset..wrapper { position: fixed; width: 100%; height: 100%; left: 0; top: 0; text-align: left;.wrapper:before { content: ""; display: inline-block; vertical-align: middle; width: 0; height: 100%;.wrapper >.grid { display: inline-block; vertical-align: middle;
20 Poistaminen Tässä vaiheessa on mahdollista luoda pohjapiirustuksia elementtirakennuksista. Ongelmaksi osoittautui kuitenkin, että mikäli teki virheen, palan poistaminen tai korvaaminen ei ollut mahdollista. Tässä tapauksessa ainoaksi mahdollisuudeksi jäi päivittää sivu ja aloittaa uudelleen tyhjästä. Tätä varten tein poistamiselle oman toiminnon, jotta käyttäjä pystyy poistamaan haluamansa osan siirtämällä sen poistamispainikkeen (kuva 8) päälle. Kuva 8. Punainen rasti on poistamispainike. Punaisen rastin kuva on luotu samalla tavalla kuin muutkin, paitsi että sille ei ole lisätty drag-toimintoa. Sen sijaan sille on lisätty drop-toiminto ja sen id:ksi on asetettu trash. Seuraava koodi aiheuttaa sen, että mikäli kuvan pudottaa ruudulle jonka id on trash, se poistaa kuvan ruudusta eikä luo uutta kopiota kuvasta. if (ev.target == document.getelementbyid("trash")) { var img = document.getelementbyid(data); img.parentnode.removechild(img); 3.5 Informaatio kentät Informaatiokenttien luominen oli yksinkertainen prosessi. Loin kolme eri input-tägiä. Kaikkien näiden input-tägien tyypiksi asetin text. Nimesin ne name-, - ja info-nimillä, jotta voisin erottaa ne toisistaan. Asetin jokaiselle myös oman placeholderin, jossa lukee lisätietoa kyseisestä tekstikentästä (kuva 9). Kuva 9. Tekstikentät.
21 Tämän jälkeen loin myös pikaisesti alle kaksi nappulaa button-tägiä käyttäen. Asetin ensimmäiseen nappulaan onclick-toiminnon, joka ilmoittaa ponnahdusikkunalla että Suunnitelmasi on lähetetty tarjouspyyntöä varten.. Toinen nappula on ohjenappula, joka luo ponnahdusikkunan, jossa on ohjeita ohjelman käyttämistä varten (kuva 10). 17 Kuva 10. Ohje nappulan ponnahdusikkuna. 3.6 Tallentaminen Suunnitelman tallentaminen osoittautui hiukan hankalaksi. Ensin selvitin, että miten sen tallentaminen onnistuisi helpoiten. Yritin ensin kaapata sivustosta kuvan html2canvas-nimisellä JavaScript-koodilla, mutta sen soveltaminen osoittautui hankalaksi, joten lähdin etsimään vaihtoehtoista tallentamistapaa. Hetken mietiskelyn ja etsimisen jälkeen löysin toiminnon, jolla pystyy tallentamaan sivun html koodia html päätteiseen tekstitiedostoon. Rajasin ruudukon ja info osion erilliselle diville, jonka id:ksi asetin content. Tätä id:tä hyödynnetään myöhemmin html koodin lataamisen rajausta varten siten, että se lataa vain suunnitelman ja info-osion, eikä lataa valmiiksi asetettu paloja joita on tarkoitus kopioida ruudukolle. Lisäsin script-osioon toiminnon, joka mahdollistaa html-sisällön lataamisen, joka tämän jälkeen luo siitä html-tiedoston. function download() { var a = document.body.appendchild( document.createelement("a") ); a.download = "export.html"; a.href = "data:text/html," + document.getelementbyid("content").innerhtml; a.click();
22 Tämän jälkeen lisäsin kyseisen toiminnon lähetä nappulan onclickilmoituksen jälkeiseksi toiminnoksi lisäämällä download-toiminnon onclick tägin loppuun. <button type="button" onclick="alert('suunnitelmasi on lähetetty tarjouspyyntöä varten.'); download()">lähetä</button> Tämä lataustoiminto onnistuu lataamaan listan elementtiosista, jotka asiakas on laittanut ruudukolle. Toiminto ei kuitenkaan onnistu lataamaan tekstikenttiin asetettua tietoa, joten lataus-toimintoon piti lisätä muutama rivi koodia lisää. Lisätyt koodirivit asetettiin ylimmäisiksi. function download() { var name = document.getelementbyid("name").value; var = document.getelementbyid(" ").value; var info = document.getelementbyid("info").value; document.getelementbyid("print").innerhtml = name+"<br>"+ +"<br>"+info; var a = document.body.appendchild( document.createelement("a") ); a.download = "export.html"; a.href = "data:text/html," + document.getelementbyid("content").innerhtml; a.click(); Nämä koodirivit hakevat tekstikenttien sisällön ja tulostavat ne tekstinä uusien div-tägien sisään, jonka id:nä on print. Nämä div-tägit sisällytettiin content id:n omaavien div-tägien sisään, mutt ei grid id:n omaavien sisään, etteivät ne sotkeennu grid tyyliasetusten seurauksesta Virheiden korjaus ja hienosäätö Testailin ohjelmaa säännöllisesti sitä tehdessä ja kirjasin ylös ongelmia ja muita virheitä, jotta voisin lopuksi korjata ja viilata mahdollisia epäkohtia pois. Jos ongelma oli liian iso, korjasin sen heti, mutta sellaisia ongelmia ei tullut vastaan kovin montaa. Jos ongelma oli ylitsepääsemätön, piti toiminto useimmiten korvata kokonaan jollain muulla toiminnolla.
23 Valikon kopioituminen Tämä oli yksinkertainen ongelma löytää ja ratkaisu siihen oli myös yksinkertainen. Ongelmana oli, että jos siirsi elementtipalan valikossa sijaitsevan ruudun alareunaan, se loi ylimääräisen kuvan valikkoon. Ongelmana oli, että aikaisemmassa versiossa kaikissa ruuduissa oli ollut drop(event)- ja allowdrop(event)-toiminnot käytössä. Tästä johtuen lopulliseenkin versioon oli vahingossa jäänyt tällaiset toiminnot valikon ruuduille. Ongelma korjaantui sillä, kun poisti drop(event)- ja allowdrop(event)-toiminnot ruuduista Valikon asettelu. Valikossa oli myös hieman hienosäädettävää. Alussa valikko oli vaakatasossa, mutta huomasin nopeasti, että se ei ollut hyvä idea. Vaihdoin valikon suunnan pystysuoraksi, sillä tämä säästi huomattavasti tilaa ja valikko oli helpommin saatavilla. Valikon tyyli oli myös kirjoitettu html tiedostoon erillisen tyyliohjeiden sisälle. Tyylit oli tehty seuraavalla tavalla. <style> #div0, #div1, #div2, #div3, #div4, #div5, #div6, #div7, #div8 { float: right; width: 70px; height: 70px; margin: -1px; border: 1px solid black; </style> Tämä oli ainut tyyliohje joka ei ollut css-tyylitiedostossa, joten päätin siirtää sen css-tyylitiedostoon. Tein myös hiukan muutoksia tyyliin samalla kun siirsin sen css-tyylitiedostoon..menu { float: right; width: 70px; height: 70px; margin: 20px; Asetin samalla myös kaiken body-elementissä olevan sisällön div-tägien sisään, jolle annoin tyyliksi leveyden 850 pikseliä ja korkeudeksi 900 pikseliä. Tämä korjasi valikon asettumisen ruudukon päälle, sillä kun valikon tyylinä on float: right; se hakeutuu oikeaan reunaan ruudun koosta riippumatta (kuva 11).
24 20 Kuva 11. Vaakatasossa oleva valikko, joka hakeutuu oikeaan reunaan ja aiheuttaa ongelma olemalla ruudukon päällä. Korjausten jälkeen lopputulos oli huomattavasti paremman näköinen ja helpommin käytettävä (kuva12). Kuva 12. Lopullisen version pystyssä oleva valikko ei tule ruudukon päälle.
25 Huomasin että tyylitiedostossa olevalla wrapper-osuudella ei ollut mitään virkaa enää tässä vaiheessa, joten päätin poistaa kyseiset rivit tyylitiedoston koodista..wrapper { position: fixed; width: 100%; height: 100%; left: 0; top: 0; text-align: left;.wrapper:before { content: ""; display: inline-block; vertical-align: middle; width: 0; height: 100%;.wrapper >.grid { display: inline-block; vertical-align: middle; Elementtiosien kuvien linkitys Kokeillessani ohjelmaa jossain muualla, huomasin siinä pienen vian, joka oli kohtalaisen helppo korjata. Olin linkittänyt elementtiosien kuvat seuraavalla tavalla. <img id="drag8" src="c:\users\nicholas\desktop\talosuunnittelu \Osa_8.gif" draggable="true" ondragstart="drag(event)" width="70px" height="70px"> Edellä mainitussa tavassa oli se ongelma, että jos kansion siirsi jollekin muulle koneelle, ei linkki pitänyt enää paikkansa. Tässä tapauksessa kuvaa ei siis löytynyt ja valikon ruudut jäivät tyhjiksi. Korjasin tilanteen sillä, että poistin src-tägin hapsujen sisältä tiedoston reitin ja jätin ainoastaan tiedoston nimen etsittäväksi. Tämän jälkeen kuvat löytyivät oikealla tavalla, vaikka web-sivua käytti eri tietokoneella ja koodikin näytti paljon siistimmältä, kuten alla olevassa esimerkissä näkyy. <img id="drag8" src="osa_8.gif" draggable="true" ondragstart="drag(event)" width="70px" height="70px">
26 22 4 YHTEENVETO 4.1 Lopputulos Lopputuloksena sain aikaiseksi verkkosivun, jossa pystyy suunnittelemaan pohjapiirustuksen varastorakennukselle. Suunnittelun jälkeen, käyttäjä pystyy lataamaan listan suunnitelmaan tarvittavista osista html-tiedoston muodossa. Mikäli html-tiedoston sisällön sijoittaa web-sivun koodin grid -osion tilalle, se luo oikean näköisen suunnitelman asiakkaan tekemästä suunnitelmasta. Tämän automaatio olisi suotavaa, mutta se jää opinnäytetyön ulkopuolelle. Lopputulos olisi ollut ainakin hieman kehittyneempi ja hiotumpi, mikäli olisin käyttänyt avoimen lähdekoodin kirjastoja. Näihin kuuluu esimerkiksi jquery ja Bootstrap. Jos olisin tutustunut näihin heti alussa, olisi lopputulos todennäköisesti ollut toisenlainen. Toisaalta nytkään opittu asia ei mennyt hukkaan JQuery Tutustuin jqueryyn tarkemmin vasta sen jälkeen, kun ei ollut enää järkevää lähteä käyttämään sitä web-ohjelmaa tehdessä. Minulla ei myöskään ollut lainkaan kokemusta jqueryn käytöstä, joten suljin sen vaihtoehtona pois tiedon ja osaamisen puutteen vuoksi. Jälkeenpäin ajateltuna jqueryn käyttäminen olisi ollut viisasta, sillä iso osa ominaisuuksista olisi voitu kopioida jquery-kirjastosta ja ominaisuuksista olisi täten tullut hiotumpia. JQueryä käyttämällä ohjelman kehitys olisi nopeutunut ja täten olisin saanut lisättyä siihen ominaisuuksia, joita jäi puuttumaan Bootstrap Bootstrap on asia, jota tutkin myös tarkemmin vasta myöhemmin. Työn loppuvaiheilla opettaja mainitsi minulle tästä, jolloin ajattelin kuitenkin tutustua siihen. Mikäli olisin aikaisemmin tutustunut aiheeseen, olisi ohjelmasta todennäköisesti tullut käyttäjäystävällisempi ja miellyttävämmän näköinen. 4.2 Arviointi Työn tekeminen sujui suhteellisen mutkattomasti, vaikka aika-arviot venyivät. Varsinkin suunnitteluvaiheessa, kun tutkin mahdollisia työkaluja ja toteutustapoja. Huomasin yhtäkkiä, että olen käyttänyt suuren määrän aikaa pelkästään suunnitteluun, vaikka itse toteuttamista ei ollut vielä
27 edes aloitettu. Pääsin kuitenkin tavoitteeseen suhteellisen hyvin, muutamaa ominaisuutta lukuun ottamatta. Isoin virhe ehdottomasti opinnäytetyön suorittamisessa oli avointen lähdekoodikirjastojen ja koodi-kehyksien käyttämättä jättäminen. Niiden käyttämättä jättäminen johtui siitä, että niistä ei ollut lainkaan aikaisempaa kokemusta tai opetusta. Tietämykseni niistä oli myös hyvin rajallista ennen työn aloittamista. Koodikirjastojen ja -kehysten käyttämättä jättämisestä huolimatta lopputuloksesta tuli toimiva prototyyppi, joka sisälsi tarvittavat ominaisuudet. Opin projektia tehdessä paljon uutta web-tekniikoista, varsinkin JavaScriptistä ja sen erilaisista käyttötavoista. Tämä oli myös ensimmäinen käyttöliittymäsuunnittelu projekti, jonka olen vienyt alusta loppuun asti yksin. Sain paljon kokemusta ja tietotaitoa web-käyttöliittymän suunnittelusta, sekä monista eri työkaluista joita sitä tehdessä kannattaa hyödyntää. 23
28 24 LÄHTEET Bootstrap (n.d.) Haettu osoitteesta Codepedia (n.d.) Haettu osoitteesta Dive Into HTML5, Mark Pilgrim (2009) Haettu osoitteesta Eloquent Javascript, Marjin Haverbeke (2014) Haettu osoitteesta HTML Canvas Deep Dive, Josh Marinacci (2012) Haettu osoitteesta HTML5: The Missing Manual, Matthew MacDonald (Joulukuu, 2013) Haettu osoitteesta hl=fi&sa=x&redir_esc=y#v=onepage&q=html5&f=false jquery (n.d.) Haettu osoitteesta jquery Fundamentals, Rebecca Murphey (2012) Haettu osoitteesta Speaking JavaScript, Axel Rauschmayer (Helmikuu, 2014) Haettu osoitteesta Stackoverflow (n.d.) Haettu osoitteesta
29 25 Stackoverflow (n.d.) Haettu osoitteesta Stackoverflow (n.d.) Haettu osoitteesta Stackoverflow (n.d.) Haettu osoitteesta Stackoverflow (n.d.) Haettu osoitteesta Stackoverflow (n.d.) Haettu osoitteesta Stackoverflow (n.d.) Haettu osoitteesta W3schools HTML5 (n.d.) Haettu osoitteesta W3schools JavaScript (n.d.) Haettu osoitteesta W3schools jquery (n.d.) Haettu osoitteesta What is Bootstrap and How Do I Use It?, Tania Rascia (Marraskuu, 2015) Haettu osoitteesta Wikipedia Bootstrap (n.d.) Haettu osoitteesta
30 26 Wikipedia CSS (n.d.) Haettu osoitteesta Wikipedia Front-end web development (n.d.) Haettu osoitteesta Wikipedia HTML (n.d.) Haettu osoitteesta Wikipedia HTML5 (n.d.) Haettu osoitteesta Wikipedia JavaScript (n.d.) Haettu osoitteesta
HTML & CSS. HTML (HyperText Markup Language) Antti Koivisto. ! HTML on sivujen kuvauskieli.
HTML & CSS Antti Koivisto HTML (HyperText Markup Language)! HTML on sivujen kuvauskieli.! Se ei ole ohjelmointikieli.! HTML on merkintäkieli, joka koostuu monista merkintä tägeistä ().! Voidaan
H T M L eli kuinka laadin itselleni päheät kotisivut. Janne Käki
H T M L eli kuinka laadin itselleni päheät kotisivut Janne Käki 13.9.2006 Mikä ihmeen HTML? HyperText Markup Language hypertekstiä eli toisiinsa linkitettyjä dokumentteja merkintäkieli, perustuu erilaisiin
Kylänetti projektin sivustojen käyttöohjeita Dokumentin versio 2.10 Historia : 1.0, 1.2, 1.6 Tero Liljamo / Deserthouse, päivitetty 25.8.
Kylänetti projektin sivustojen käyttöohjeita Dokumentin versio 2.10 Historia : 1.0, 1.2, 1.6 Tero Liljamo / Deserthouse, päivitetty 25.8.2012 Hakemisto 1. Sivustot internetissä... 2 2. Yleistä... 2 3.
H T M L eli kuinka laadin itselleni päheät kotisivut. Janne Käki 13.9.2006
H T M L eli kuinka laadin itselleni päheät kotisivut Janne Käki 13.9.2006 Mikä ihmeen HTML? HyperText Markup Language hypertekstiä eli toisiinsa linkitettyjä dokumentteja merkintäkieli, perustuu erilaisiin
Code Camp for Girls. Sanna Nygård. Lokakuussa 2015 www.frantic.com/codecamp/
Code Camp for Girls Sanna Nygård Lokakuussa 2015 www.frantic.com/codecamp/ HTML? HTML? HyperText Markup Language Ei ole nettisivua ilman HTML:ää Rakenteinen, hierarkkinen dokumentti Vain rakenne ja sisältö,
CSS - tyylit. 13.11.2000 Seppo Räsänen
CSS - tyylit 13.11.2000 Seppo Räsänen Sivu 2 1 CSS-tyylit Dynaaminen HTML tai DHTML on standardi, joiden käyttöä tukevat uusimmat Netscapen ja Microsoftin selaimet. DHTML:n ominaisuuksia ovat tyylitiedostot
Entiteetit erotetaan muusta tekstistä & ja puolipiste. esim. copyright-merkki näkyy sivulla
1 ENTITEETIT Tehtävä 1. Tietokoneet ja käyttöjärjestelmät käyttävät erilaisia merkkijärjestelmiä ja varsinkin Internetin alkutaipaleella aiheutti sen, että jotkut merkit eivät näkyneet kaikilla oikein.
Ulkoasun muokkaus CSS-tiedostossa
Ulkoasun muokkaus CSS-tiedostossa Nellin ulkoasun muokkaus CSS-tiedostossa Lähes kaikki on muokattavissa css-tyylitiedosta käsin. Jokaiselle kieliversiolle on oma tyylitiedostonsa: www_v_fin/metalib.css
Kuvat. 1. Selaimien tunnistamat kuvatyypit
Kuvat Kuvia voi liittää xhtml-sivulle -elementillä -elementillä -elementillä lomakkeiden yhteydessä lähinnä painikenappeja taustakuvina -elementin background-attribuutilla tai
valitsin on useimmiten html-elementti, jolle tyyli halutaan luoda
Valitsimista valitsin on useimmiten html-elementti, jolle tyyli halutaan luoda Muistin virkistykseksi elementtejä http://appro.mit.jyu.fi/doc/www/xhtml/ HTML-elementtien lisäksi valitsimille voidaan luoda
Jypelin käyttöohjeet» Ruutukentän luominen
Jypelin käyttöohjeet» Ruutukentän luominen Pelissä kentän (Level) voi luoda tekstitiedostoon "piirretyn" mallin mukaisesti. Tällöin puhutaan, että tehdään ns. ruutukenttä, sillä tekstitiedostossa jokainen
Verkkosivut perinteisesti. Tanja Välisalo 11.2.2009
Verkkosivut perinteisesti Tanja Välisalo 11.2.2009 WWW-sivujen vieminen omaan kotisivutilaan yliopiston mikroverkossa https://salasana.jyu.fi Klikkaa painiketta Activate WWW Klikkaa painiketta Activate
Uutiskirjesovelluksen käyttöohje
Uutiskirjesovelluksen käyttöohje Käyttäjätuki: Suomen Golfpiste Oy Esterinportti 1 00240 HELSINKI Puhelin: (09) 1566 8800 Fax: (09) 1566 8801 E-mail: gp@golfpiste.com 2 Sisällys Johdanto... 1 Päänavigointi...
CSS-kielen avulla määritellään HTML-dokumentin tyyli. CSS avulla voidaan tarkemmin määritellä eri elementtien ominaisuuksia.
CSS1 CSS (Cascading Style Sheets) CSS-kielen avulla määritellään HTML-dokumentin tyyli. CSS avulla voidaan tarkemmin määritellä eri elementtien ominaisuuksia. Esim.
Asiakas ja tavoite. Tekninen toteutus
Asiakas ja tavoite Heikieli on vuonna 2015 perustettu yhden hengen asiantuntijayritys, joka tarjoaa käännös- ja oikolukupalveluita englannista ja saksasta suomeksi. Freelance-kääntäjiä on Suomessa paljon,
Harjoitus Morphing. Ilmeiden luonti
LIITE 1 1(5) Harjoitus Morphing Harjoituksessa käsiteltävät asiat: Objektien kopioiminen Editoitavan polygonin muokkaaminen Morph-modifier käyttö ilmeiden luomiseen Lyhyen animaation luonti set key- toimintoa
http://www.microsoft.com/expression/
Verkkojulkaisuharjoitus1 TAVOITE Harjoituksen tarkoituksena on opiskella käyttämään verkkojulkaisueditoria (Microsoft Expression Web) ja käynnistämään verkkosivu internetissä. VERKKOSIVUEDITORIN KÄYTTÖOHJEITA
UpdateIT 2010: Editorin käyttöohje
UpdateIT 2010: Editorin käyttöohje Käyttäjätuki: Suomen Golfpiste Oy Esterinportti 1 00240 HELSINKI Puhelin: (09) 1566 8800 Fax: (09) 1566 8801 E-mail: gp@golfpiste.com Sisällys Editorin käyttöohje...
Lisätehtävät. Frantic 2015 sivu 1 www.frantic.com
Lisätehtävät Frantic 2015 sivu 1 www.frantic.com Fontit - Google fonts Fonttien käyttäminen verkossa ilman uusien fonttien lataamista on melko rajattua, sillä koskaan ei voi tietää mitä fontteja vastaanottajan
Editorin käyttö. TaikaTapahtumat -käyttöohje
Editorin käyttö TaikaTapahtumat -käyttöohje Yleistä ohjelmasta etaika-järjestelmän HTML-moduuli sisältää tekstieditorin, joka on monipuolinen apuväline tehtäessä materiaalia sivustolle (esim. tapahtumakohtaiset
Kotisivuohjeet. Eteläpohjalaiset Kylät ry. Sivupohjien rakenne
Kotisivuohjeet Tässä ohjeessa käydään läpi kotisivujen tekemisen perusteet keskittyen html-koodiin ja sen ominaisuuksiin. Sivupohjissa ulkoasu ja rakenne on pääasiassa jaettu erilliseen css-tyylitiedostoon,
Ohjeita kirjan tekemiseen
Suomen Sukututkimustoimisto on yhdessä Omakirjan kanssa tehnyt internetiin uuden Perhekirja-sivuston. Se löytyy osoitteesta: www.omakirja.fi -> Kirjat -> Perhekirja tai http://www.omakirja.fi/perhekirja?product=6
HTML ja CSS. Tästä se lähtee: portfolio-sivusto. Sivuston pääkansio, jonka sisällä on kaikki sivustoon kuuluvat alikansiot ja tiedostot.
HTML ja CSS Tästä se lähtee: portfolio-sivusto Sivuston pääkansio, jonka sisällä on kaikki sivustoon kuuluvat alikansiot ja tiedostot. index.html Sivuston pääsivu, joka avautuu selaimeen ensimmäisenä sivujen
VERKKOVELHO-YLLÄPITOTYÖKALUN KÄYTTÖOHJE
VERKKOVELHO-YLLÄPITOTYÖKALUN KÄYTTÖOHJE 1. SISÄÄN KIRJAUTUMINEN Sisään kirjautuminen VerkkoVelho-ylläpitotyökaluun tapahtuu yrityksesi osoitteessa www.omaosoitteesi.fi/yllapito, esim. www.verkkovelho.fi/yllapito.
Osaamispassin luominen Google Sites palveluun
n luominen Google Sites palveluun Mikä Osaamispassi on? Osaamispassi auttaa kertomaan taidoistasi, koulutuksestasi, työkokemuksestasi ja sinua kiinnostavista asioista työnantajalle kun haet työtä. Osaamispassi
Epooqin perusominaisuudet
Epooqin perusominaisuudet Huom! Epooqia käytettäessä on suositeltavaa käyttää Firefox -selainta. Chrome toimii myös, mutta eräissä asioissa, kuten äänittämisessä, voi esiintyä ongelmia. Internet Exploreria
TALLENNETAAN MUISTITIKULLE JA MUISTIKORTILLE
TALLENNETAAN MUISTITIKULLE JA MUISTIKORTILLE HERVANNAN KIRJASTON TIETOTORI Insinöörinkatu 38 33720 Tampere 040 800 7805 tietotori.hervanta@tampere.fi TALLENNETAAN MUISTIKULLE JA MUISTIKORTILLE 1 Muistitikun
NÄIN TEET VIDEO-MAILIN (v-mail)
1 NÄIN TEET VIDEO-MAILIN (v-mail) Kirjaudu iwowwe Back Officeen. HOME Klikkaa kotisivullasi (HOME) olevaa vihreää Video E-mail kuvaa Vastaava linkki Video Email on myös Video Tools - alasvetovalikossa
Sähköpostitilin käyttöönotto
Sähköpostitilin käyttöönotto Versio 1.0 Jarno Parkkinen jarno@atflow.fi Sivu 1 / 16 1 Johdanto... 2 2 Thunderbird ohjelman lataus ja asennus... 3 3 Sähköpostitilin lisääminen ja käyttöönotto... 4 3.2 Tietojen
OHJEET HOPSIN TEKEMISEEN KYVYT- PALVELUSSA:
Kyvyt.fi-ohjeita / MR 22.12.2011 1(21) OHJEET HOPSIN TEKEMISEEN KYVYT- PALVELUSSA: HOPS-RYHMÄÄN LIITTYMINEN, HOPS-POHJIEN KOPIOINTI, SIVUSTON TEKEMINEN JA HOPSIN MUOKKAAMINEN SISÄLLYS JAMK HOPS-RYHMÄÄN
Kyläsivujen InfoWeb-ohje
Kyläsivujen InfoWeb-ohje Kirjoita internet-selaimesi osoitekenttään kyläsivujen hallintaosoite; www.yla -savo.fi/admin Saavut seuraavalle sivulle, johon kirjoitat käyttäjätunnuksesi ja salasanasi: Paina
KESKUSTANUORTEN NETTISIVUT- OHJEITA PIIRIYLLÄPITÄJÄLLE 1. KIRJAUTUMINEN
KESKUSTANUORTEN NETTISIVUT- OHJEITA PIIRIYLLÄPITÄJÄLLE 1. KIRJAUTUMINEN -Mene osoitteeseen keskustanuoret.fi/user - Kirjoita saamasi käyttäjätunnus ja salasana - Klikkaa yllä olevaa piirisi logoa niin
Webmailin käyttöohje. Ohjeen sisältö. Sähköpostin peruskäyttö. Lomavastaajan asettaminen sähköpostiin. Sähköpostin salasanan vaihtaminen
Webmailin käyttöohje https://mail.webhotelli.net sekä https://webmail.netsor.fi Ohjeen sisältö Sähköpostin peruskäyttö Lukeminen Lähettäminen Vastaaminen ja välittäminen Liitetiedoston lisääminen Lomavastaajan
Kotisivujen teko. Jan Lindholm Kirkkonummen kansalaisopisto Syksy koodari.eu jsbin.com
Kotisivujen teko Jan Lindholm Kirkkonummen kansalaisopisto Syksy 2014 koodari.eu jsbin.com Käyttäjätunnus / Salasana aoppilas.01 / aoppilas#2013# aoppilas.02 / aoppilas#2013# aoppilas.03 / aoppilas#2013#
BlueJ ohjelman pitäisi löytyä Development valikon alta mikroluokkien koneista. Muissa koneissa BlueJ voi löytyä esim. omana ikonina työpöydältä
Pekka Ryhänen & Erkki Pesonen 2002 BlueJ:n käyttö Nämä ohjeet on tarkoitettu tkt-laitoksen mikroluokan koneilla tapahtuvaa käyttöä varten. Samat asiat pätevät myös muissa luokissa ja kotikäytössä, joskin
Google-dokumentit. Opetusteknologiakeskus Mediamylly
Google-dokumentit 1 2 3 Yleistä 1.1 Tilin luominen 4 1.2 Docs-päävalikkoon siirtyminen 7 Dokumentit-päävalikko 2.1 Kirjaudu Dokumentteihin 9 2.2 Lähetä tiedosto Google-dokumentteihin 11 2.3 Uuden asiakirjan
Kirjan toteutus BoD easybook -taittotyökalun avulla
Kirjan toteutus BoD easybook -taittotyökalun avulla Seuraavilla sivuilla esittelemme yksityiskohtaisesti, miten voit helposti ja nopeasti yhdistää kuvia ja tekstiä easybook -taittotyökalun avulla. Edellytykset
Pedacode Pikaopas. Web-sovelluksen luominen
Pedacode Pikaopas Web-sovelluksen luominen Pikaoppaan sisältö Pikaoppaassa kuvataan, miten Netbeans-työkalulla luodaan uusi yksinkertainen web-sovellus ja testataan sen toiminta. Opas kattaa kaiken aiheeseen
Ylläpitoalue - Etusivu
Crasmanager 5.2 Ylläpitoalue - Etusivu Sivut osiossa sisällön selaus ja perussivujen ylläpito. Tietokannat osiossa tietokantojen ylläpito. Tiedostot osiossa kuvien ja liitetiedostojen hallinta. Työkalut
WWW-ohjelmoinnin kokonaisuus. WWW-OHJELMOINTI 1 Merkkauskielet. Merkkauskielten idea. Merkkauskielet (markup languages) Merkkauskielten merkitys
WWW-OHJELMOINTI 1 WWW-ohjelmoinnin kokonaisuus SGML, XML, HTML WWW-selaimen sovellusohjelmointi WWW-palvelimen sovellusohjelmointi Eero Hyvönen Tietojenkäsittelytieteen laitos Helsingin yliopisto 26.10.2000
Verkkojulkaiseminen Minna Väisänen. HTML5-tehtävä
Verkkojulkaiseminen Minna Väisänen HTML5-tehtävä Kirjoita Dreamweaverissa oheisen nettisivun koodi. Lisää xx-kohtiin omat tietosi. Kuvan nimi on joki.jpg. Ensin tehdään sivusto ja sitten yksittäinen sivu.
HTML5 -elementit jatkuu
HTML5 -elementit jatkuu Harjoitus: xhtml.htm -> html5.htm Muuta tämä xhtml dokumentti HTML5:ksi: http://users.metropolia.fi/~norrm/s12/kalasu/xhtml.htm Validoi myös koodisi: http://validator.w3.org/ "Mallivastaus"
KÄYTTÖOHJE. Servia. S solutions
KÄYTTÖOHJE Servia S solutions Versio 1.0 Servia S solutions Servia Finland Oy PL 1188 (Microkatu 1) 70211 KUOPIO puh. (017) 441 2780 info@servia.fi www.servia.fi 2001 2004 Servia Finland Oy. Kaikki oikeudet
Mainoksen taittaminen Wordilla
Mainoksen taittaminen Wordilla Word soveltuu parhaiten standardimittaisten (A4 jne) word-tiedostojen (.docx) tai pdf-tiedostojen taittoon, mutta sillä pystyy tallentamaan pienellä kikkailulla myös kuvaformaattiin
2020 Fusion. What s New in Version 6? What s New in Version 6? 1 of Fusion
2020 Fusion What s New in Version 6? What s New in Version 6? 1 of 17 2020 Fusion Uusi 2020 Fusion 6 nopeuttaa ja helpottaa työskentelyäsi: Täysin uudistettu renderöinti Useiden tuotteiden muokkaus samalla
Salasanojen turvallinen tallentaminen KeePass ohjelmalla
Salasanojen turvallinen tallentaminen KeePass ohjelmalla KeePass on vapaasti saatavilla oleva, avoimen lähdekoodin ohjelma, jonka tarkoituksena on auttaa salasanojen hallinnassa. Tämä KeePass ohje on päivitetty
Avaa ohjelma ja tarvittaessa Tiedosto -> Uusi kilpailutiedosto
Condess ratamestariohjelman käyttö Aloitus ja alkumäärittelyt Avaa ohjelma ja tarvittaessa Tiedosto -> Uusi kilpailutiedosto Kun kysytään kilpailun nimeä, syötä kuvaava nimi. Samaa nimeä käytetään oletuksena
Kirjaudu sisään palveluun klikkaamalla Omat kartat -painiketta.
Kirjaudu sisään palveluun klikkaamalla Omat kartat -painiketta. Sisäänkirjauduttuasi näet palvelun etusivulla helppokäyttöisen hallintapaneelin. Vasemmassa reunassa on esillä viimeisimmät tehdyt muutokset
1. Lohkon korkeus ja leveys
Asemointi Asemointi on elementtien sijoittelua. Sisältö: height, width float - kelluva sisältö position Elina Ulpovaara 13.10.2009 1. Lohkon korkeus ja leveys Leveys - width Korkeus - height - mittayksiköt
Pedacode Pikaopas. Java-kehitysympäristön pystyttäminen
Pedacode Pikaopas Java-kehitysympäristön pystyttäminen Pikaoppaan sisältö Pikaoppaassa kuvataan, miten Windowstyöasemalle asennetaan Java-ohjelmoinnissa tarvittavat työkalut, minkälaisia konfigurointeja
Taulukot. 1. Taulukon rakenne: ICT01D Elina Ulpovaara
Taulukot Taulukoita käytetään XHTML:ssä taulukkomuotoisen tiedon esittämiseen esim. tilastot, hinnastot jne sivun ulkoasun muotoiluun eli taittoon - voidaan korvata CSS:n asemointia käyttäen ICT01D 28.11.2005
Tee html-sivu, jossa on yllä olevat kaksi taulukkoa.
TAULUKKO 1 Taulukoiden avulla voidaan informaatio esittää havainnollisesti esimerkiksi palstoitettuna. Lisäksi voidaan sijoittaa eri elementit haluttuihin paikkoihin (taulukkotaitto). Taulukko luodaan
Suvi Junes Tietohallinto / Opetusteknologiapalvelut 2012
Tiedostot Uudet ominaisuudet: - Ei Tiedostot-kohtaa alueen sisällä, vaan tiedostonvalitsin, jolla tiedostot tuodaan alueelle siihen kohtaan missä ne näytetään - Firefox-selaimella voi työpöydältä raahata
Sen jälkeen Microsoft Office ja sen alta löytyy ohjelmat. Ensin käynnistä-valikosta kaikki ohjelmat
Microsoft Office 2010 löytyy tietokoneen käynnistävalikosta aivan kuin kaikki muutkin tietokoneelle asennetut ohjelmat. Microsoft kansion sisältä löytyy toimisto-ohjelmistopakettiin kuuluvat eri ohjelmat,
PÄIVITÄ TIETOSI OPTIMASTA! KOOSTE
PÄIVITÄ TIETOSI OPTIMASTA! KOOSTE IT-palvelut / Hannele Rajaniemi optima-support@jyu.fi www.jyu.fi/itp/optima-ohjeet 2 Sisältö Mikä on koosteen idea? Miten saan kooste-työkalun käyttööni? Miten luon koosteen?
Matopeli C#:lla. Aram Abdulla Hassan. Ammattiopisto Tavastia. Opinnäytetyö
Matopeli C#:lla Aram Abdulla Hassan Ammattiopisto Tavastia Opinnäytetyö Syksy 2014 1 Sisällysluettelo 1. Johdanto... 3 2. Projektin aihe: Matopeli C#:lla... 3 3. Projektissa käytetyt menetelmät ja työkalut
1 (14) Ohje. Ohje. GTK-wiki. Geologian tutkimuskeskus, Verkkosivustopalvelut
1 (14) GTK-wiki 2 (14) Sisällysluettelo 1. Wikin ylläpito... 3 1.1. Wiki-artikkelin muokkaus... 3 1.2. Wiki-artikkelin lisääminen... 3 2. Wiki-toiminnot... 4 2.1. Ristiinlinkitys... 4 2.2. Tekstin muotoilu...
H5P-työkalut Moodlessa
H5P-työkalut Moodlessa 1. H5P-työkalujen käyttöönotto Moodlessa Tampereen yliopisto/tietohallinto 2017 Emma Hanhiniemi 1. Klikkaa Moodlen muokkausnäkymässä Lisää aktiviteetti tai aineisto -linkkiä. 2.
KUVANKÄSITTELY THE GIMP FOR WINDOWS OHJELMASSA
KUVANKÄSITTELY THE GIMP FOR WINDOWS OHJELMASSA Ohjeistuksessa käydään läpi kuvan koon ja kuvan kankaan koon muuntaminen esimerkin avulla. Ohjeistus on laadittu auttamaan kuvien muokkaamista kuvakommunikaatiota
OpenOffice.org Impress 3.1.0
OpenOffice.org Impress 3.1.0 Sisällysluettelo 1 Esityksen luominen...1 2 Dian rakenne...2 3 Dian lisääminen, poistaminen, siirtäminen ja kopioiminen...3 4 Diojen koon muuttaminen...3 5 Pohjatyylisivut...4
Sisältö. XML, XHTML ja CSS XML XML. XML:n ja HTML:n ero. XML kieliä XML XHTML CSS XSL. T Hypermediadokumentin laatiminen 2002
, XHTML ja CSS T-111.361 Hypermediadokumentin laatiminen 2002 XHTML CSS XSL Sisältö EXtensible Markup Language W3C Recommendation helmikuu 1998 SGML:n osajoukko Standard Generalized Markup Language Kevyempi
Yleistä. Suositukset. Rakenne
Yhdistysavaimen ulkoasuohjeistus Jyty-liiton yhdistyksille 27.5.2015 Yleistä Tämä on Jytyliiton yhdistyksille laadittu ohjeistus ulkoasun rakentamisesta Yhdistysavain-julkaisujärjestelmään. Tavoitteena
Harjoitus Bones ja Skin
LIITE 3 1(6) Harjoitus Bones ja Skin Harjoituksessa käsiteltävät asiat: Yksinkertaisen jalan luominen sylinteristä Luurangon luominen ja sen tekeminen toimivaksi raajaksi Luurangon yhdistäminen jalka-objektiin
6.1 Tekstialueiden valinta eli maalaaminen (tulee tehdä ennen jokaista muokkausta ym.)
6. Tekstin muokkaaminen 6.1 Tekstialueiden valinta eli maalaaminen (tulee tehdä ennen jokaista muokkausta ym.) Tekstin maalaaminen onnistuu vetämällä hiirellä haluamansa tekstialueen yli (eli osoita hiiren
JWT 2016 luento 11. to 21.4.2016 klo 14-15. Aulikki Hyrskykari. PinniB 1097. Aulikki Hyrskykari
JWT 2016 luento 11 to 21.4.2016 klo 14-15 Aulikki Hyrskykari PinniB 1097 1 Viime luennolla o AJAX ja JSON, harjoitustyön tehtävänanto, vierailuluento avoimesta datasta Tänään o APIt rajapinnoista yleisesti
ETAPPI ry JOOMLA 2.5 Mediapaja. Artikkeleiden hallinta ja julkaisu
ETAPPI ry JOOMLA 2.5 Artikkeleiden hallinta ja julkaisu ETAPPI ry JOOMLA 2.5 Sivu 1(16) Sisällysluettelo 1 Joomla! sivuston sisällöntuotanto... 2 2 Artikkeleiden julkaisu sivustolla... 4 3 Artikkelin julkaisemista
1 Yleistä Web-editorista... 3. 1.1 Web-editori -dokumentin luominen... 3. 2 Pikatoimintopainikkeet... 3. 2.1 Tallenna... 3
Web-editori 2 Optima Web-editori -ohje Sisällysluettelo 1 Yleistä Web-editorista... 3 1.1 Web-editori -dokumentin luominen... 3 2 Pikatoimintopainikkeet... 3 2.1 Tallenna... 3 2.2 Peru / Tee uudelleen...
Älä vielä sulje vanhoja
OneNote-muistioiden käyttöönotto TUNI OneDrivesta Sinun vanhan Office365-tilin OneDrive-kansioon tallennetut tiedostot menevät lukutilaan, kun tiedostojen kopiointi uuteen TUNI OneDrive -kansioon on tehty.
Alkuun HTML5 peliohjelmoinnissa
Paavo Räisänen Alkuun HTML5 peliohjelmoinnissa www.ohjelmoimaan.net Tätä opasta saa vapaasti kopioida ja levittää ei kaupallisissa tarkoituksissa. Sisällysluettelo 1: Alkusanat 2: Alkuun 3: Pelinäkymä
KUVAN TUOMINEN, MUOKKAAMINEN, KOON MUUTTAMINEN JA TALLENTAMINEN PAINTISSA
KUVAN TUOMINEN, MUOKKAAMINEN, KOON MUUTTAMINEN JA TALLENTAMINEN PAINTISSA SISÄLLYS 1. KUVAN TUOMINEN PAINTIIN...1 1.1. TALLENNETUN KUVAN HAKEMINEN...1 1.2. KUVAN KOPIOIMINEN JA LIITTÄMINEN...1 1.1. PRINT
Condes. Quick Start opas. Suunnistuksen ratamestariohjelmisto. Versio 7. Quick Start - opas Condes 7. olfellows www.olfellows.net 1.
Condes Suunnistuksen ratamestariohjelmisto Versio 7 Quick Start opas Yhteystiedot: olfellows Jouni Laaksonen Poijukuja 4 21120 RAISIO jouni.laaksonen@olfellows.net www.olfellows.net olfellows www.olfellows.net
XHTML - harjoitus. Tehtävä1: Tee xhtml tiedosto käyttäen notepad (muistio) ohjelmaa. Tiedoston tallennus notepad (muistio) ohjelmassa:
XHTML - harjoitus Tehtävä1: Tee xhtml tiedosto käyttäen notepad (muistio) ohjelmaa Tiedoston tallennus notepad (muistio) ohjelmassa: Jokaisen XHTML-dokumentin tulisi alkaa XML-määrittelyllä(engl.XML-prologue),
Cascading Style Sheets
Cascading Style Sheets CSS - Cascading Style Sheets tyylikuvauskieli suunniteltu HTML:ää varten 1996, oma syntaksi CSS1 (1996), CSS2 (1998), CSS Mobile Profile CSS3 (tuleva) selaintuki nykyään hyvä, mutta
Ammattijärjestäjä Aulasvuori Www-projektin kuvaus
Ammattijärjestäjä Aulasvuori Www-projektin kuvaus Minne Seppälä Avat 2014 Dokumentaatio 1 PROJEKTIN KUVAUS... 3 1.1 Projektin aloitus... 3 1.2 Aikataulu... 4 1.3 Kustannusarvio... 4 2 ULKOASU... 5 2.1
Pong-peli, vaihe Koordinaatistosta. Muilla kielillä: English Suomi. Tämä on Pong-pelin tutoriaalin osa 2/7. Tämän vaiheen aikana
Muilla kielillä: English Suomi Pong-peli, vaihe 2 Tämä on Pong-pelin tutoriaalin osa 2/7. Tämän vaiheen aikana Laitetaan pallo liikkeelle Tehdään kentälle reunat Vaihdetaan kentän taustaväri Zoomataan
GeoGebra-harjoituksia malu-opettajille
GeoGebra-harjoituksia malu-opettajille 1. Ohjelman kielen vaihtaminen Mikäli ohjelma ei syystä tai toisesta avaudu toivomallasi kielellä, voit vaihtaa ohjelman käyttöliittymän kielen seuraavasti: 2. Fonttikoon
LoCCaM Riistakamerasovellus. Dimag Ky dimag.fi
LoCCaM Riistakamerasovellus Dimag Ky janne.koski @ dimag.fi +358505907788 Sovelluksen toimintaperiaate Toimintaperiaate yksinkertaistettuna on seuraavanlainen Kamera ottaa kuvan tai videon jonka lähettää
Kerro kuvin 3:n uudet ominaisuudet
Verkkosivu: www.haltija.fi Puhelin: 09 612 2250 Sähköposti: asiakaspalvelu@haltija.fi Kerro kuvin 3:n uudet ominaisuudet Kerro kuvin 3 on kehitetty uudelleen perusteista lähtien. Kaikki, mikä oli mahdollista
ohjeita kirjautumiseen ja käyttöön
ohjeita kirjautumiseen ja käyttöön Kirjautumisesta Opiskelijat: kirjaudu aina tietokoneelle wilmatunnuksella etunimi.sukunimi@edu.ekami.fi + wilman salasana Opettajat: kirjaudu luokan opekoneelle @edu.ekami.fi
RockID-varastonhallintajärjestelmän käyttöohje. v. 1.0
RockID-varastonhallintajärjestelmän käyttöohje v. 1.0 Yleistä Rockstar lukijakäyttöliittymä Tuotteiden lukeminen lähtevään tilaukseen Tilaukseen kuulumattomat tuotteet Tuotteiden lukeminen tilauksesta
Pong-peli, vaihe Aliohjelman tekeminen. Muilla kielillä: English Suomi. Tämä on Pong-pelin tutoriaalin osa 3/7. Tämän vaiheen aikana
Muilla kielillä: English Suomi Pong-peli, vaihe 3 Tämä on Pong-pelin tutoriaalin osa 3/7. Tämän vaiheen aikana Jaetaan ohjelma pienempiin palasiin (aliohjelmiin) Lisätään peliin maila (jota ei voi vielä
FrontPage 2000 - Näkymät
FrontPage 2000 - Näkymät FrontPagessa on kuusi erilaista näkymää sivustoon. Sivunäkymä Tässä näkymässä luodaan sivut eli näkymä vastaa paljolti Wordin tekstinkäsittelyohjelman näkymää. Tässä on myös muokattava
CSS. Tekstin muotoilua
CSS Tekstin muotoilua Tekstin muotoilu Kirjasimen ominaisuudet font-family font initial inherit; font-style normal italic oblique initial inherit; font-variant normal small-caps initial inherit; font-weight
Taulukot. 2002 Päivi Vartiainen 1
Taulukot Taulukon lisääminen FrontPagessa tapahtuu samalla tavoin kuin Word tekstinkäsittelyohjelmassakin. Valitse vakiotyökaluriviltä Lisää taulukko painike. Kun olet napsauttanut painikkeen alas voit
Taulukot, taulukkoryhmät Sisällysluettelo
Excel 2013 Taulukot, taulukkoryhmät Sisällysluettelo TAULUKKORYHMÄT TAULUKOIDEN VÄLISET KAAVAT, FUNKTIOT YM.... 1 Taulukon lisääminen työkirjaan... 1 Taulukon (välilehden) poistaminen työkirjasta... 1
MOBISITE-TYÖKALUN SISÄLTÄMÄT TOIMINNOT
MOBISITE-TYÖKALU MobiSite on työkalu matkapuhelimeen soveltuvan mobiilisivuston rakentamiseen. AIMO-järjestelmän jatkuvasti päivittyvä päätelaitetunnistus tunnistaa useimmat puhelinmallit ja mukauttaa
Automaattitilausten hallinta. Automaattitilauksien uudistettu käsittely
Automaattitilausten hallinta Raportit Saat yhteenvedon voimassa olevista automaattitilauksista ja automaatti-ilmoituksista hakemistopuun Raportit-valikon alta. PDF-napista voit ladata koneellesi yhteenvedon
FOTONETTI BOOK CREATOR
F O T O N E T T I O Y FOTONETTI BOOK CREATOR 6 2012 Kemintie 6 95420 Tornio puhelin: 050-555 6500 pro/kirja: 050-555 6580 www.fotonetti.fi Ohjelman asentaminen 1 Hae ohjelma koneellesi osoitteesta http://www.fotonetti.fi/kuvakirjatilaa
Miten siirrän omat työni Office 365:stä Peda.nettiin sekä jaan sen siellä muille Eija Arvola
Miten siirrän omat työni Office 365:stä Peda.nettiin sekä jaan sen siellä muille Eija Arvola 16.12.2017 UUDEN SIVUN LUOMINEN OMAAN TILAAN Jos haluat tallentaa omia töitäsi Peda.nettiin, sinun pitää luoda
ASENNUS- JA KÄYTTÖOHJE
ASENNUS- JA KÄYTTÖOHJE YKSIKKÖHINTA SOPIMUKSEN TOTEUTUNEET MÄÄRÄT-SOVELLUS CMPRO5 VERSIO 2.8 PÄIVITETTY HEINÄKUU 2010 COPYRIGHT 2010 ARTEMIS FINLAND OY. ALL RIGHTS RESERVED. KÄYTTÖOHJE SIVU 2 (12) SISÄLLYSLUETTELO
KURRA HOCKEY RY Nettisivujen joukkueen ylläpito-ohje Piia Heiniö, 1/2018. Kurra Hockey Ry 1
KURRA HOCKEY RY Nettisivujen joukkueen ylläpito-ohje Piia Heiniö, 1/2018 Kurra Hockey Ry 1 Kirjautuminen ylläpitoon https://www.kurra.fi/jasen Kirjaudu sisään saamillasi tunnuksilla Kurra Hockey Ry 2 Päivitä
Evaluointidokumentti
Home Movie Archive Evaluointidokumentti Teknillinen korkeakoulu T-121.310 -opintojakson ryhmätyö Juha-Pekka Koivisto Janne Ojala Pasi Ranne 18.11.2003 Sisällys 1 Johdanto...1 2 Heuristinen arviointi...1
Suvi Junes Tietohallinto / Opetusteknologiapalvelut 2012
Aineistot Uudet ominaisuudet: - Ei Tiedostot-kohtaa alueen sisällä, vaan tiedostonvalitsin, jolla tiedostot tuodaan alueelle siihen kohtaan missä ne näytetään - Firefox-selaimella voi tiedostot siirtää
Digitaalisen median tekniikat css tyylimääritykset jatkuu
Digitaalisen median tekniikat css tyylimääritykset jatkuu 31.3.2004 Harri Laine 1 CSS fontit font-family: pilkulla eroteltu luettelo fonttinimiä, ensimmäistä listasta löytyvää fonttia käytetään fontit
ASCII-taidetta. Intro: Python
Python 1 ASCII-taidetta All Code Clubs must be registered. Registered clubs appear on the map at codeclubworld.org - if your club is not on the map then visit jumpto.cc/18cplpy to find out what to do.
Digitaalisen median tekniikat css tyylimääritykset jatkuu Harri Laine 1
Digitaalisen median tekniikat css tyylimääritykset jatkuu 31.3.2004 Harri Laine 1 CSS fontit font-family: pilkulla eroteltu luettelo fonttinimiä, ensimmäistä listasta löytyvää fonttia käytetään fontit
Transkribuksen pikaopas
Transkribuksen pikaopas Transkribus on alusta, jolla voi puhtaaksikirjoittaa haluamaansa aineistoa ja automaattisesti tunnistaa käsinkirjoitettua tekstiä. Sitä käyttääkseen täytyy rekisteröityä. Tässä
Hops-ohjaajan ohje Opiskelijan hopsit.
Hops-ohjaajan ohje Tässä ohjeessa kuvataan kaksi erilaista tapaa hakea tietyn opiskelijan lähettämä hops. Ensin ohjeistetaan miten toimitaan, jos hopsin ryhmätyökalu on käytössä, eli ohjaajalle on luotu
Järjestelmän kriittisimmille toiminnallisuuksille (listattu alla), toteutetaan 1
1. Testattavat asiat Järjestelmän kriittisimmille toiminnallisuuksille (listattu alla), toteutetaan 1 selainyhteensopivuustesti käyttäen Suomessa eniten käytössä olevia selaimia. Uuden keräyksen lisääminen