Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Wed 23 June 2004 09:24

Nizar Ing
Invité

tracer des lignes avec mapbasic

Bonjour,
je suis un nouveau utilisateur de mapbasic je veux savoir comment faire pour tracer des lignes sur map info en fonction d'une table acces ou il ya quatres colonnes contenant x1,y1,x2,y2
si possible envoyemois un code ...
merci

 

#2 Thu 24 June 2004 11:07

Francois Biju-Duval
Invité

Re: tracer des lignes avec mapbasic

Bonjour.

Exemple de code (c'est theorique mais ca devrait marcher); sachant que x1,y1,x2 et y2 doivent etre numeriques en Access :

dim CanalConnect as integer
dim CanalExecute as integer
dim W_Code_Ligne as string
dim W_X1 as Float
dim W_Y1 as Float
dim W_X2 as Float
dim W_Y2 as Float

'** Etablit la connexion avec Acces
CanalConnect = Server_Connect( QELIB , DBQ= & D:\BaseAccess.mdb; &
Driver={Microsoft Access Driver (*.mdb)} )
'** Extrait les donnees de la table Access et les met dans la table MapInfo non graphique DonneesLignes
CanalExecute = Server_Execute(CanalConnect, select CodeLigne,x1,y1,x2,y2 from TableAccess )
Server CanalExecute Fetch Into DonneesLignes File D:\DonneesLignes.tab
Server CanalExecute Close
'Server CanalConnect Disconnect

Create Table VecteursLignes
(CodeLigne Char(10))
File D:\VecteursLignes.tab
'** Lambert II etendu
Create Map For VecteursLignes CoordSys Earth Projection 3,1002, m ,0,46.8, 45.898918964419,47.696014502038,600000,2200000 Bounds (-113967455.417,-106367759.649) (115167455.417,122767151.185)

'** Creation des lignes dans la table VecteursLignes
Fetch First from DonneesLignes
Do until EOT(DonneesLignes)
W_Code_Ligne = DonneesLignes.CodeLigne
W_X1 = DonneesLignes.x1
W_Y1 = DonneesLignes.y1
W_X2 = DonneesLignes.x2
W_Y2 = DonneesLignes.y2
Insert into VecteursLignes(CodeLigne,obj)
Values (W_Code_Ligne,CreateLine(W_X1,W_Y1,W_X2,W_Y2))
Fetch Next from DonneesLignes
Loop

Amicalement a la liste.

 

Pied de page des forums

Powered by FluxBB