Aller au contenu

accée au donné d\'une liste


Messages recommandés

Posté(e)

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

 

 

Posté(e)

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

 

./__\.
(.°=°.)
Posté(e)

salut

 

merci pour ta réponse ! et l'information

 

ok ! je vais corrigée mon prog

et je fait un test !

 

merci

 

amicalement doua

 

 

 

Posté(e)

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

 

Posté(e)

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

 

./__\.
(.°=°.)

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é