Code Mappoint (2009) et activeX Microsoft en général
Stagiaire WDF
Inscrit:
10/08/2007 12:38
Post(s): 32
Bonjour,
comme beaucoup j'ai essayé de me lancer dans l'activeX Mappoint pour "rigoler" (maintenant je pleure ...).
Mon but essayer de faire un petit programme pour exploiter les traces du GPS d'un amis (GPS MARINE, il fait des régates de voiliers ...).
ayant bien cherché partout j'ai réussit à trouver des bouts de codes qui mon permis de faire 2 - 3 petites choses que je met à votre disposition :

Donc dans un fenêtre j'ai un champ activeX : AX_ActiveX1 (mon activeX mappoint 16, un tableau tab_Points (qui contient une liste de coordonnées GPS) et un bouton Bouton1 (qui me sert a afficher mes points)

donc pour charger une carte "par défaut" à l'init de l'activeX :
// Initialisation de ObjMap
AX_ActiveX1>>NewMap(2)
AX_ActiveX1>>Units=1
AX_ActiveX1>>Appearance(1)

ça charge la vue de l'europe, je préfères plutôt utilisé :
AX_ActiveX1>>OpenMap("Carte.ptm")

qui va vous charger une carte que vous avez sauvegarder avec mappoint.

//à la fermeture de la fenetre :
AX_ActiveX1>>ActiveMap>>Saved = OLETrue
AX_ActiveX1>>CloseMap

ligne du tableau :
tab_Points.date la date de prise de la mesure
tab_Points.heure l'heure de prise de la mesure
tab_Points.Latitude latitude
tab_Points.Longitude longitude
tab_Points.Vitesse vitesse

il y a d'autre mesure que je ne donne pas pour pas surcharger à savoir force et sens du vent, profondeur etc ... pas trop intéressant en voiture ...

quant je clique sur mon bouton ça place les points et ça les relies par un trait :
dep,arr sont des objets Automation dynamique
cpt est un entier =1
lat, lon sont des entiers
txt est une chaîne
bool est un booléen = 0

AX_ActiveX1>>ActiveMap>>DrawingObjects>>Delete
POUR cpt = tab_Points..Occurrence A  1 PAS -1
	TableSelectPlus( tab_Points,cpt)
	SI tab_Points._ ALORS
		lat = tab_Points.Latitude
		lon = tab_Points.Longitude
// je place en mémoire dans mappoint un point  à partir des coordonnées GPS avec une altitude de 5m (je suis en mer n'oublié pas) pour l'utiliser plus tard			dep=AX_ActiveX1>>ActiveMap>>getLocation(lat,lon,5)
// on peux faire la meme chose depuis une adresse avec : 
// dep=AX_ActiveX1>>ActiveMap>>FindplaceResults(...
// "paris"+","+"ile de france"+","+"75000"+", //"+"france")		
		
		SI bool=Vrai ALORS
// je trace un trait entre mes 2 points avec un "shapes" car en mer y a pas de route et comme j'ai un point toutes les minutes ca m'évite d'avoir 1000 "punaises" sur l'écran.			AX_ActiveX1>>ActiveMap>>Shapes>>AddLine(dep,arr)
		SINON
			bool=Vrai
		FIN
		arr=dep
	FIN	
FIN


pour infos :
si vous voulez mettre un pushpin (une "punaise") utiliser :
AX_ActiveX1>>ActiveMap>>AddPushpin(dep,"Nom de la punaise")

j'utilise ma variable "dep" que j'ai initialisé plus haut, ça évite d'avoir des lignes de 250 caractères ...

si vous voulez calculer un itinéraire ("routier" pcq si y a la mer au milieu ça fait une belle erreur)
AX_ActiveX1>>ActiveMap>>activeroute>>waypoints>>add(dep)>>stoptime=0.0104
AX_ActiveX1>>ActiveMap>>activeroute>>waypoints>>add(arr)>>stoptime=0.0104
AX_ActiveX1>>ActiveMap>>activeroute>>calculate

ça fait un bel itinéraire
vous pouvez aussi utilisé le nom des pushpins pour faire vos points de passage :
AX_ActiveX1>>ActiveMap>>activeroute>>waypoints>>add(AX_ActiveX1>>ActiveMap>>findpushpin("Nom de la punaise"))>>stoptime=0.0104



*************************
je suis entrain de chercher comment modifier les SHAPES (ce qu'utilise windows pour dessiner sur les activeX microsoft)
le pd c'est que la plus part du temps je me retrouve avec des erreurs : Erreur 80020006, Nom inconnu (en gros je connais pas ta fonction, essaye autre chose ...)
même en s'inspirant d'exemple java ou .net c'est pas évidant.
des choses simples comme changer la couleur du trait, ca taille (pour le moment j'ai un trait qui fait 3mm à l'écran, pas super hein ?)
si qqu"un connait est peut m'aider je suis preneur

bon c'est tout pour le moment, j'espère que ça peut vous aider ...

Contribution le : 21/07/2009 17:34

Edité par drcharly93 sur 27/7/2009 12:59:30
Créer un fichier PDF de la contribution Imprimer


Re: Code Mappoint (2009) et activeX Microsoft en général
Animateur WDF
Inscrit:
02/03/2003 04:07
De Noisy le grand(93)
Post(s): 2745
Bonjour,

Merci beaucoup pour ce partage de connaissance

Cordialement

Contribution le : 27/07/2009 13:00
_________________
@A+
Contact (privé)......
email : drcharly@wdforge.org
[DrCharly93]
Créer un fichier PDF de la contribution Imprimer



 Haut   Précédent   Suivant




Enregistrer votre réponse
CompteNom   Mot de passe   Authentification
Message:


Vous ne pouvez pas débuter de nouveaux sujets.
Vous pouvez voir les sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Connexion
Menu
Chercher WDForge
Chercher Web
Partenaires
Visualiser tous les Partenaires...
WinDev, WebDev, WinDev Mobile et HyperFile sont des marques déposées par PCSoft. |  Voter |  Legal |  Contact |   XOOPS 2.0.13.2