begin process at 2012 02 05 22:25:57
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Divers

 > DIRECTION DE LA MECQUE AVEC GOOGLE MAP

DIRECTION DE LA MECQUE AVEC GOOGLE MAP


 Information sur la source

Note :
9 / 10 - par 2 personnes
9,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Divers Classé sous :direction, mecque, qibla, boussole, quibla Niveau :Initié Date de création :11/03/2009 Date de mise à jour :10/06/2010 09:50:05 Vu / téléchargé :92 479 / 914

Auteur : amrounix

Ecrire un message privé
Site perso
Commentaire sur cette source (20)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
ce programme permet d'avoir la direction de la Qibla (la Mecque) n'importe où dans la monde sans utiliser de boussole grâce à l'API Google MAP

dernière version sur mon site :
http://www.crew.free.fr/?dayMD5=islam

Source

  • <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  • "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  • <html xmlns="http://www.w3.org/1999/xhtml">
  • <head>
  • <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
  • <title>Direction de la Qibla</title>
  • <script src="http://maps.google.com/maps?file=api&amp;v=2&amp;key=ABQIAAAAVkfCvwgjflEc0QKyOi8SiBQvNNpTpilDwpBuhZ-TgjbdrxD1BRTAS5X33atUuxfvf9nT5HsYq5eLMw"
  • type="text/javascript"></script>
  • <script language="JavaScript" src="http://j.maxmind.com/app/geoip.js"></script>
  • <script type="text/javascript">
  • //<![CDATA[
  • var map;
  • var geocoder;
  • var gpoint;
  • var qibla;
  • var myEvent;
  • var myEvent2;
  • var pi_=3.1415926535897932384626433832795;
  • //initialisation de Google MAP
  • function load() {
  • if (GBrowserIsCompatible()) {
  • map = new GMap2(document.getElementById("map"));
  • //enlever le comm pour modifier le type visualisation
  • //map.setMapType(G_HYBRID_MAP);
  • try
  • {
  • //détection de votre position grace à la geolocalisation de votre IP (utilisation d'une API exterieur)
  • var point = new GLatLng(parseFloat(geoip_latitude()) , parseFloat(geoip_longitude()));
  • }
  • catch(e)
  • {
  • //alert('geoip HS');
  • //j'ai initialiser avec des valeur par défaut car la geolocalisation ne fonctionne pas tout le temps
  • var point = new GLatLng(48.873818, 2.29498386);
  • }
  • //coordonnée en dur de la position de la mecque
  • qibla = new GLatLng(21.4225, 39.826111);
  • //param zoom + position
  • map.setCenter(point, 13);
  • //param des boutons de controle
  • //http://code.google.com/intl/fr-BE/apis/maps/documentation/controls.html
  • map.addControl(new GMapTypeControl());
  • map.addControl(new GOverviewMapControl());
  • map.addControl(new GScaleControl());
  • map.addControl(new GLargeMapControl());
  • geocoder = new GClientGeocoder();
  • //fonction qui trace une ligne
  • traceLigneQibla('',point);
  • //active les interactions avec les evenements
  • //http://code.google.com/intl/fr-BE/apis/maps/documentation/events.html
  • //si on bouge la carte, execute la fonction bouger
  • myEvent=GEvent.addListener(map, 'moveend', bouger);
  • //si on clic la carte, execute la fonction clicMoi
  • myEvent2=GEvent.addListener(map, 'click', clicMoi);
  • //different test
  • //map.addControl(new GSmallMapControl(), new GControlPosition(G_ANCHOR_TOP_RIGHT,new GSize(-60,0)));
  • //map.addControl(new GMapTypeControl(), new GControlPosition(G_ANCHOR_TOP_RIGHT,new GSize(60,-10)));
  • //map.enableContinuousZoom();
  • //map.addControl(new GOverviewMapControl(), new GControlPosition(G_ANCHOR_BOTTOM_RIGHT,new GSize(20,0)));
  • }
  • }
  • function unload(){
  • GUnload();
  • }
  • function clicMoi(pmarker, point){
  • try{
  • gpoint=point;
  • map.clearOverlays();
  • //centre la carte , sur le point cliqué
  • map.setCenter(gpoint);
  • marker = new GMarker(gpoint);
  • map.addOverlay(marker);
  • setTimeout("traceLigneQibla('',gpoint)",100);
  • } catch (e){
  • //alert('vous avez cliqué sur un marqueur :');
  • //getProp(pmarker);
  • }
  • }
  • function bouger(){
  • map.clearOverlays();
  • //récupère les coordonnées du centre de la carte
  • gpoint = map.getCenter();
  • marker = new GMarker(gpoint);
  • map.addOverlay(marker);
  • setTimeout("traceLigneQibla('',gpoint)",100);
  • // viewInfo(gpoint);
  • }
  • //trace une droite entre le point de localisation et la mecque
  • function traceLigneQibla(adresse,point){
  • map.clearOverlays();
  • //map.setCenter(point);
  • //place un marqueur à l'emplacement
  • marker = new GMarker(point);
  • map.addOverlay(marker);
  • //affiche les infos sur la distances
  • if (adresse!='')
  • {
  • //debug de la propriete point pr avoir toutes ses fonctions
  • //getProp(point);
  • marker.openInfoWindowHtml("<font style='font-family:Tahoma;font-size:12px'>"+adresse+"</font>");
  • }
  • //trace la ligne geodesique entre les 2 points du globe
  • var polyOptions = {geodesic:true};
  • var polyline = new GPolyline([ point, qibla ], "#00ff00", 3, 1, polyOptions);
  • map.addOverlay(polyline);
  • viewInfo(point);
  • }
  • //retourne les proprietes d'un objet
  • function getProp(x)
  • {
  • for (e in x)
  • htm+=e+":"+x[e]+"\n";
  • alert(htm);
  • }
  • function viewInfo(point)
  • {
  • htm="<b>Latitude:</b>"+point.lat()+"<br/>";
  • htm+="<b>Longitude:</b>"+point.lng()+"<br/>";
  • htm+="<b>distance:</b>"+parseInt(point.distanceFrom(qibla),10)/1000+" km<br/>";
  • htm+="<b>angle:</b>"+deltaAngle(point,qibla) +"&deg;N<br/>";
  • //affiche les coordonnées en temps réel
  • document.getElementById("infoMap").innerHTML=htm;
  • }
  • function deg2rad(angle)
  • {return (angle*Math.PI/180);}
  • function rad2deg(angle)
  • {return (angle*180/Math.PI);}
  • //retourne l'angle entre 2 points du globe selon la formule :
  • //Angle = arctan( sin(lon_B-lon_A) / (cos(lat_A) * tan(lat_B) - sin(lat_A) * cos(lon_B - lon_A)))
  • function deltaAngle(pta,ptb)
  • {
  • rlng= deg2rad(ptb.lng()- pta.lng());
  • //angle = rad2deg(Math.atan(Math.sin(rlng)/(Math.cos(deg2rad(pta.lat()))* Math.tan( deg2rad(ptb.lat()))- Math.sin(deg2rad(pta.lat()))* Math.cos(rlng))));
  • //bcp mieux !
  • angle = rad2deg(Math.atan2(Math.sin(rlng), Math.cos(deg2rad(pta.lat()))* Math.tan( deg2rad(ptb.lat()))- Math.sin(deg2rad(pta.lat()))* Math.cos(rlng)));
  • if (angle<0)
  • angle += 360;
  • //arrondi à 2 chiffres :
  • angle=parseInt(angle*100,10)/100;
  • return angle;
  • }
  • //lance la recherche
  • function rechercher(){
  • //supprime le controle sur l'evenement pour eviter le lancement de la fonction bouger
  • GEvent.removeListener(myEvent);
  • geocoder.getLocations(document.getElementById("adresse").value, recupadresse);
  • }
  • //convertie une adresse en coordonnée
  • function recupadresse(response){
  • map.clearOverlays();
  • if (!response || response.Status.code != 200) {
  • alert("impossible de localiser cette adresse !");
  • } else {
  • emplacement = response.Placemark[0];
  • //alert(emplacement.Point.coordinates[1]+' - '+emplacement.Point.coordinates[0]);
  • point = new GLatLng(emplacement.Point.coordinates[1],emplacement.Point.coordinates[0]);
  • htm="";
  • traceLigneQibla(emplacement.address,point);
  • }
  • //reaffecte le controle sur l'evenement car il est supprimer pendant la recherche
  • myEvent=GEvent.addListener(map, 'moveend', bouger);
  • }
  • //]]>
  • </script>
  • <body onload="try{load();}catch(e){}" onunload="try{unload();}catch(e){}">
  • <br/>Direction de la Qibla avec Google MAP<br/>
  • &nbsp;&nbsp;Entrez une adresse ou un lieu :&nbsp;<input type="text" id="adresse" value="" style="width:300px;">&nbsp;&nbsp;<input type="button" value="recherche" onclick="rechercher()"><br><br>
  • <table>
  • <tr><td>
  • <div id="map" style="width:600px;height:350px"></div>
  • </td><td><div id="infoMap"></div></td></tr></table>
  • <br/><br/><br/><br/>
  • <center>
  • <div style="font-family:Tahoma;font-size:9px">derni&egrave;re mise &agrave; jour sur mon site : <a href="http://www.crew.free.fr">http://www.crew.free.fr</a><br>powered by <b>AmRouNiX</b> / <b>MaSTeR-KiLLeR</b> (<i>A. Selim</i>) <br> Toutes copies autoris&eacute;es !</div>
  • </center>
  • </body>
  • </html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
    <title>Direction de la Qibla</title>
