Aller au contenu

Messages recommandés

Posté(e)

bonjour,

je cherche la commande lisp qui permet de sélectionné plusieurs entités du dessin courant (avec le mode de sélétion capture de la sourie)

je connais la command (entsel) mais celle-ci ne marche que pour un objet

 

le but de mon programme c'est d'automatisé la commande d'extraction d'attribut avec un liste de bloc défini par l'utilisateur

 

programme :

 

(defun c:extnomen ()

;remise à zero des valiable

(setq acro nil)

(setq listeobj nil)

 

;déactivation de l'acrochage objet

(setq acro (getvar "osmode"))

(setvar "osmode" 0)

 

;saisie liste des objets

(setq cheminnomenclature (getvar "dwgprefix"))

(setq listeobj (entsel "\n sélectunné la nomenclature acier"))

 

;extraction des attributs vers fichier xls

(command

"-eattext"

"o"

"n"

"n"

"o"

"C:/bibliothèques/programation/extrac nomenclature/nomenclature.blk"

"x"

(strcat cheminnomenclature "nomenclature.xls")

"o"

)

;réactivation de l'acrochage objet

 

(setvar "osmode" acro)

 

)

 

merci d'avance

Posté(e)

Bonjour,

 

la fonction ssget (qui crée un jeu de sélection) devrait faire ton bonheur. Fait une recherche du mot ssget dans l'aide de visual lisp et sur cadxp. Le sujet a été traité plusieurs fois.

Regarde aussi les fonctions ssname, ssadd, ssdel, sslength et ssmemb. (ss c'est pour selection set, c'est à dire jeu de sélection)

 

Amicalement

Zebulon_

 

 

[Edité le 7/8/2007 par zebulon_]

C'est au pied du mur que l'on reconnaît le maçon ! (Anonyme)

C’est en restant au pied du mur qu’on ne voit que le mur (Anonyme aussi)

Posté(e)

j'ai encore un petite question

je n'arrive pas à utiliser un jeu de sélection dans la commande "-eattext" !

es possible?

 

(setq listeobj (ssget))

 

;extraction des attributs vers fichier xls

(command "-eattext" "o" listeobj "n" "n" "o" "C:/bibliothèques/programation/extrac nomenclature/nomenclature.blk" "x" (strcat cheminnomenclature "nomenclature.xls") "o")

 

merci d 'avance

salutation

Posté(e)

Salut,

 

je n'ai pas testé, mais il faudrait terminer la sélection avec un "" après listeobj :

(command "-eattext"
 "o"
 listeobj
 ""
 "n"
 "n"
 "o"
 "C:/bibliothèques/programation/extrac nomenclature/nomenclature.blk"
 "x"
 (strcat cheminnomenclature "nomenclature.xls")
 "o"
) 

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

Posté(e)

"", ça devrait le faire.

 

Juste un petit détail : comme la commande -eattext ne concerne que des blocs, autant les filtrer tout de suite avec la commande ssget, pour empêcher l'utilisateur (qu'est ce qu'il peut faire comme conneries celui là !!!) de saisir autre chose que des blocs.

 

(setq listeobj (ssget '((0 . "INSERT"))))

 

Amicalement

Zebulon_

 

PS : très puissante la fonction ssget, elle permet différents modes d'utilisation, de filtrer le jeu de sélection, avec des tests relationnels (= < > /= etc...) ou des regroupements logiques (or and xor et not).

C'est au pied du mur que l'on reconnaît le maçon ! (Anonyme)

C’est en restant au pied du mur qu’on ne voit que le mur (Anonyme aussi)

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é