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

Printemps des cartes 2024

#1 Fri 08 November 2013 11:18

Frago
Participant actif
Date d'inscription: 5 Oct 2011
Messages: 53

[FMB] création de points

Bonjour,

Je souhaiterais automatiser la création de points sur une quarantaine de tables (X;Y;Z).

Pour cela avec la fenêtre MapBasic :
  - j'importe mon fichier .TXT
  - j'enregistre le .TAB (attirbutaire uniquement)

Ensuite, je souhaite créer mes points.
Pour cela, j'ai testé deux solutions :

Code:

Set CoordSys Table ma_table
Update ma_table Set obj = CreatePoint(CentroidX(obj), CentroidY(obj))
Update ma_table Set obj = createpoint(_COL1, _COL2)

Ne semble pas fonctionner car les objets ponctuels n'existent pas encore...

Code:

Create Map For _ma_table CoordSys Earth Projection 3, 1002, "m", 0, 46.8, 45.8989188889, 47.69601444, 600000, 200000 Bounds (-42173, -517074) (1266604, 785681)

Avec ce code, après enregistrement du .TAB, j'ai un fichier .MAP qui semble remplit mais pas de point sur ma carte. A l'export e, MIF/MID, le MIF est remplit de "none".


Auriez-vous une solution pour créer ces points au format TAB automatiquement ?
Merci,

Hors ligne

 

#2 Fri 08 November 2013 11:43

Spacejo
Membre
Lieu: Nancy
Date d'inscription: 17 Aug 2008
Messages: 2511

Re: [FMB] création de points

Salut,

Code:

Set CoordSys Table ma_table
Update ma_table Set obj = createpoint(_COL1, _COL2)

Pourquoi ceci --> "Update ma_table Set obj = CreatePoint(CentroidX(obj), CentroidY(obj))"
Cette ligne te permets de créer des points sur les centroïdes de polygones (par exemple).

_COL1, _COL2 représentent bien tes champs X, Y de ta table (Latitude, Longitude par exemple)?

Pour automatiser sur tes quarante tables fait une recherche sur le forum avec "scriptgen" ou "générateur de scripts" comme mots clef.
Voilà un sujet --> http://georezo.net/forum/viewtopic.php? … l=casernes
Un autre sujet (récent) avec des images c'est mieux --> http://www.forumsig.org/showthread.php/ … couleur%29
En espérant orienter tes recherches
A+
Joël

Dernière modification par Spacejo (Fri 08 November 2013 13:39)

Hors ligne

 

#3 Fri 08 November 2013 16:01

Frago
Participant actif
Date d'inscription: 5 Oct 2011
Messages: 53

Re: [FMB] création de points

Oui, _COL1 et _COL2 correspondent à mes X;Y


Code:

Set CoordSys Table ma_table

j'ai le message : impossible de réaliser cette opération sur la table

Code:

Update ma_table Set obj = createpoint(_COL1, _COL2)

le champ obj n'existe pas dans la table

Hors ligne

 

#4 Fri 08 November 2013 16:14

Spacejo
Membre
Lieu: Nancy
Date d'inscription: 17 Aug 2008
Messages: 2511

Re: [FMB] création de points

As tu affecté une projection à ta table?
Car la ligne -> Set CoordSys Table ma_table
force la FMB à prendre en compte la projection de ta table si elle n'a pas de projection -> erreur

le champ obj n'existe pas dans la table


Oui ce champ est invisible si tu ouvres le .tab

Hors ligne

 

#5 Tue 12 November 2013 09:00

nicoboud
Moderateur
Lieu: Nantes
Date d'inscription: 12 Oct 2007
Messages: 860

Re: [FMB] création de points

Bonjour,

Avant de créer les points, il faut transformer la table créée à l'ouverture du fichier txt en table "géographique" (car le tab créé ainsi n'est qu'une table attributaire et non modifiable).

Donc faire d'abord le code

Code:

Create Map For ma_table CoordSys ...

puis le code pour la créations de points :

Code:

Update ma_table Set obj = createpoint(_COL1, _COL2)

Nicolas.

PS: attention, dans vos codes, vous intitulez votre table "_ma_table" et "ma_table" : pour Mapinfo, ce sera 2 tables différentes.


Co-modérateur du forum Mapinfo
Utilisateur Mapinfo et QGIS

Hors ligne

 

#6 Tue 12 November 2013 17:08

Frago
Participant actif
Date d'inscription: 5 Oct 2011
Messages: 53

Re: [FMB] création de points

Merci ! j'y vois plus clair dans ces codes, ça focntionne...

Hors ligne

 

Pied de page des forums

Powered by FluxBB