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é ?

#1 Tue 24 September 2002 17:02

Franck Vautier
Invité

Creer des objets point a partir des noeuds

De: franck
Bonjour,
Je cherche a recuperer les coordonnees XY de tous les noeuds d'une polyligne. En utilisant la fonction ObjectnodeX et Y je parviens a recuperer les coordonnees des extremites de la polyligne mais pas celles des noeuds intermediaires.
Si quelqu'un a une solution...
Merci a tous
Franck

 

#2 Tue 24 September 2002 17:23

Jacques Paris
Invité

Re: Creer des objets point a partir des noeuds

Vous ne pouvez pas le faire sans ecrire un programme MapBasic car il faut
faire des iterations, d'abord a travers les polylignes, ensuite pour une
polyligne, a travers les  sections  i=1 a NS (NS=objectinfo(obj,21)
ensuite a travers les nœuds j=1 a NO (NO=objectinfo(obj,21+i)

Jacques Paris
e-mail jacques@texte-a-enlever.paris-pc-gis.com
MapBasic-MapInfo support http://www.paris-pc-gis.com

From: Franck.vautier@texte-a-enlever.univ-bpclermont.fr
[Franck.vautier@texte-a-enlever.univ-bpclermont.fr]
Sent: September 24, 2002 10:41
To: mapinfo_fr@texte-a-enlever.georezo.net
Subject: [mapinfo_fr] coordonnees noeuds polyligne

De: franck
Bonjour,
Je cherche a recuperer les coordonnees XY de tous les noeuds d'une
polyligne. En utilisant la fonction ObjectnodeX et Y je parviens a recuperer
les coordonnees des extremites de la polyligne mais pas celles des noeuds
intermediaires.
Si quelqu'un a une solution...
Merci a tous
Franck

 

#3 Thu 26 September 2002 08:37

Béatrice FERNANE
Invité

Re: Creer des objets point a partir des noeuds

S'il ne s'agit que de recuperer les coordonnees sans forme particuliere, il est possible d'exporter le fichier au fomat MIF,MID et d'ouvrier avec un editeur de texte, recuperer les coordonnees et les enregistrer dans un fichier *.txt

Bonne journee

beatrice.fernane@texte-a-enlever.free.fr

>>> 24/09/02 16:41:09 >>>
De: franck
Bonjour,
Je cherche a recuperer les coordonnees XY de tous les noeuds d'une polyligne. En utilisant la fonction ObjectnodeX et Y je parviens a recuperer les coordonnees des extremites de la polyligne mais pas celles des noeuds intermediaires.
Si quelqu'un a une solution...
Merci a tous
Franck

 

#4 Wed 30 June 2004 13:51

Guillaume MESTELAN
Invité

Re: Creer des objets point a partir des noeuds

Bonjour

Je souhaiterais creer des objets point a partir des intersections des lignes
d'une grille .

Pourriez vous m'indiquer la procedure a suivre ?

Merci

 

#5 Thu 01 July 2004 19:38

Bizet Remi - RBizet
Invité

Re: Creer des objets point a partir des noeuds

Saisir la ligne de commande suivante dans la fenetre MapBasic :

Create Object As Intersect  From  LignesCroisees  Into Table
PointDintersection

Ou LignesCroisees  est la table contenant des lignes se croisant, et

PointDintersection la table devant recevoir les points d'intersection.

Cordialement.

Remi Bizet    Consultant Formateur
Courriel : remi.bizet@texte-a-enlever.acxiom.com
Acxiom France http://www.claritas.fr
http://www.acxiom.fr
235, ave. le Jour se Leve. 92651 Boulogne Cedex
Tel : +33 1 58 17 73 00     Fax :+33 1 48 17 74 74

De : Guillaume MESTELAN [n2000pr99@texte-a-enlever.foindecrau.com]
Envoye : mercredi 30 juin 2004 13:34
À : Mapinfo_Fr
Objet : [mapinfo_fr] Creer des objets point a partir des noeuds

Bonjour

Je souhaiterais creer des objets point a partir des intersections des lignes
d'une grille .

Pourriez vous m'indiquer la procedure a suivre ?

Merci

**********************************************************************
The information contained in this communication is
confidential, is intended only for the use of the recipient
named above, and may be legally privileged.
If the reader of this message is not the intended
recipient, you are hereby notified that any dissemination,
distribution, or copying of this communication is strictly
prohibited.
If you have received this communication in error,
please re-send this communication to the sender and
delete the original message or any copy of it from your
computer system. Thank You.

 

#6 Fri 02 July 2004 09:30

Bizet Remi - RBizet
Invité

Re: Creer des objets point a partir des noeuds

La reponse precedente s'entendait pour une paire unique de lignes, sinon, il
faut dans MapBasic tester les lignes entre elles de la premiere a la
derniere, par rapport a celles qui n'ont pas encore ete testees pour creer
le ou les points de contact eventuel(s) :
______________________________
dim i,j as integer
For i = 1 to tableinfo(LignesCroisees ,TAB_INFO_NROWS)-1
For j = i+1 to tableinfo(LignesCroisees ,TAB_INFO_NROWS)
select * from LignesCroisees where rowid in(i,j)
into sel1 noselect
Create Object As intersect From  sel1  Into
Table PointDintersection
Next
Next
_______________________________

Cordialement.

Remi Bizet    Consultant Formateur
Courriel : remi.bizet@texte-a-enlever.acxiom.com
Acxiom France http://www.claritas.fr
http://www.acxiom.fr
235, ave. le Jour se Leve. 92651 Boulogne Cedex
Tel : +33 1 58 17 73 00     Fax :+33 1 48 17 74 74

De : Bizet Remi - RBizet
Envoye : jeudi 1 juillet 2004 18:24
À : 'n2000pr99@texte-a-enlever.foindecrau.com'
Cc : Mapinfo_Fr
Objet : RE : [mapinfo_fr] Creer des objets point a partir des noeuds

Saisir la ligne de commande suivante dans la fenetre MapBasic :

Create Object As Intersect  From  LignesCroisees  Into Table
PointDintersection

Ou LignesCroisees  est la table contenant des lignes se croisant, et

PointDintersection la table devant recevoir les points d'intersection.

Cordialement.

Remi Bizet    Consultant Formateur
Courriel : remi.bizet@texte-a-enlever.acxiom.com
Acxiom France http://www.claritas.fr
http://www.acxiom.fr
235, ave. le Jour se Leve. 92651 Boulogne Cedex
Tel : +33 1 58 17 73 00     Fax :+33 1 48 17 74 74

De : Guillaume MESTELAN [n2000pr99@texte-a-enlever.foindecrau.com]
Envoye : mercredi 30 juin 2004 13:34
À : Mapinfo_Fr
Objet : [mapinfo_fr] Creer des objets point a partir des noeuds

Bonjour

Je souhaiterais creer des objets point a partir des intersections des lignes
d'une grille .

Pourriez vous m'indiquer la procedure a suivre ?

Merci

**********************************************************************
The information contained in this communication is
confidential, is intended only for the use of the recipient
named above, and may be legally privileged.
If the reader of this message is not the intended
recipient, you are hereby notified that any dissemination,
distribution, or copying of this communication is strictly
prohibited.
If you have received this communication in error,
please re-send this communication to the sender and
delete the original message or any copy of it from your
computer system. Thank You.

 

#7 Wed 15 September 2004 10:38

Laurancin
Invité

Re: Creer des objets point a partir des noeuds

De: berth
En cherchant bien dans la liste, j'ai trouve une solution a mon probleme...
1. J'exporte ma table de polylignes au format MIF/MID.
2. J'ouvre le fichier MIF avec un editeur de texte..
3. Je recupere toutes les coordonnees de me noeuds pour les transferer dans Excel.
4. J'utilise la fonction creer des points de MI
Si vous avez une solution plus simple, ca m'interesse....
Merci...

 

#8 Tue 12 April 2005 15:59

Alain Ferchal
Invité

Re: Creer des objets point a partir des noeuds

Bonjour,
J'utilise le mbx linetopo pour recuperer les noeuds de mes polylignes. Petit
pb : les coordonnees des points ainsi recuperees ne correspondent pas
precisement aux coordonnees des noeuds des polylignes :

Ex :
Coordonnees Noeuds :
1) 634092.1 1774113.88
2) 634781.94 1774080.04
3) 634409.86 1773922.26

Coordonnees Pt recupere
1) 634092.1 1774113.91
2) 634781.99 1774080.04
3) 634409.86 1773922.22

Tous ces petits decalages semblent en plus etre aleatoires et varier en X et
en Y. Une petite idee sur la question pour ameliorer la precision ?

Merci

AF

 

#9 Tue 12 April 2005 15:59

Jacques Paris
Invité

Re: Creer des objets point a partir des noeuds

Comment connaissez-vous les coordonnees   vraies   des nœuds? Si ce sont des
donnees qui vous viennent d'une source externe, quand elles sont entrees sur
MapInfo, il est possible qu'elles soient   transformees   pour correspondre
a la grille interne de representation des coordonnees. Cette grille est
d'autant plus fine que les   bounds   sont resserrees (elle permet 2
milliards de positions entre les limites extremes). Il est donc possible que
les coordonnees originales aient ete arrondies pour tomber sur la grille;
cet arrondissement peut donner cette impression de variations aleatoires.
Pour donner une idee, une (non-)projection en degres sans limites a un pas
de 11cms en latitude. Des variations de l'ordre de 3-5 cm ne me semblent
donc pas a priori surprenantes

Il faudrait aussi s'assurer que le MBX prend correctement en compte la
projection de la table traitee. Cela ne serait possible qu'en regardant au
code qui ne semble pas etre disponible.

