420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.

Slides:



Advertisements
Présentations similaires
Lundi 15 Décembre 2008 Aujourd'hui, les balises et.
Advertisements

Introduction aux Web Services Partie 1. Technologies XML
LE LANGAGE JAVASCRIPT LES FENETRES.
Calcul mental Calcul mental Année scolaire Classe de …
Qui a le nombre qui vient après 8 ?
1 Georgeta Bădău CRÉATION ET GESTION DUN BLOG AVEC LA PLATE-FORME LEWEBPEDAGOGIQUE.COM Séance no.4.
Transition image classique image numérique
ACTIVITES Les nombres entiers (2).
Les identités remarquables
1 Modèles. 2 Sauvegarder le code en cliquant sur editer html 4 zones avec scroll
Lecture de graphiques a. b. c. d. e. a. b. c. 1) 2)a. 2)b. 3)a. 3)b.
LES TRIANGLES 1. Définitions 2. Constructions 3. Propriétés.
Ecriture simplifiée d'une somme de relatifs
JOME, un Composant Logiciel pour le Télé-Enseignement des Mathématiques via le WEB, Compatible OpenMath et MathML Laurent DIRAT OVE / I3S-UNSA.
RETOUCHE DE PHOTOS ET PEINTURE AVEC LES STYLES DE CALQUE
Chapitre 2 Production électronique
Introduction aux Web Services Partie 1. Technologies HTML-XML
Cours 6 : Have fun Dominique Rossin. Ou suis-je ? Idée : On affiche un div On crée une carte centrée sur une latitude et une longitude. On définit un.
Faculté I&C, Claude Petitpierre, André Maurer 1 Héritage par prototype Héritage dattributs ou de méthodes Héritage de constructeurs.
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
RELATION COÛT-VOLUME-BÉNÉFICE
La haute tour sombre 3 Des actions
L ’aire du triangle. Type d ’activité : leçon illustrée Bruno DELACOTE.
SUJET D’ENTRAINEMENT n°3
Python Interfaces graphiques
Faculté I&C, Claude Petitpierre, André Maurer Les objets Introduction.
1 Guide de lenseignant-concepteur Vincent Riff 27 mai 2003.
NIKA_2012_v7 avec surdimentionnement optique antiparasite Vue de profil Enveloppe virtuelle anti diffractions parasite (aucun objet 300K ne doit se trouver.
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
SITES E-COMMERCE RESPONSIVE
Réponse fréquentielle de la FTBO H(p)
Rechercher :\\tera\tppharmaco$. AdrénalineNoradrénaline Dose ( g/kg) PA syst. (%) FC (%) Dose ( g/kg) PA syst. (%) FC (%) 0,010,1 0,
Projet Image en C++ Composition du trinôme : DUPONT Thomas MEHAULT Maxime NICOLAS Rémi L3 MI - Année
1. 2 PLAN DE LA PRÉSENTATION - SECTION 1 : Code HTML - SECTION 2.1. : CSS (Méthode 1) - SECTION 2.2. : CSS (Méthode 2) - SECTION 3 : JavaScript - SECTION.
Corrélation Principe fondamental d’une analyse de corrélation
Faculté I&C, Claude Petitpierre, André Maurer Scalable vector graphics SVG (documentation en français – voir menu.
Notre calendrier français MARS 2014
Géométrie analytique Relations entre deux droites Remarque:
Quelle heure est-il ??. THE TIME: OCLOCK IL EST HEURE IL EST + + HEURES etc.
14² 15² 16² 17² 18² 19² 20² 30² 40² 50² 60² 70² 80² 90² 10² 0² 1² 2² 3² 4² 5² 6² 7² 8² 9² 10² 11² 12² 13².
Formation Développeur Java Applet et interfaces graphiques avec AWT
Le CERCLE TRIGONOMÉTRIQUE
MODULE 8 Les fonctions SINUSOÏDALES
SVG: Scalable Vector Graphics
Résoudre une équation du 1er degré à une inconnue
Les Nombres! de 0 à 20.
Feuilles de styles CSS Syntaxe d'application d'un style à une balise HTML : Les différents types de style : Pourquoi utiliser un style ? Possibilité étendue.
Copyright 2011 – Les Chiffres Copyright 2011 –
P.A. MARQUES S.A.S Z.I. de la Moussière F DROUE Tél.: + 33 (0) Fax + 33 (0)
Construction et interprétation de graphiques
Exemples photofiltre.
Les polices communes Ceci est une phrase en Arial.
Le langage XHTML 420-S4W-GG Programmation Web Client
Création et présentation d’un tableau avec Word 2007
CALENDRIER-PLAYBOY 2020.
Faculté I&C, Claude Petitpierre, André Maurer Scalable vector graphics SVG (documentation en français – voir menu.
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
USAM BRIDGE H O W E L L -CLASSIQUE
9 paires séries de 3 étuis ( n° 1 à 27 )
Auteur : Frédéric Thériault 1. À quoi ça sert !?  Cascading Style Sheet  Modifier la page Web en ajoutant des styles aux balises  Modifier l’apparence.
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
Conception des pages Web avec
INF2005– Programmation web– A. Obaid HTML 5. INF2005– Programmation web– A. Obaid 2 HTML 5 Nouveau standard en développement basé sur HTML et XHTML Supporté.
INF2005– Programmation web– A. Obaid CCS 3. INF2005– Programmation web– A. Obaid 2 L'état d'implantation de CSS 3 Le standard de CSS 3 n'est pas très.
Javascript HTML5 - CANVAS
Transcription de la présentation:

420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1

Balise pour les dessins en JS Fonctionne par le même principe que paintComponent de Java. On parle cependant de context, au lieu de graphics 2 Application de dessins muro.deviantart.com

Les navigateurs qui supportent Mozilla firefox (3.6) Google Chrome Safari Opera IE 9 3

La base Votre navigateur ne supporte pas les canvas Et en JavaScript : var drawingCanvas = document.getElementById('space'); ctx = drawingCanvas.getContext('2d'); … ctx.fillRect(0,0,150,150); … 4

Dessiner un carré fillStyle = couleur/style fillRec (x, y, largeur, hauteur); strokeRect = seulement le contour. À utiliser avec strokeStyle. context.fillStyle = "rgb(255,0,0)"; context.fillRect(30, 30, 50, 50); 5

La transparence En utilisant fillStyle, on peut choisir un style de couleur ayant une transparence La valeur de la transparence est entre 0.0 et 1.0 context.fillStyle = "rgb(255,0,0)"; context.fillRect(30, 30, 50, 50); context.fillStyle = "rgba(0,100,100, 0.5)"; context.fillRect(60, 60, 50, 150); 6

Dessiner une ligne Exemple : ctx.beginPath(); ctx.lineWidth = 1; ctx.strokeStyle = "black"; // ou ex: rgb(0,0,0) ctx.moveTo(50,25); ctx.lineTo(300,250); ctx.closePath(); ctx.stroke(); 7

Dessiner un polygone Exemple : ctx.beginPath(); ctx.lineWidth = 2; ctx.strokeStyle = "rgb(200,0,0)"; ctx.fillStyle = "rgba(10,10,100, 0.3)"; ctx.moveTo(25,25); ctx.lineTo(150,105); ctx.lineTo(105,125); ctx.lineTo(25,105); ctx.closePath(); ctx.fill(); ctx.stroke(); 8

Dessiner un Cercle arc(x, y, rayon, angleDebut, angleFin, anti-horaire) ctx.beginPath(); ctx.arc(50,100,50,0, Math.PI*2, true); ctx.beginPath(); ctx.arc(50,30,20,0, Math.PI,true); ctx.fill(); ctx.beginPath(); ctx.arc(50,30,20,0, Math.PI/2,false); ctx.fill(); 9

Écrire du texte fillText(text, x, y); // Pour un effet dombre portée (optionnel): ctx.shadowOffsetX = 4; ctx.shadowOffsetY = 3; ctx.shadowBlur = 3; ctx.shadowColor = "rgba(0, 0, 0, 0.5)"; ctx.font = "24px Times New Roman"; ctx.fillStyle = "blue"; ctx.fillText("Hellow World", 5, 30); 10

Utiliser un dégradé (carré) Ctx.createLinearGradient(x1,y1,x2,y2) Imaginons une ligne x1,y1 = point de départ x2,y2 = point darrivé Le gradient se fait tout au long de cette ligne. Mais pour spécifier de quelle façon il faut faire le dégradé, on utilise colorStop addColorStop(%, couleur) 11

Utiliser un dégradé - carré (suite) var degrade = ctx.createLinearGradient(10,10,150,150); degrade.addColorStop(0.2,'rgb(255,100,200)'); degrade.addColorStop(0.8,'black'); ctx.fillStyle = degrade; ctx.fillRect(10, 10, 150, 150); 12

Utiliser un dégradé (radiant) createRadialGradient(x1,y1,r1,x2,y2,r2) Un peu comme le dégradé linéaire, mais permettant de faire un dégradé de style radiant Il est conseillé dutiliser une couleur complètement transparente pour la bordure extérieur du dégradé 13

Utiliser un dégradé – radiant (suite) var degrade = ctx.createRadialGradient(45,45,10,52,50,30); degrade.addColorStop(0, '#A7D30C'); degrade.addColorStop(0.9, '#019F62'); degrade.addColorStop(1, 'rgba(1,159,98,0)'); // couleur transparente ctx.fillStyle = degrade; ctx.fillRect(0,0,150,150); 14

Insérer une image Pour insérer une image, il faut dabord la charger en mémoire. Lorsquelle est chargée, alors on peut lafficher. ctx.drawImage(imgVar, x1,y1, largeur, hauteur) var monImage = new Image(); monImage.onload = function () { afficherImage(); } monImage.src = "voiture.png"; function afficherImage() { ctx.drawImage(monImage, 0, 0, 160, 75); } 15

Manipulation du contexte Comme il est possible de faire des transformations au contexte (rotation, translation), il peut savérer utile de sauvegarder son état à certains moments. ctx.save() Sauvegarde létat actuel du contexte ctx.restore() Remet le contexte à létat de la dernière sauvegarde. 16

Les transformations (translation) translate(x, y) ctx.translate(60, 60); ctx.fillStyle = "rgba(0,100,100, 0.5)"; ctx.fillRect(0, 0, 50, 50); 17

Les transformations (rotation) Rotate(angle) Pour le paramètre angle, utiliser cela : Ctx.rotate(x * Math.PI/180) Où X est langle voulu ctx.translate(60, 60); ctx.rotate(45 * Math.PI / 180); ctx.fillStyle = "rgba(0,100,100, 0.5)"; ctx.fillRect(0, 0, 50, 50); 18

Vider/Effacer un canvas ctx.clearRect(x, y, width, height) Ceci permet deffacer le canvas (ou une partie du canvas) 19