Jump to content

[Résolu] Repérage rapide


Recommended Posts

utilise cette macro :

^C^C(cdr(assoc 2(entget(car(entsel)))))

, glissée dans un bouton.

 

Ou alors, utilise Bubble de Mcneels, c'est gratuit :

 

http://www.bubblecad.com/

http://www.abcad.fr/images/logo_courrier.png


Bureau d'études dessin.

Spécialiste Escaliers

Développement - Formation

 

./__\.

(.°=°.)
Link to post
Share on other sites

Dans le même esprit que la réponse de Tramber, mais développé dans ton sens:

 

(defun c:lead_block-name ( / ent dxf_ent typ_ent blk_name pt_lst pt)
(while (null (setq ent (entsel "\nChoix de l'entité: "))))
(setq
	dxf_ent (entget (car ent))
	typ_ent (cdr (assoc 0 dxf_ent))
)
(if (eq typ_ent "INSERT")
	(progn
		(setq 
			blk_name (cdr (assoc 2 dxf_ent))
			pt_lst (list (trans (cdr (assoc 10 dxf_ent)) (car ent) 1))
		)
		(while (setq pt (getpoint (car pt_lst) "\nIndiquez le point suivant: "))
			(setq pt_lst (cons pt pt_lst))
		)
		(command "_.leader")
		(foreach n (reverse pt_lst) (command n))
		(command "" blk_name "")
	)
	(princ "\nEntité n'est pas une insertion de bloc!")
)
(prin1)
)

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

Link to post
Share on other sites
  • 6 years later...

je reviens vers vous concernant ce lisp, mais, j'ai une petite question

Y-a-t'il possibilité de changer le point d'origine du nom du bloc, c'est à dire qu'au lieu que le nom du bloc parte de l'origine du bloc, il parte de la ou l'on clic sur le bloc.? (car parfois, dans mon cas, il faut que je déplace la flèche et le texte)

 

je sais pas si je me fais comprendre.

 

par avance merci

Link to post
Share on other sites

justement, c'est un mélange des 2.

le principe des lignes de repères qui permet de mettre le repère la ou on veut, et la "puissance" du lisp pour donner le nom du bloc

 

pour la ligne de repère, on clique la ou on veut et on écrit le nom du bloc ou autre chose.

 

pour le lisp, on clique sur le nom du bloc et il nous place le repère sur l'origine du bloc (et on a pas le choix de l'emplacement.

 

je voudrais un mélange des 2

 

on clic sur le bloc la ou on veut et il nous ecrit le nom du bloc....

Link to post
Share on other sites

Y-a-t'il possibilité de changer le point d'origine du nom du bloc, c'est à dire qu'au lieu que le nom du bloc parte de l'origine du bloc, il parte de la ou l'on clic sur le bloc.?

 

Bonjour,

 

Changes l'expression

pt_lst (list (trans (cdr (assoc 10 dxf_ent)) (car ent) 1)) 

par

pt_lst (list (osnap (trans (cadr ent) (car ent) 01) "_near")) 

 

Si la sélection se fait sur un texte ou un attribut constituant du bloc, pour que le code fonctionne, on peut l'envisager sous cette forme:

 

(defun c:lead_block-name ( / ent dxf_ent typ_ent blk_name pt_lst pt)
 (while (null (setq ent (entsel "\nChoix de l'entité: "))))
 (setq
   dxf_ent (entget (car ent))
   typ_ent (cdr (assoc 0 dxf_ent))
 )
 (if (eq typ_ent "INSERT")
   (progn
     (setq 
       blk_name (cdr (assoc 2 dxf_ent))
       pt_lst (osnap (trans (cadr ent) (car ent) 0) "_near")
     )
     (if (not pt_lst)
       (setq pt_lst (list (osnap (trans (cadr ent) (car ent) 0) "_ins")))
       (setq pt_lst (list pt_lst))
     )
     (while (setq pt (getpoint (car pt_lst) "\nIndiquez le point suivant: "))
       (setq pt_lst (cons pt pt_lst))
     )
     (command "_.leader")
     (foreach n (reverse pt_lst) (command "_none" n))
     (command "" blk_name "")
   )
   (princ "\nEntité n'est pas une insertion de bloc!")
 )
 (prin1)
)

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

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...