Aller au contenu

Messages recommandés

Posté(e)

bonjour a tous

 

Je voudrais apres avoir selectionné dans mon dessin les textes de couleur 12 , pouvoir insérer sur ceux-ci un bloc que j'ai creé.

Est ce possible si oui quelle est la marche a suivre.

Merci d'avance

 

Mujjji

Posté(e)

Comme ça, je dirais que c'est pas possible, à par passer par une routine.

Nous n’ héritons pas de la terre de nos ancêtres.Nous l’empruntons à nos enfants.

Posté(e)

Salut,

 

Juste une ligne de LISP à copier/coller sur la ligne de commande.

 

(command "_.-block" "MonBloc" '(0.0 0.0 0.0) (ssget "_X" '((0 . "*TEXT") (62 . 12))) "")

 

Tu peux remplacer "MonBloc" par n'importe quel autre nom pourvu que tu le mettes entre guillemets.

 

Tu peux remplacer '(0.0 0.0 0.0) par le point d'insertion que tu veux (respecte toujours la syntaxe : apostrophe, parenthèse ouvrante, X, espace, Y, espace, Z, espace, parenthèse fermante).

 

Telle quelle la routine sélectionne tous les types de texte (textes simples et textes multilignes, pour ne sélectionner que les textes simples remplace "*TEXT" par "TEXT" ou "MTEXT" pour les textes multilignes uniquement.

 

NOTA : seuls les textes sur de calques dévérouillés seront sélectionnés, il faut se mettre dans le SCG avant d lancer la routine.

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

Posté(e)

Hello

 

Je crois que Mujji voulait que son bloc soit inseré automatiquement au dessus de tous ses textes existant

 

J 'ai essaye mais j 'ai message d'erreur mais j'suis vraiment pas douée

 

;)

Bonne journée

Posté(e)

Maintenant que Esbe à reformulé la question, plutôt ceci:

 

((lambda ( / )
(setq js (ssget "_X" '((0 . "TEXT") (62 . 12))) n -1)
(cond
	(js
		(while (null (tblsearch "BLOCK" (setq name_blk (getstring T "\nNom du bloc à inserer?: ")))))
		(repeat (sslength js)
			(setq p_ins (trans (cdr (assoc 10 (entget (setq ent (ssname js (setq n (1+ n))))))) ent 1))
			(command "_.-insert" name_blk p_ins 1.0 1.0 0.0)
		)
		(initget "Oui Non")
		(if (eq (getkword "\nEffacer les texte [Oui/Non] < Non > : ") "Oui")
			(command "_.erase" js "")
		)
	)
)
))

 

Ceci pour un bloc sans attributs inséré à l'échelle 1 et rotation 0.0

Modifier la ligne (command "_.-insert" name_blk p_ins 1.0 1.0 0.0) pour tes besoins

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é