IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Afficher une image Géoportail par javascript


Sujet :

JavaScript

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2016
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2016
    Messages : 28
    Par défaut Afficher une image Géoportail par javascript
    Bonjour voila mon problème,

    Je dois récupérer une tuiles géoportail aléatoire puis l'afficher sur ma page web pour après la découper en 16 case et réaliser un "Jeu de Taquin" .

    Je réalise mon code ou j'arrive a générer une adresse aléatoire avec des position de la tuiles récupérer aléatoirement entre certaines valeur que je définis.
    J'arrive ensuite a faire une image à partir de ce liens mais en revanche je ne trouve pas le moyens pour afficher cette image et pouvoir après la découper

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
     var APIkey="in5wghdufn0gn8d7g0394dsg";
     //clé API obtenue sur le site geoportail après la création d'un compte et d'une demande de clé
     
    function randomInt(mini, maxi)
    {
    	var nb = mini + (maxi+1-mini)*Math.random();
    	return Math.floor(nb);  // return max nb
    }
    //Cette fonction permet de donner une entier aléatoire entre deux entiers donnés
     
     
     
     
    var rowbegin = randomInt(500,1000);
    //on cherche une tuile aléatoire (ligne et colonne) sur le service WMTS
    //du géoportail. Les bornes ont été trouvé grace à une requête GetFeatures 
    //que l'on à decouvert en cours de web avancé avec Thibaud Couppin
    var colbegin = randomInt(500,1000); 
     
     
    // niveau de zoom choisi subjectivement 
    var zoom =10;
     
     
    function generateURL(r,c)
    {
     
    var zoom = 10 ;
    	liens =  'http://wxs.ign.fr/'+'in5wghdufn0gn8d7g0394dsg'+'/geoportail/wmts?';
    	liens += 'service=WMTS';
    	liens += '&request=GetTile';
    	liens += '&version=1.0.0'
    	liens += '&layer=GEOGRAPHICALGRIDSYSTEMS.MAPS';
    	liens += '&style=normal';
    	liens += '&format=image/jpeg';
    	liens += '&TileMatrixSet=PM';
    	liens += '&TileMatrix='+zoom;
    	liens += '&TileRow='+row;
    	liens += '&TileCol='+col;
    	console.log(liens);
    	return liens;
     
    }
    // cette fonction permet de créer la requete vers le geoportail en utilisant les entiers aléatoires générés 
     
     
    URL =  generateURL(rowbegin,colbegin);
    //adresse crée pour recuperer l'image
    console.log(URL);
     
    // création de l'image à partir de l'url générer
    function creer_img(URL){
    var img = document.createElement("img");
    img.setAttribute("height", "256");
    img.setAttribute("width", "256");
    img.setAttribute("src", URL);
    //Les tuiles du service WMTS du geoportail sont toujours des images carrées de dimension 256 pixels
    return img
    }
     
    //on crée l'objet image liée à l'url générée précédement
    img1 = creer_img(URL);
    console.log(img1);
     
    window.onload = function() {		
     
    		var canvas = document.getElementById('canvas');	
    		var context = canvas.getContext("2d");
    		canvas.width=515;
    		canvas.height=515;
    		context.fillStyle = 'white';
    		context.fillRect(0, 0, 515, 515);
     
    		context.drawImage(img1, 0, 0);
    		console.log('okok');
    	}
    voici mon code javascript commenté

    et ma page html
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    <!DOCTYPE html> 
    <html lang="fr"> 
    	<head> 
    		<link rel="stylesheet" type="text/css" href="css.css" />
    		<meta charset="UTF-8" />
    		<title> Les jeu de taquin </title> 
    		<link rel="icon" type="image/png" href="logo.png" />
    		<script src="js.js" language="javascript" type="text/javascript"></script>
    		</head>
    		<body style="background:#DCDCDC">
    			<h1> <center> Jeu de Taquin </center></h1>    
             <body>
                <p>Amorçage d'un jeu de Taquin</p>
            <canvas id="canvas" >   </canvas>
                <!--creation de la balise canvas qui recevra tout le jeu de taquin demandé-->
    <html>

    je met en liens pour plus de facilité les fichiers.

    Merci d'avance pour votre aide qui me sera précieuse.
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. Réponses: 8
    Dernier message: 17/12/2007, 14h52
  2. [GD] comment afficher une image genérée par GD
    Par lochou dans le forum Bibliothèques et frameworks
    Réponses: 6
    Dernier message: 25/10/2006, 22h03
  3. Réponses: 5
    Dernier message: 13/04/2006, 22h54
  4. [MySQL] Comment afficher une image par défaut ?
    Par clicman dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 12/10/2005, 08h46
  5. Afficher une image sans passer par les textures
    Par Black_Daimond dans le forum DirectX
    Réponses: 3
    Dernier message: 09/05/2003, 19h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo