Aller au contenu

Lecture d'un fichier de points et récup de valeurs


Messages recommandés

Posté(e)

Hello a tous,

 

Lors d'un export issu d'un logiciel topo, nous récupérons un extrait de la base de données en dxf ainsi que des fichiers d'extension xyz contenant des points.

C'est un fichier texte pouvant être lu dans un bloc-notes mais la structure d'un point est complexe.

En effet, comme dans les exemples ci-dessous, les caractéristiques de chaque point peuvent être sur deux ou plusieurs lignes.

 

1er cas :

1Tbw.179:X=49223.1991,Y=67560.6339,Z=28.49086,PH=6,PV=6,MD=DP_POINT

1Tbw.179&D0:SOL_A

1Tbw.179&Q98:MAT_ANC=2Y.180

 

2ème cas :

1Tbw.189:X=49196.0350,Y=67544.9850,Z=28.39758,PH=6,PV=6,MD=NP_0252

1Tbw.189&D0:SOL_A

1Tbw.189&Q98:MAT_ANC=2Y.190,MOD_ANC=252

 

3ème cas :

1Tfm.2380:X=48991.6904,Y=67218.9164,Z=36.79900,PH=6,PV=6,MD=DP_POINT

1Tfm.2380&D0:SOL_A

1Tfm.2380&Q0:DATE_MODIF=17/08/12

1Tfm.2380&Q98:MAT_ANC=Cc.2010

 

4ème cas :

1Tzr.3349:X=49332.4355,Y=67257.3858,Z=40.01368,PH=6,PV=6,MD=DP_POINT

1Tzr.3349&D0:SOL_A

 

Mon but étant de créer l'objet point avec les coordonnées X, Y et Z et mettre dans des variables Autolisp du nom se trouvant devant le signe égal les valeurs pour mettre ces dernières en tant que Données d'Objets (xdatas évoluées de AutoCAD MAP).

 

Je n'ai pas d'idée sur le moyen de faire une sous boucle lorsque je trouve une ligne ou se trouve un X= pour lire les suivantes afin de récupérer le matricule et récupérer la ou les valeurs et aller après ces lignes.

 

Merci pour votre aide,

 

Bonne journée,

 

Fabcad,

extrait.txt

import_xyz-v2.lsp

Posté(e)

Bonjour

Je t’envoie un LISP écris il y a très longtemps pour exemple.

Pour un fichier de points plus simple

Cependant dans la logique de la programmation

Le fichier est composé d’Enregistrements sur une ligne dans le fichier

Ces enregistrement sont composés de Champs séparés par des caractères ( ; ou : ou autres)

Dans un Champ tu trouve des caractères alphanumériques (lettres et chiffres)

Il faut isoler les chiffres pour composer un Nombre défini par les ou la lettre qui précède (X,X=…)

Bonne analyse

Ton programme ne fonctionnera pas du 1er coup, place des balises pour identifier les cas particuliers. :blink:

P3.zip

  • 2 semaines après...
Posté(e)

Bonjour à tous,

 

J'ai joint dans le sujet les deux fichiers lisp et l'extrait du fichier d'extension xyz, j'ai du changer cette dernière car elle ne passait pas en pièce jointe.

 

Bonne journée,

 

Fabcad,

 

Le Rennais Métropolitain,

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité