fabcad Posté(e) le 7 novembre 2013 Posté(e) le 7 novembre 2013 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_POINT1Tbw.179&D0:SOL_A1Tbw.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_02521Tbw.189&D0:SOL_A1Tbw.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_POINT1Tfm.2380&D0:SOL_A1Tfm.2380&Q0:DATE_MODIF=17/08/121Tfm.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_POINT1Tzr.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.txtimport_xyz-v2.lsp
CDL Posté(e) le 7 novembre 2013 Posté(e) le 7 novembre 2013 BonjourJe t’envoie un LISP écris il y a très longtemps pour exemple.Pour un fichier de points plus simpleCependant dans la logique de la programmationLe fichier est composé d’Enregistrements sur une ligne dans le fichierCes 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 analyseTon programme ne fonctionnera pas du 1er coup, place des balises pour identifier les cas particuliers. :blink:P3.zip
fabcad Posté(e) le 20 novembre 2013 Auteur Posté(e) le 20 novembre 2013 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,
Messages recommandés
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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant