PHILPHIL Posté(e) le 2 octobre 2018 Posté(e) le 2 octobre 2018 Bonjour je suis sous AUTOCAD ARCHITECTURE et j'utilise les entitées AEC "ESPACE" qui ont des données étenduesrépartie dans des "jeux de propriété" une commande "PROPERTYSETDUMP" m'affiche la liste a l'écran des données etendue d'un jeu de propriété donné en LISP ou VISUAL-LISP comment pourrais je récupéré la liste a l'écran en liste utilisable dans un programme LISP je n'ai pas trouvé de dictionnaire dans le fichier *.dwg listant ces données (("19"."HautSolFini"."Real"."Faux")("20"."HautSolBrut"."Real"."Faux") ...) merci Phil Commande: PROPERTYSETDUMP Sélectionnez l'entité avec les données de propriété: Nom de la définition du jeu de propriétés <*>: AIRE <<<<<<<<<<<<<<< PROPERTY SET >>>>>>>>>>>>>>> SET DEF: AIRE OBJ ATTACHED TO: <AecDbSpace 7F7E> PROPERTIES -------> ID: 19 NAME: HautSolFini DATA TYPE: Real UNSPECIFIED: Faux ID: 20 NAME: HautSolBrut DATA TYPE: Real UNSPECIFIED: Faux ID: 22 NAME: HautSousPlafond DATA TYPE: Real UNSPECIFIED: Faux ID: 27 NAME: Numerotation DATA TYPE: Integer UNSPECIFIED: Faux ID: 30 NAME: PIECE_ATTACHEE DATA TYPE: Text UNSPECIFIED: Faux ID: 43 NAME: NOM01 DATA TYPE: Text UNSPECIFIED: Faux ID: 44 NAME: NOM02 DATA TYPE: Text UNSPECIFIED: Faux ID: 56 NAME: TYPE_SOL DATA TYPE: Text UNSPECIFIED: Faux ID: 57 NAME: TYPE_PLAFOND DATA TYPE: Text UNSPECIFIED: Faux ID: 58 NAME: TYPE_MUR DATA TYPE: Text UNSPECIFIED: Faux ID: 59 NAME: TYPE_MUR1 DATA TYPE: Text UNSPECIFIED: Faux ID: 69 NAME: NIVEAU DATA TYPE: Integer UNSPECIFIED: Faux FREELANCE Autodesk Architecture 2025 sous windows 11 64 REVIT 24 pouces vertical + 30 pouces horizontal + 27 pouces horizontal
Matt666 Posté(e) le 22 janvier 2019 Posté(e) le 22 janvier 2019 Salut, il est un peu tard pour te répondre, mais bon.Je n'ai pas Autocad (je travaille sur Bricscad), donc encore moins sur AutoCAD architecture.Mais s'il s'agit de récupérer des données générées dans la liste de commande, tu pourrais faire ainsi : Toutes les données inscrites dans la liste de commande sont récupérées dans un fichier texte (getvar 'LogFileName).Essaie ceci, et dis moi le résultat en tapant (logfileexport) puis !l pour voir le résultat.(defun logfileexport ( / cmdecho logfilemode qaflags f line) (setq cmdecho (getvar 'cmdecho) logfilemode (getvar 'logfilemode) qaflags (getvar 'qaflags) ) (setvar 'cmdecho 0) (setvar 'logfilemode 1) ;purger le fichier texte (setq f (open (getvar 'LogFileName) "w")) (write-line "" f) (close f) (command "_LOGFILEON") (setvar 'qaflags 2) (setvar 'cmdecho 1) ;attention, bien vérifier que la commande est la bonne. (command "_PROPERTYSETDUMP" "_AREA") ;exemple de commande qui fonctionne : ;(command "_-layer" "?" "*" "") (setvar 'qaflags qaflags) (setvar 'cmdecho cmdecho) (command "_LOGFILEOFF") ;transformer le fichier en liste (setq f (open (getvar 'LogFileName) "R")) (while (setq line (read-line f)) (setq l (cons line l)) ) (close f) l ) "Chacun compte pour un, et nul ne compte pour plus d'un."
PHILPHIL Posté(e) le 22 janvier 2019 Auteur Posté(e) le 22 janvier 2019 hello MAT666 merci pour ta reponse j'ai corrigé certaines lignes (defun c:logfileexport2 (/ cmdecho logfilemode qaflags f line) (setq cmdecho (getvar "cmdecho") logfilemode (getvar "logfilemode") qaflags (getvar "qaflags") l nil ) (setvar "cmdecho" 0) (setvar "logfilemode" 1) ;purger le fichier texte (setq f (open (getvar "LogFileName") "w")) (write-line "" f) ;;; (close f) (command "FICHJOURNAC") (setvar "qaflags" 2) (setvar "cmdecho" 1) ;attention, bien vérifier que la commande est la bonne. (command "_PROPERTYSETDUMP" pause "AIRE") ;exemple de commande qui fonctionne : ;(command "_-layer" "?" "*" "") (setvar "qaflags" qaflags) (setvar "cmdecho" cmdecho) (command "FICHJOURNIN") ;transformer le fichier en liste (setq f (open (getvar "LogFileName") "R")) (while (setq line (read-line f)) (setq l (cons line l))) (close f) l ) le premier ( close f ) fait planter le lisp, je l'ai retiré en tapant "!l" j'ai la meme liste et plus merci Phil FREELANCE Autodesk Architecture 2025 sous windows 11 64 REVIT 24 pouces vertical + 30 pouces horizontal + 27 pouces horizontal
Matt666 Posté(e) le 22 janvier 2019 Posté(e) le 22 janvier 2019 C'est curieux que la fonction close plante mais bon si ça fonctionne de ton côté alors tant mieux.Attnetion toutefois à s'assurer que le fichier logfile soit bien rempli après sortie du Lisp,comme il l'était avant. "Chacun compte pour un, et nul ne compte pour plus d'un."
Messages recommandés
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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant