Roc Zadkine. Javascript SpaceGame. Door: K.Bakker versie 2.0

Vergelijkbare documenten
Roc Zadkine. Javascript Car. Door: K.Bakker versie 1.0

HTML Graphics. Hans Roeyen V 3.0

Roc Zadkine. Javascript animatie en bewegingen. Door: K.Bakker versie 2.0

Web building gevorderden: CSS & JavaScript. Karel Nijs 2008/11

oefeningen opstellen met GeoGebra en javascript

Les 9: formulier controle met javascript.

Javascript oefenblad 1

Voordelen: Nadelen: Benodigdheden: Programma s: Google Web Designer. Photoshop. Sublime (HTML-editor) Websites: Tinypng.com

Programmeren en Wetenschappelijk Rekenen in Python. Wi1205AE I.A.M. Goddijn, Faculteit EWI 8 mei 2014

X. Grafische elementen

Handleiding Woonz.nl iframe

Hand-out Introduction to Programming, werkcollege 7 Alex Reuneker 2013

Opgave Tussentijdse Oefeningen Jaarproject I Reeks 4: Lcd Interface & Files

size( 800, 500 ); Canvas = tekenblad 'size' is een woord dat processing herkent om de grootte van het canvas (tekenblad) in te stellen

Omschrijf bij ieder onderdeel van de methode de betekenis ervan. Java kent twee groepen van klassen die een GUI kunnen maken: awt en swing.

A Inloggen. B - Wachtwoord Veranderen

HOOfDsTuk 1 Objecten en klassen

FFO Webdesign 1e jaar theorietoets NL niveau4... Totaal aantal vragen: 40

Kris Merckx Javascript Programming - DIVARC - trigonometry en wrapping/warping text

Interactief blok 2 code opdracht 6 - wireframe

Websitecursus deel 3 JavaScript

Gegevens uit een database tonen

GoogleMapsGoogleMapsGoogleMaps GoogleMapsGoogleMapsGoogleMaps GoogleMapsGoogleMapsGoogleMaps

1. Klik in de menubalk op Bestand/Nieuw. In het nieuwe venster kies je voor: Klik op OK en een nieuw plaatje verschijnt.

8 Word Art Teksten. De documentatie van deze API is te lezen in Bijlage P: WordArt Documentatie.

Cascading Style Sheets

Views, de finesse. Voorbereiding. Inhoudstypes

Graphics. Small Basic graphics 1/6

Pagina-inhoud maken. Voor het plaatsen van een afbeelding in een pagina wordt gebruik gemaakt van het <img>-tag.

De frameset uit de afbeelding wordt op de volgende manier gedefinieerd:

JavaScript. 0 - Wat is JavaScript? JavaScript toevoegen

OEFENINGEN PYTHON REEKS 4

Titel: flashvars.html

Agenda. Wat is HTML? Meer over HTML... Waarom HTML leren? Aniel Bhulai. Inleiding Computergebruik - HTML 1. Waarin maak je een HTML-bestand?

Gebruikershandleiding voor: Beperkte Password protectie met JavaScript

API geolocation. Ying-Hing Lam Tjebbe Marchand DP31T

Kris Merckx - 16/10/ Agnes.js - creative commons license

Informatica: C# WPO 4

Handmatig Onderzoekmelding invoeren Archis III

Exercise assistant on-line

Een imagemap of klikkaart is een standaard afbeelding (jpg, gif of png) waarop bepaalde zones aanklikbaar worden gemaakt.

Een verticale vormgeving is makkelijker en sneller te realiseren dan een horizontale.

Externe pagina s integreren in InSite en OutSite

Foutcontrole met Javascript

Hier komt alle informatie over je webpagina, welke niet zichtbaar is op de webpagina zelf.

AutoTrack.nl. Handleiding Implementatie Voorraadlijst

INHOUDSOPGAVE. Over de auteur, de illustrator en de technische redacteuren 13

AJAX (XMLHttpRequest)

Inleiding Conversies bijhouden

JavaLogo-programma s op het web plaatsen

Wiskunde D met Fontys en de TU/e

A Inloggen. B - Wachtwoord Veranderen

Lab Webdesign: Javascript 11 februari 2008

Inhoud. Pagina 2 van 13

WELKOM BIJ UNICODING PROCESSING. Unicoding 1. Handleiding docent LES 1 DEEL A: Vormen, coördinaten en kleuren

Hoe maak je Vintage Vector Kroonkurken in Illustrator en AD door Joshua Bader

Jarno Verhoogt 21 mei 2014 Stud. Nr Docent: Joost Faber. Deeltoets 2: Hoe maak je met javascript een eenvoudige slideshow?

Versie 0.2. Documentatie Onsweb Club plugin voor NHV verenigingen. Laatste wijziging: 10 mei 2013 Auteurs: Marien Dongstra, Sebastian Huisman

HTML. Media. Hans Roeyen V 3.0