<script src="http://maps.google.com/maps?file=api&amp;v=2&amp;key=ABQIAAAAVkfCvwgjflEc0QKyOi8SiBQvNNpTpilDwpBuhZ-TgjbdrxD1BRTAS5X33atUuxfvf9nT5HsYq5eLMw"
      type="text/javascript"></script>
<script language="JavaScript" src="http://j.maxmind.com/app/geoip.js"></script>
<script type="text/javascript">
//<![CDATA[
var map;
var geocoder;
var gpoint;
var qibla;
var myEvent;
var myEvent2;

var pi_=3.1415926535897932384626433832795;

//initialisation de Google MAP 
function load() {
  if (GBrowserIsCompatible()) {
	map = new GMap2(document.getElementById("map"));
	//enlever le comm pour modifier le type visualisation
	//map.setMapType(G_HYBRID_MAP);
	try
	{
		//détection de votre position grace à la geolocalisation de votre IP (utilisation d'une API exterieur)
		var point = new GLatLng(parseFloat(geoip_latitude()) , parseFloat(geoip_longitude()));	
	}
	catch(e)
	{
		//alert('geoip HS');
		//j'ai initialiser avec des valeur par défaut car la geolocalisation ne fonctionne pas tout le temps
		var point = new GLatLng(48.873818, 2.29498386);	
	}

//coordonnée en dur de la position de la mecque
	qibla = new GLatLng(21.4225, 39.826111);

	//param zoom + position
	map.setCenter(point, 13);
	//param des boutons de controle
	//http://code.google.com/intl/fr-BE/apis/maps/documentation/controls.html
	map.addControl(new GMapTypeControl());
	map.addControl(new GOverviewMapControl());
	map.addControl(new GScaleControl());
	map.addControl(new GLargeMapControl());
	geocoder = new GClientGeocoder();
	//fonction qui trace une ligne
	traceLigneQibla('',point);
	//active les interactions avec les evenements
	//http://code.google.com/intl/fr-BE/apis/maps/documentation/events.html
	//si on bouge la carte, execute la fonction bouger
	myEvent=GEvent.addListener(map, 'moveend', bouger);
	//si on clic la carte, execute la fonction clicMoi
	myEvent2=GEvent.addListener(map, 'click', clicMoi);
	
	//different test
	//map.addControl(new GSmallMapControl(), new GControlPosition(G_ANCHOR_TOP_RIGHT,new GSize(-60,0)));
	//map.addControl(new GMapTypeControl(), new GControlPosition(G_ANCHOR_TOP_RIGHT,new GSize(60,-10)));
	//map.enableContinuousZoom();
	//map.addControl(new GOverviewMapControl(), new GControlPosition(G_ANCHOR_BOTTOM_RIGHT,new GSize(20,0)));
  }
}

