LUDWIG Posté(e) le 10 janvier 2017 Posté(e) le 10 janvier 2017 Bonjour à tous ! Je fais suite à ce message qui état un programme pour forcer les propriétés d'une entité si la propriété existe. J'essaye d'y ajouter la propriété LINETYPE mais j'ai un message d'erreur systématique "erreur: AutoCAD.Application: Clé introuvable" (defun c:FPROP () (vl-load-com) (setq a (vla-get-blocks (vla-get-activedocument (vlax-get-acad-object)))) (vlax-for bl a (vlax-for ent bl ;;;(if(vlax-property-available-p ent 'thickness T)(vla-put-thickness ent 0)) ;thichkness= épaisseur ;;;(if(vlax-property-available-p ent 'entitytransparency T)(vla-put-entitytransparency ent "Dubloc")) ;transparence dubloc ;;;(if(vlax-property-available-p ent 'linetype T)(vla-put-linetype ent "Dubloc")) ;type de ligne dubloc ;;;(if(vlax-property-available-p ent 'color T)(vla-put-color ent 0)) ;0=couleur dubloc ;;;(if(vlax-property-available-p ent 'constantwidth T)(vla-put-constantwidth ent 0)) ;;;(if(vlax-property-available-p ent 'lineweight T)(vla-put-lineweight ent -3)) ;-3= épaisseur de ligne par défaut ;;;(if(vlax-property-available-p ent 'layer T)(vla-put-layer ent "0")) ;caLQUE 0 (mapcar '(lambda(a B)(if (vlax-property-available-p ent a) (vlax-put ent a B))) (list 'linetype 'thickness 'entitytransparency 'color 'constantwidth 'lineweight) '("Dubloc" 0 "Dubloc" 0 0 -3)) ) ) (vla-regen (vla-get-activedocument (vlax-get-acad-object)) acActiveViewport) ) J'imagine qu'il y a une subtilité, quelqu'un pourrait-il m'aide à la trouver ?Merci d'avance ! Autocad 2021 - Revit 2022 - Windows 10
Patrick_35 Posté(e) le 10 janvier 2017 Posté(e) le 10 janvier 2017 Salut Remplace "Dubloc" par "ByBlock" @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
GEGEMATIC Posté(e) le 10 janvier 2017 Posté(e) le 10 janvier 2017 salut,la subtilité c'est qu'il faut traduire la propriétéremplace '("Dubloc" 0 "Dubloc" 0 0 -3)par'("ByBlock" 0 "ByBlock" 0 0 -3)et ça va très bien marcher !sinon je trouve ton truc très bien fait, avec le lambda sur 2 listes ...a+gégé ----------------------------------------------------------------------Site: https://www.g-eaux.frBlog: http://g-eaux.over-blog.com
LUDWIG Posté(e) le 10 janvier 2017 Auteur Posté(e) le 10 janvier 2017 Tout simplement ??? C'est fou !! Merci ! sinon je trouve ton truc très bien fait, avec le lambda sur 2 listes ...C'est gentil ... mais rendons à César... C'est une astuce de Patrick_35 Autocad 2021 - Revit 2022 - Windows 10
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