Start GameMaker en open een nieuw spel (menu: Zorg ervoor dat GameMaker in Advanced Mode

LearnOSM. Onderzoek met behulp van veldformulieren. Overzicht van veldformulieren

Hosting. Bestelformulier en domeinnaamcontrole. Januari, WeFact B.V. Kuiper 7a 5521 DG Eersel Nederland. w: e:

Een ASP.NET applicatie opzetten. Beginsituatie:

Gebruik maken van een Geopunt-mini-kaart v3.1

HANDLEIDING CMS. Blackbrick.nl. Datum Oktober Versie Online-Marketingmachine, Marco Bouman en Maico de Jong

Basis-theme. Manage Wiki > Look and Feel > Themes > Change or make a new theme > Make a New Theme >

Documentatie. InstantModules Q42. Versie 1.1

formulieren met gedragingen en

Interactieve formulieren met gedragingen en Spry

Info-books. Toegepaste Informatica. Deel 35: XML - XSL HO35. Jos Gils Erik Goossens

Inhoud leereenheid 7c. JavaScript: Objecten en functies. Introductie 59. Leerkern 60. Samenvatting 82. Opdrachten 83. Zelftoets 89.

Technisch Ontwerp W e b s i t e W O S I

DOBBELSTEEN 2.0. Stap-voor-stap instructie

MODULE 2: Onderzoek 3. Cirkels Ontdekken

WEBSITE-DESIGN CHRIS VERMAAS & FJODOR VAN SLOOTEN B

Onderwater teksteffect

Mailgroep photoshop. Copyright. Mixed Media portret.

Module 2: Wat is Scratch?

Opdracht ICT: Handleiding: Tekenen in Word

Objectgeoriënteerd Programmeren: WPO 4B

Websitecursus deel 1 HTML

Nodig : Afbeelding frost ; sparkle penselen ; golden particles verloop ; red particles verloop ; laagstijl hangers ; laagstijl pins ; lettertype

WISKUNDE 3 PERIODEN EUROPEES BACCALAUREAAT DATUM : 8 juni 2006 ( s morgens) DUUR VAN HET EXAMEN : 3 uur (180 minuten) TOEGESTANE HULPMIDDELEN :

Poolcoördinaten (kort)

Versie 0.4. Documentatie Onsweb Club plugin voor KNKV verenigingen. Laatste wijziging: 19 juli 2012 Auteurs: Marien Dongstra, Sebastian Huisman

Programmeren in MyShop

Interactie: Document Object Model en JavaScript. Hoorcollege Webdesign 7 23 mei 2014 Christof van Nimwegen

Module Programmeren in Javascript

N&O: Objectgericht Programmeren. (in Python)

Lab Webdesign: Javascript 25 februari 2008

Handleiding opmaken Wageningen UR Blog. Maart 2016

Cluster 1 Realiseert. 4 Beschrijving van de beroepssituatie behorende bij deze leereenheid

Project Embedded Linux Domaza. Elektronica-ICT. Dimitri Kozakiewiez Jonas Govaerts. Academiejaar

Hoe maak je een tram in Adobe Illustrator AD en DRAW door Hector Heredia6

Je hoeft je maar met twee bestanden bezig te houden:

Beschrijvings SW gebruikers handleiding (V1.1) Voor Apple Macintosh computers Voor Macintosh Computer

Informatietechnologie 2. JavaScript. Functies, Objecten en toegang tot de DOM. Kristof Michiels

Digitale vormgeving Wordpress deel 1

Transcriptie:

Roc Zadkine Javascript SpaceGame Door: K.Bakker versie 2.0

juni 2016 distributielijst versie historie versie datum auteur Opmerkingen 1.0 2-2-2016 k.bakker 1.0 2-2-2016 k.bakker

inhoudsopgave 1. Game in HTML5 en JavaScript. 3 1.1 Canvas code 4 2. Canvas code bespreking 7 2.1 Body code 7 2.2 Script code 7 2.3 canvasspacegame functie 8 2.4 stars functie 8 2.5 UFO 8

1. Game in HTML5 en JavaScript. Met het gebruik van HTML5 en JavaScript wordt een eenvoudige sterrenachtergrond opgebouwd en een vliegend voorwerp dat als sterrenschip dient. De achtergrond wordt gevormd door een achtergrond van sterren die feitelijk gemaakt worden met de grafisch mogelijkheden van CANVAS. Dit zijn de geometrische basisvormen. Daarnaast wordt het sterrenschip gevormd door een object dat zich over de achtergrond beweegt. Het sterrenschip is de voorstelling van een UFO. Om het spel mogelijk te maken worden de volgende zaken uitgevoerd; Toevoegen van een canvas element aan een wegpagina Een zwarte achtergrond aanmaken Tekenen van sterren op de achtergrond. Toevoegen van de UFO als apart object voor de zwaarte achtergrond. Aan het einde van deze oefening worden nog wat tips gegeven om het spel aan te passen.

1.1 Canvas code <!DOCTYPE html> <html> <head> <script type="text/javascript"> // Deze functie wordt geladen tijdens de zgn page-load function canvasspacegame() { // Vind het canvas element canvas = document.getelementbyid("mycanvas"); // getcontext om de context te vatten if (canvas.getcontext) // Maak een canvas user interface element. { // Specificeer altijd 2d of 3d ctx = canvas.getcontext("2d"); // achtergrondkleur is zwart // de geometrische primitieven worden gebruikt als rechthoek // en vulkleur maar dan op het canvas-element ctx.fillstyle = "black"; ctx.rect(0, 0, 300, 300); ctx.fill(); // Teken de sterren op de achtergrond, functie stars() stars(); // Teken het ruimte schip, functie UFO() UFO();

function stars() { // Teken 50 sterren. for (i = 0; i <= 50; i++) { // Willekeurige posities voor de sterren in coordinaten x en y. // De wiskundige functies worden gebruikt én de grenswaarden // 300 worden aangehouden var x = Math.floor(Math.random() * 299); var y = Math.floor(Math.random() * 299); // Sterren kleuren wit ctx.fillstyle = "white"; // Ruimte rondom de UFO startpositie. Grootte 30x30 if (x < 30 y < 30) ctx.fillstyle = "black"; // teken een ster door een cirkel te tekenen ctx.beginpath(); ctx.arc(x, y, 3, 0, Math.PI * 2, true); ctx.closepath(); ctx.fill();

function UFO() { // Teken de UFO ctx.beginpath(); ctx.moveto(28.4, 16.9); ctx.beziercurveto(28.4, 19.7, 22.9, 22.0, 16.0, 22.0); ctx.beziercurveto(9.1, 22.0, 3.6, 19.7, 3.6, 16.9); ctx.beziercurveto(3.6, 14.1, 9.1, 11.8, 16.0, 11.8); ctx.beziercurveto(22.9, 11.8, 28.4, 14.1, 28.4, 16.9); ctx.closepath(); ctx.fillstyle = "rgb(222, 103, 0)"; ctx.fill(); // Teken UFO top. ctx.beginpath(); ctx.moveto(22.3, 12.0); ctx.beziercurveto(22.3, 13.3, 19.4, 14.3, 15.9, 14.3); ctx.beziercurveto(12.4, 14.3, 9.6, 13.3, 9.6, 12.0); ctx.beziercurveto(9.6, 10.8, 12.4, 9.7, 15.9, 9.7); ctx.beziercurveto(19.4, 9.7, 22.3, 10.8, 22.3, 12.0); ctx.closepath(); ctx.fillstyle = "rgb(51, 190, 0)"; ctx.fill(); </script> </head> <body onload="canvasspacegame()"> <! start het spel tijdens laden--> <h1> Canvas Space Game </h1> <canvas id="mycanvas" width="300" height="300"> </canvas> </body> </html>

2. Canvas code bespreking De code begint met een openingstags <!doctype html> waarmee feitelijk een HTML5 document geopend wordt. In de header wordt het javascript programma geplaatst met de tag <script type="text/javascript"> Het gehele spel bestaat uit 2 delen: Body code Script code 2.1 Body code In de body wordt een onload() functie gebruikt om het script canvasspacegame onmiddellijk op te starten.. Het canvas element is onderdeel van de HTML code. De afmetingen van het canvas element is bepaald in het ID attribuut. Dit ID atribuut is belangrijk om weer te gebruiken voor verdere bewerking. 2.2 Script code In de java script sectie worden 3 functies gemaakt; canvasspacegame, stars, and UFO. De functie canvasspacegame wordt aangeroepen als de pagina geladen wordt. Deze functie is dus de hoofdfunctie. De andere 2 functies (stars en UFO) worden aangeroepen vanuit de functie canvasspacegame.

2.3 canvasspacegame functie Deze functie wordt automatisch aangeroepen. Het zoekt eerst het canvas element in de de BODY van de HTML pagina. Het canvas element wordt gevonden door het ID. Daarna wordt de context ( inhoud) geladen van dit element om deze context te bewerken in 2D. Daarvoor worden de methoden gebruikt fillstyle, rect en fill. 2.4 stars functie Deze functie wordt aangeroepen vanuit de functie canvasspacegame. In een iteratieve loop wordt 50 maal een figuur getekend op willekeurige posities. De posities worden getekend op x en y coördinaten bepaald vanuit de linker bovenhoek. Daarnaast wordt een vlakje overgelaten voor de UFO op 30 x 30. De grafische primitieven fillstyle en arc worden gebruikt. Let op dat bij arc een volgorde aangehouden moet worden. beginpath(); arc(x, y, 3, 0, Math.PI * 2, true); closepath(); fill(); x en y Math.PI x 2 : zijn willekeurige coördinaten op het sterrenveld. : staat voor 2 π radiaal Documentatie: CanvasRenderingContext2D.arc(x, y, radius, startangle, endangle, anticlockwise); 2.5 UFO Deze functie wordt aangeroepen door de functie canvasspacegame. Hierbij wordt het sterrenschip getekend met de methode beziercurveto op het Canvas2D object. Documentatie: CanvasRenderingContext2D.bezierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y);