Aller au contenu

lisp associer une ligne à chaque texte sélectionné


Messages recommandés

Posté(e)

Bonjour,

 

j'ai besoin d'un lisp qui me permettrait d'associer une ligne (disons d'une longueur définissable lors de l'exécution du lisp) au point d'insertion d'une multitude de textmult qui auraient été sélectionnés au préalable (ou lors de l'exécution du lisp).

 

[surligneur]Le but est en fait d'associer une ligne à des centaines de textmult d'un coup ![/surligneur]

 

merci

Posté(e)

Salut,

 

Vite fait, à adapter si ça ne convient pas parfaitement!

 

((lambda ( / js dxf_cod lg lremov dxf_10)
(princ "\nSélectionnez un MText modèle.")
(setq js
	(ssget "_+.:E:S"
		(list
			'(0 . "MTEXT")
			(cons 67 (if (eq (getvar "CVPORT") 1) 1 0))
			(cons 410 (getvar "CTAB"))
		)
	)
)
(cond
	(js
		(setq dxf_cod (entget (ssname js 0)))
		(initget 1)
		(setq lg (getdist "\nLongueur de la ligne: "))
		(foreach m (foreach n dxf_cod (if (not (member (car n) '(0 67 410 8 6 62 48 420 70))) (setq lremov (cons (car n) lremov))))
			(setq dxf_cod (vl-remove (assoc m dxf_cod) dxf_cod))
		)
		(setq js (ssget "_X" dxf_cod))
		(repeat (setq n (sslength js))
			(setq dxf_cod (entget (ssname js (setq n (1- n)))))
			(setq dxf_10 (cdr (assoc 10 dxf_cod)))
			(command "_.line" "_none" (trans dxf_10 0 1) "_none" (trans (polar dxf_10 (* pi 1.25) lg) 0 1) "")
		)
	)
)
(prin1)
))

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Posté(e)

Merci de te pencher sur mon problème Bonuscad, mais je n'arrive pas à faire fonctionner ce lisp ... j'ai aussi essayé de coller directement la ligne de codes dans la barre de commande mais rien n'y fait !

peut-être que tu as une astuce ?

Posté(e)

 

Hello

 

As tu essayé de taper au clavier :

 

(vl-load-com)

 

avant de copier/coller et donc d'exécuter le code de Bonuscad !?

 

Le Decapode (sans AutoCAD = Sniff)

 

Autodesk Expert Elite Team

Posté(e)

Désolé, j'avais pas suivi ce sujet.

 

coller directement la ligne de codes dans la barre de commande mais rien n'y fait !

 

Si rien ne se passe: différentes possibilités:

 

- Cela n'agit que dans l'onglet et l'espace papier/objet COURANT, donc ce placer dans le bon espace.

- Simplement il n'y a aucun MTEXT.

 

 

(vl-load-com)

Je pense pas car le code n'utilise pas de fonctions (vla-...) (vlax-...)

 

NB: Répéter le copier-coller dans chaque espace et chaque présentations pour traiter complètement le dessin. Je pense que tu veux te limiter à l'espace Objet...?

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Posté(e)

c'est effectivement pour l'espace objet, mais j'ai essayé de la faire fonctionner dans l'espace papier et sans résultat ! peut être que je ne fais pas la bonne manip ?

je colle le code dans la barre de commande, c'est bien ça ?

Posté(e)

la commande (vl-load-com) a fait des miracles

 

Ah bah tient! (vl-remove) a besoin de (vl-load), je ne pensais pas.

 

Au tant pour moi, ou Au temps pour moi (j'ai retenu la leçon)

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

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é