function unload(){
	GUnload();
}

function clicMoi(pmarker, point){
try{
	gpoint=point;
	map.clearOverlays();
	//centre la carte , sur le point cliqué
	map.setCenter(gpoint);
	marker = new GMarker(gpoint);
	map.addOverlay(marker);
	setTimeout("traceLigneQibla('',gpoint)",100);
} catch (e){
	//alert('vous avez cliqué sur un marqueur :');
	//getProp(pmarker);
}
}

function bouger(){	
	map.clearOverlays();
	//récupère les coordonnées du centre de la carte
	gpoint = map.getCenter();
	marker = new GMarker(gpoint);
	map.addOverlay(marker);
	setTimeout("traceLigneQibla('',gpoint)",100);
	//	viewInfo(gpoint);
}

//trace une droite entre le point de localisation et la mecque
function traceLigneQibla(adresse,point){
	map.clearOverlays();
	//map.setCenter(point);
	//place un marqueur à l'emplacement
	marker = new GMarker(point);
	map.addOverlay(marker);
	//affiche les infos sur la distances
	if (adresse!='')
	{
		//debug de la propriete point pr avoir toutes ses fonctions
		//getProp(point);
		marker.openInfoWindowHtml("<font style='font-family:Tahoma;font-size:12px'>"+adresse+"</font>");
	}
	//trace la ligne geodesique entre les 2 points du globe
	var polyOptions = {geodesic:true};
	var polyline = new GPolyline([ point, qibla ], "#00ff00", 3, 1, polyOptions);
	map.addOverlay(polyline);
	viewInfo(point);
}

