doua Posté(e) le 28 avril 2006 Posté(e) le 28 avril 2006 salut, j'ai un programme de nomenclature automatique qui se fait à partir d'un fichier qui contient des calques ces derniers contiennent des titre et un numéro de folio. alors les variable que j'ai : j'ai la liste des ces calques "listecalq"j'ai un liste paire qui me rassemble (titre,folio) "titrcalq" ce que j'aimerais savoir c'est : comment je peux avec le lisp parcourir calque par calque? comment activer un calque spécifier "001" par exemple (c'est le calque ou je vais coller le titre +n° folio ) comment pourrais-je ecrire dans un point spécifier (x,y) et le faire incrémenter de telle façon à obtenir les titre les un sous les autres avec un décalage = "Z" ça c'est une partie du programme que j'ai essayée mais il ya qlq qui manque ou bien il est mal fait !! (setq i 0) (setq x1 "19.7864") (setq x2 "58.2213") (setq y2 "243.2334") (setq y1 "243.0138") (setq coord1 (strcat x1 "," y1)) (setq coord2 (strcat x2 "," y2)) (setq decal1 coord1) (setq decal2 coord2) (setq text1 (car(nth i listenom))) (setq text2 (cadr(nth i listenom))) (command "_text" decal1 "" "" text1 "") (command "_text" decal2 "" "" text2 "") (setq y1 (+ 5 y1)) (setq y2 (+ 5 y2)) (setq i (+ 1 i)) merci à vous amicalement doua
Tramber Posté(e) le 28 avril 2006 Posté(e) le 28 avril 2006 Ton message est trop long ! Trop de questions.(setq y1 (+ 5 y1)) n'est pas possible car y1 est une chaine qu'il faut convertir. (setq y1 (+ 5 (atof y1))) renvoie un résultat correct. Mais revenons en arrière, pour composer un point, créer une liste suffit Ce qui donne (setq x1 19.7864) (setq x2 58.2213) (setq y2 243.2334) (setq y1 243.0138) (setq coord1 (list x1 y1)) (setq coord2 (list x2 y2)) Pour créer (ou Etablir même s'il n'existe pas) un calque, la syntaxe est : (command "calque" "E" nom "")ou(command "calque" "E" (nth i listcalquesenchainedecaractere) "") Bureau d'études dessin. Spécialiste Escaliers Développement - Formation ./__\. (.°=°.)
doua Posté(e) le 28 avril 2006 Auteur Posté(e) le 28 avril 2006 salut merci pour ta réponse ! et l'information ok ! je vais corrigée mon prog et je fait un test ! merci amicalement doua
doua Posté(e) le 28 avril 2006 Auteur Posté(e) le 28 avril 2006 RE, Tramber on fait j'ai tester (command "calque" "E" nom ""), on fait elle m'active^pas le calque que je lui donne exemple command "calque" "E" "001" "") stp je veux activer un calque spécifier dans un 1er temps ! merci
Tramber Posté(e) le 28 avril 2006 Posté(e) le 28 avril 2006 Je regrette :( command "calque" "E" "001" "")fonctionne correctement ! Tu aurais du poster dans ce forum. Pour incrémenter Z on peut faire (setq Z+ 100) (setq coord1(list(car coord1)(cadr coord1)Z+)) Bureau d'études dessin. Spécialiste Escaliers Développement - Formation ./__\. (.°=°.)
doua Posté(e) le 29 avril 2006 Auteur Posté(e) le 29 avril 2006 ;) salut tramber merci pour ton aide ! amicalement doua
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