Jacques Paris
e-mail  jacques@texte-a-enlever.paris-pc-gis.com
MapBasic-MapInfo support  http://www.paris-pc-gis.com

From: Alain Ferchal [alain.ferchal@texte-a-enlever.espaces-naturels.fr]
Sent: April 12, 2005 09:06
To: mapinfo_fr@texte-a-enlever.georezo.net
Subject: [mapinfo_fr] noeuds des polylignes

Bonjour,
J'utilise le mbx linetopo pour recuperer les noeuds de mes polylignes. Petit
pb : les coordonnees des points ainsi recuperees ne correspondent pas
precisement aux coordonnees des noeuds des polylignes :

Ex :
Coordonnees Noeuds :
1) 634092.1 1774113.88
2) 634781.94 1774080.04
3) 634409.86 1773922.26

Coordonnees Pt recupere
1) 634092.1 1774113.91
2) 634781.99 1774080.04
3) 634409.86 1773922.22

Tous ces petits decalages semblent en plus etre aleatoires et varier en X et
en Y. Une petite idee sur la question pour ameliorer la precision ?

Merci

AF

 

#10 Tue 12 April 2005 17:09

Jplartigau
Invité

Re: Creer des objets point a partir des noeuds

De: JPLARTIGAU
Bonjour,

Effectivement les fonctions qui recuperent la geometrie des objets sous mapbasic donnent une info quelque peu differentes de la realite de l'objet.

Pour corriger ce bugg la seule solution trouvee a ce jour est un export en MIF/MID qui lui donne une valeur exacte aux coordonnees des points des objets.

Pourquoi cela est ainsi ? Pas d'explication a ce jour.

Une Fois genere le MIFMID je relis les coordonnees de ces fichiers pour mes traitement. Cela m'oblige bien evidemment a developper mes propres routines (entre autre de generation de DXF evolue).

Je n'est pas tester la Version 7.8 sur ce pb mais je vais m'y coller.

A plus tard
JPLARTIGAU

 

#11 Mon 24 April 2006 19:31

anthony123
Juste Inscrit !
Date d'inscription: 24 Apr 2006
Messages: 3

Re: Creer des objets point a partir des noeuds

Bonjour
Je suis débutant sur Mapinfo et j'aimerais savoir comment recueillir les coordonnées (x,y) des noeuds d'un polygone pour ensuite pouvoir calculer la moyenne des distances entre un point au centre du polygone et les noeuds de celui -ci.

Un grand merci par avance à ceux qui pourront m'aider

Dernière modification par anthony123 (Tue 25 April 2006 08:09)

Hors ligne

 

#12 Tue 25 April 2006 23:30

Maurice
Membre
Lieu: Montpellier
Date d'inscription: 5 Sep 2005
Messages: 5331

Re: Creer des objets point a partir des noeuds

L'outil joint crée un thème 'points' de tous les noeuds (ou des deux noeuds début et fin, pour les polylignes) des d'objet choisis (polylignes, lignes, polygones) d'une table ou d'une sélection.
Sinon, tu peux passer par l'export mid-mif; le fichier texte mif liste les sommets des polygones (régions)

Dernière modification par Maurice Nadal (Wed 21 June 2006 17:21)


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Hors ligne

 

#13 Wed 26 April 2006 11:02

jakesp
Membre
Lieu: Montreal, QC
Date d'inscription: 28 Sep 2005
Messages: 126
Site web

Re: Creer des objets point a partir des noeuds

Sans vouloir rien enlever au programme de Maurice (que je n'ai pas pu encore tester) il y a un vieil ami "p2p.mbx" qui convertit en points tous les nœuds des polylignes/polygones contenus dans une table tout en conservant une colonne (souvent prise pour l'altitude). Les X et Y ne sont pas formellement donnés mais il suffit de modifier la table des points avec l'ajout de deux colonnes et de les mettre à jour avec centroidX(obj), centroidY(obj).

Téléchargement : http://www.directionsmag.com/files/index.php/view/535

Hors ligne

 

#14 Thu 27 April 2006 14:49

anthony123
Juste Inscrit !
Date d'inscription: 24 Apr 2006
Messages: 3

Re: Creer des objets point a partir des noeuds

Merci à tous les deux pour ces infos.
Je vous tiendrais au courant de ma progression dans le labyrinthe de la géomatique.
a+

Hors ligne

 

#15 Fri 13 April 2007 12:46

nicolas_200
Juste Inscrit !
Date d'inscription: 4 Apr 2007
Messages: 4

Re: Creer des objets point a partir des noeuds

Message à l'attention de Maurice,

Tout d'abord merci pour le programme de création de points.
Néanmoins j'ai toujours un problème car je veux créer uniquement des points aux coins des polygones de ma grille.
Or le programme crée une multitude de points. alors comment faire pour restreindre / paramétrer la création de points uniquement aux "angles" de mes polygones??

Merci par avance

Hors ligne

 

#16 Sun 15 April 2007 22:20

Maurice
Membre
Lieu: Montpellier
Date d'inscription: 5 Sep 2005
Messages: 5331

Re: Creer des objets point a partir des noeuds

Bonjour,
Pour nicolas_200: il faudrait, si la grille a été créée avec GridMaker, mettre zéro dans la case "nombre de noeuds à ajouter par côté"
Ainsi seuls les 4 points d'angle seront créés...

Hors ligne

 

#17 Sun 15 April 2007 22:37

Betula
Participant occasionnel
Date d'inscription: 18 Sep 2005
Messages: 20

Re: Creer des objets point a partir des noeuds

Bonjour,
À la lecture de votre question précédente je ne pense pas que vous désirez une réponse en utilisant directement la programmation. Voici une manière de faire la chose du point de vue d'un utilisateur, simplement par des mise à jour de colonne. Il faut par contre utiliser une fonction dont la documentation de mapinfo ne donne pas la description. Elle est extraite de l'aide du compilateur mapbasic.
Pour créer 4 points il vous faudra les coordonnées x et y pour chaque point. Ajouter donc 8 colonnes dans votre table (Point1_X, Point1_Y, Point2_X, Point2_Y...). Avec la commande Mettre à jour utiliser la fonction ObjectGeography( NomDeVotreTable.obj ,  attribute ).

À la place de attribute inscrire le chiffre selon la coordonnée que vous désirez obtenir.

MINX=1
MINY=2
MAXX=3
MAXY=4

Le point inférieur gauche d'un poygone est MINX, MINY, le point supérieur droit est MAXX, MAXY etc

Vous pourrez ensuite créer vos points sur ces coordonnées avec la commande Créer Points... de Mapinfo.

Voila ça devrait vous donner une bonne piste de solution.
Salutations
BeTuLa


BeTuLa

Hors ligne

 

Pied de page des forums

Powered by FluxBB