//retourne les proprietes d'un objet
function getProp(x)
{
	for (e in x)
	htm+=e+":"+x[e]+"\n";
	alert(htm);
}

function viewInfo(point)	
{
	htm="<b>Latitude:</b>"+point.lat()+"<br/>";
	htm+="<b>Longitude:</b>"+point.lng()+"<br/>";
	htm+="<b>distance:</b>"+parseInt(point.distanceFrom(qibla),10)/1000+" km<br/>";
	htm+="<b>angle:</b>"+deltaAngle(point,qibla) +"&deg;N<br/>";	
		//affiche les coordonnées en temps réel
		document.getElementById("infoMap").innerHTML=htm;
}

function deg2rad(angle) 
	{return (angle*Math.PI/180);}
function rad2deg(angle) 
	{return (angle*180/Math.PI);}


//retourne l'angle entre 2 points du globe selon la formule :
//Angle = arctan( sin(lon_B-lon_A) / (cos(lat_A) * tan(lat_B) - sin(lat_A) * cos(lon_B - lon_A)))
function deltaAngle(pta,ptb) 
{
	rlng= deg2rad(ptb.lng()- pta.lng());
	//angle = rad2deg(Math.atan(Math.sin(rlng)/(Math.cos(deg2rad(pta.lat()))* Math.tan( deg2rad(ptb.lat()))- Math.sin(deg2rad(pta.lat()))* Math.cos(rlng))));
	//bcp mieux !
	angle = rad2deg(Math.atan2(Math.sin(rlng), Math.cos(deg2rad(pta.lat()))* Math.tan( deg2rad(ptb.lat()))- Math.sin(deg2rad(pta.lat()))* Math.cos(rlng)));
	if (angle<0) 
		angle += 360;
	//arrondi à 2 chiffres :
	angle=parseInt(angle*100,10)/100;
	return angle;
}

//lance la recherche
function rechercher(){
  //supprime le controle sur l'evenement pour eviter le lancement de la fonction bouger
	GEvent.removeListener(myEvent);
	geocoder.getLocations(document.getElementById("adresse").value, recupadresse);
}

//convertie une adresse en coordonnée
function recupadresse(response){
  map.clearOverlays();
  if (!response || response.Status.code != 200) {
	alert("impossible de localiser cette adresse !");
  } else {
	emplacement = response.Placemark[0];
	//alert(emplacement.Point.coordinates[1]+'  - '+emplacement.Point.coordinates[0]);
	point = new GLatLng(emplacement.Point.coordinates[1],emplacement.Point.coordinates[0]);
	htm="";
	traceLigneQibla(emplacement.address,point);
  }
  //reaffecte le controle sur l'evenement car il est supprimer pendant la recherche
  myEvent=GEvent.addListener(map, 'moveend', bouger);
}


//]]>
</script>
	<body onload="try{load();}catch(e){}" onunload="try{unload();}catch(e){}">
<br/>Direction de la Qibla avec Google MAP<br/>
&nbsp;&nbsp;Entrez une adresse ou un lieu :&nbsp;<input type="text" id="adresse" value="" style="width:300px;">&nbsp;&nbsp;<input type="button" value="recherche" onclick="rechercher()"><br><br>
<table>
<tr><td>
<div id="map" style="width:600px;height:350px"></div>
</td><td><div id="infoMap"></div></td></tr></table>
 <br/><br/><br/><br/>
 <center>
<div style="font-family:Tahoma;font-size:9px">derni&egrave;re mise &agrave; jour sur mon site : <a href="http://www.crew.free.fr">http://www.crew.free.fr</a><br>powered by <b>AmRouNiX</b> / <b>MaSTeR-KiLLeR</b> (<i>A. Selim</i>) <br> Toutes copies autoris&eacute;es !</div>
</center>
</body>
</html>


 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

11 mars 2009 17:14:34 :
ajout image
15 mars 2009 11:44:46 :
-désacivation de la géolocalisation
15 mars 2009 11:45:25 :
désactivation de la geolocalisation
20 mars 2009 10:22:29 :
ajout des contrôle de mouvement + clic de la carte, pour repositionner le point de localisation
10 juin 2010 09:46:25 :
-link
10 juin 2010 09:47:38 :
-link
10 juin 2010 09:50:05 :
-link

 Sources du même auteur

Source avec Zip Source avec une capture TROUVER UN ITINÉRAIRE AVEC GOOGLE MAP
Source avec Zip Source avec une capture DEBLOCK ME - CASSE TÊTE
Source avec Zip Source avec une capture CRYPTOR - PROTEGEZ VOS CODES SOURCES !
Source avec Zip Source avec une capture CODE UTF-8
Source avec Zip Source avec une capture QUIZZ MASTER : 2000 QUESTIONS POUR TESTER VOTRE CULTURE

 Sources de la même categorie

COLONNES ADAPTABLES EN HAUTEUR par dronoide
Source avec Zip VECTEURS ET MATRICES: OUTILS GRAPHIQUES UTILES par william voirol
Source avec Zip Source avec une capture HTML5 PLAYER par kazma
Source avec Zip Source avec une capture SCROLLBAR PERSONNALISABLE par kazma
Source avec Zip INFO BULLE par RudiRatlos

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture CURSEUR DYNAMIQUE par wackybacky

Commentaires et avis

Commentaire de valneandre le 16/03/2009 10:25:22 8/10

Je n'ai pas encore eu le temps de tester ce code, juste survolé. Je mets 8/10, parce que l'intention me paraît excellente, et il n'est pas besoin d'être musulman pour en voir l'intérêt: apprendre à se servir de l'API Google (ou d'une api en général), c'est un type de programmation qui m'intéresse, et que je n'avais pas encore abordé. Je vais donc étudier la question à fond...
Merci donc pour ce code, Amrounix.

Commentaire de amrounix le 16/03/2009 18:07:10

salut, merci pour la note, je me suis taper toute l'API de google MAP et on peut faire beaucoup de chose, si tu as besoin d'aide, je suis là, je suis devenu un pro ! :)

Commentaire de valneandre le 17/03/2009 11:14:31

Salut Amrounix
Je viens de tester le code, génial, ça marche super bien, du premier coup, et ça m'ouvre des horizons passionnants, je vais me plonger là-dedans, et, promis, si j'ai besoin de tuyaux, je n'hésiterai pas à te demander. Encore merci.
Richard

Commentaire de valneandre le 18/03/2009 09:46:38

Salut Amrounix
Je compte utiliser ton code pour faire une page de "favoris" des endroits que l'on aime bien, un genre de catalogue de photos aériennes: ma maison, mes dernières vacances, la Tout Eiffel, etc... Cela permettrait aussi, en envoyant un simple lien à un ami, un visiteur, de lui dire: voilà à quoi cela ressemble ici, tu peux arriver par telle route, etc.
Toute la partie "enregistrement d'un endroit donné" sera faite en PHP.
Il me manque une fonctionnalité (qui doit sûrement exister dans l'API) qui serait bien utile: récupérer les coordonnées Latitude et Longitude de l'endroit affiché sur la carte, avec mise à jour en temps réel au fur et à mesure que l'on se déplace dessus. Cela permettrait, après avoir trouvé un endroit "en gros", de savoir les coordonnées précises du point choisi une fois que l'on a zoomé dessus et affiné sa position (précision: je n'ai pas de GPS).
Par ailleurs, lorsqu'un utilisateur de la page voudrait enregistrer un endroit qui lui plaît (et sur lequel il s'est placé de lui-même, en navigant), un simple clic sur un bouton sauvegarderait alors les coordonnées présentes sur la carte à ce moment, dans un fichier externe, avec juste l'ajout d'un nom choisi par l'utilisateur.
Voilà. Puisque tu es devenu un spécialiste de l'Api Google, cela doit te paraître très simple !

J'ai remis en service la géolocalisation par IP: cela marche avec certaines IP, pas avec d'autres. Je pense que cela tient à des blocages volontaires de la part des détenteurs de ces IPs. Par ailleurs, on a des surprises: je suis hébergé chez un FAI anglais, je teste mon IP principale, et je trouve un lieu en ... Corée du Sud ! Sur l'IP secondaire: la république tchèque ! Bizarre, vous avez dit bizarre !

Je réitère mes compliments: ton code est vraiment un petit trésor !

R. Valnéandre

Commentaire de amrounix le 20/03/2009 10:28:02

Salut Richard,
J'ai fait des modifications dans mon source qui vont te plaire, j'ai ajouter des contrôles sur le mouvement et le clic sur la carte, cela execute respectivement les fonctions bouger() et clicMoi(), j'ai aussi affiché en temps réel la position de l'endroit sélectionné, et je test aussi si la géolocalisation est OK ou bien si elle est HS je force avec des valeurs par défaut ... :)

Selim A.

Commentaire de valneandre le 20/03/2009 13:26:11

Superbe !
Richard

Commentaire de Phenix40 le 22/05/2009 12:42:29 10/10

Super Amrounix.
plusieurs personnes vont se servir de ton code. Merci.

Commentaire de amrounix le 22/05/2009 18:06:04

Merci pour ton commentaire et ta note :)
pour information, si tu comptes mettre cette page en ligne, il faudra remplacer le code :
key=ABQIAAAAVkfCvwgjflEc0QKyOi8SiBQvNNpTpilDwpBuhZ-TgjbdrxD1BRTAS5X33atUuxfvf9nT5HsYq5eLMw
par le code fourni par google situé à l'adresse :
http://code.google.com/intl/en/apis/maps/signup.html
(c'est en anglais)
Selim A.

Commentaire de plarts le 28/09/2009 14:41:47

As t on besoin de cet API extérieur ?
Qu'est ce que c'est, ou l atrouver ?
Merci.

Commentaire de plarts le 28/09/2009 14:42:35

J'ai oublié, c'est cette ligne de code :
//détection de votre position grace à la geolocalisation de votre IP (utilisation d'une API exterieur)
var point = new GLatLng(parseFloat(geoip_latitude()) , parseFloat(geoip_longitude()));

Commentaire de amrounix le 28/09/2009 16:23:42

biensur que non ! c'est juste une API qui me permet de centrer la carte en fonction de l'utilisateur, pour enlever l'accès à cette API, il suffit
de supprimer la ligne :
<script language="JavaScript" src="http://j.maxmind.com/app/geoip.js"></script>
de remplacer :
try
{
//détection de votre position grace à la geolocalisation de votre IP (utilisation d'une API exterieur)
var point = new GLatLng(parseFloat(geoip_latitude()) , parseFloat(geoip_longitude()));
}
catch(e)
{
//alert('geoip HS');
//j'ai initialiser avec des valeur par défaut car la geolocalisation ne fonctionne pas tout le temps
var point = new GLatLng(48.873818, 2.29498386);
}

par ca :

var point = new GLatLng(48.873818, 2.29498386);

avec
48.873818 / 2.29498386 qui sont les corrdonnées par défaut du centre de la carte !
@+

Selim A.

Commentaire de plarts le 28/09/2009 19:45:01

Ok, merci. je comprend.
Y a t il un moyen de capturer les coordonnées (latitude-longitude),
en déplaçant la souris sur la carte google, ou en clicquant sur un endroit de la carte ?
Pierre.

Commentaire de hicham1802 le 29/01/2010 06:03:10

jazaka laho khairaan,, sa ma beaucoup aidé merci .

Commentaire de amrounix le 29/01/2010 11:10:50

salam hicham1802, content de savoir que ca te plait !

Commentaire de Popo67800 le 10/02/2010 21:04:02

Salem AMROUNIX j'aimerai savoir si la direction est représenté par une courbe c'est parceque tu prends en compte le reliefe de la terre?

Commentaire de amrounix le 11/02/2010 09:19:37

Salam POPO67800, si tu vois une courbe, c'est parce que la terre est ronde ! si tu te place au États-unis par exemple, la distance vers la Mecque est plus courte en passant près du pôle Nord, d'où la courbe...

Commentaire de chel le 09/06/2010 20:12:31

Cela suppose qu'on a une boussole avec, ce qui est rarement le cas, un rapporteur si, pourquoi ne pas permettre à l'utilisateur de trouver la direction de la quibla à partir d'une direction choisie par l'utilisateur (ie a partir de deux points sur la carte)

Commentaire de amrounix le 10/06/2010 09:42:45

Salut Chel,
L'avantage avec la carte, c'est que tu peut te baser sur ta maison ou l'orientation des rues à proximité pour avoir une direction vers la Mecque.

Commentaire de chel le 10/06/2010 12:32:59

Oui la carte est par défaut orienté au nord, encore faut il que l'utilisateur le sache, en fait dans ton programme, c'est le trait vert qui donne la direction de la quibla et non pas seulement la valeur de l'angle donnée en marge à droite. Il reste quand intéressant d'avoir l'angle précis que fait le trait vert avec une direction donnée (une route, le mur de sa maison, les carrelages, ...)

Commentaire de katau le 09/08/2010 11:54:36

Ca c'est de la sadaka jaria!
Merci beaucoup, tu m'as enlevé un énorme souci!
Bonne continuation.

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Aide javascript scrolling vertical [ par hltyson13 ] bonjour,J'utilise un javascript pour le d&#233;filement de news au format texte.le voici:"&lt;head&gt;&lt;meta http-equiv="refresh" content="1000; url prob de vitesse de scroll, truc de dingue [ par anton_nice ] Salut a tous, tout d abord, et merci pour toutes ces excellentes sources. Voila mon souci: J ai un iframe, dedans j ai fait un scroll avec des fleches Déplacement horizontale [ par chamhallot ] Bonjour, je susi d&#233;butant en js&nbsp;et j'aimerais&nbsp;faire d&#233;filer horyzontalement&nbsp;un certain nombre d'image lorsque l'utilisateur s positionner par defaut sur le dernier element de la liste [ par babylonne ] Bonjour tt le monde, je voudrai savoir comment on fait pour se positionner sur le dernier element par defaut lors du chargement de la page  sans tenir Remplissage d'une liste deroulante [ par babylonne ] bonjour tt le monde,j'ai un souci par rapport au remplissage de ma 2 liste c-a- dire au momment ou je clique sur direction qaulité , je dois avoir la


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,154 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales