dfbiagio Posté(e) le 17 décembre 2018 Posté(e) le 17 décembre 2018 Bonjour,Ce matin, j'ai essayé ceci: Commande: (setq hh (entget (car (entsel))))Choix de l'objet: ((-1 . <Nom d'entité: 2d1d7971e90>) (0 . "HATCH") (330 . <Nom d'entité: 2d1d797f9f0>) (5 . "309") (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "0") (100 . "AcDbHatch") (10 0.0 0.0 0.0) (210 0.0 0.0 1.0) (2 . "ANSI32") (70 . 0) (71 . 1) (91 . 1) (92 . 7) (72 . 0) (73 . 1) (93 . 4) (10 -46.0191 -10.0351 0.0) (10 -51.827 -10.0351 0.0) (10 -51.827 -13.4211 0.0) (10 -46.0191 -13.4211 0.0) (97 . 1) (330 . <Nom d'entité: 2d1d7971e20>) (75 . 1) (76 . 1) (52 . 0.0) (41 . 1.0) (77 . 0) (78 . 2) (53 . 0.785398) (43 . -51.827) (44 . -13.4211) (45 . -6.73519) (46 . 6.73519) (79 . 0) (53 . 0.785398) (43 . -47.3369) (44 . -13.4211) (45 . -6.73519) (46 . 6.73519) (79 . 0) (47 . 0.0806203) (98 . 1) (10 -48.7617 -11.325 0.0))Commande: (entmod (subst (cons 41 2)(assoc 41 hh) hh))((-1 . <Nom d'entité: 2d1d7971e90>) (0 . "HATCH") (330 . <Nom d'entité: 2d1d797f9f0>) (5 . "309") (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "0") (100 . "AcDbHatch") (10 0.0 0.0 0.0) (210 0.0 0.0 1.0) (2 . "ANSI32") (70 . 0) (71 . 1) (91 . 1) (92 . 7) (72 . 0) (73 . 1) (93 . 4) (10 -46.0191 -10.0351 0.0) (10 -51.827 -10.0351 0.0) (10 -51.827 -13.4211 0.0) (10 -46.0191 -13.4211 0.0) (97 . 1) (330 . <Nom d'entité: 2d1d7971e20>) (75 . 1) (76 . 1) (52 . 0.0) (41 . 2) (77 . 0) (78 . 2) (53 . 0.785398) (43 . -51.827) (44 . -13.4211) (45 . -6.73519) (46 . 6.73519) (79 . 0) (53 . 0.785398) (43 . -47.3369) (44 . -13.4211) (45 . -6.73519) (46 . 6.73519) (79 . 0) (47 . 0.0806203) (98 . 1) (10 -48.7617 -11.325 0.0)) pour modifier des hachures. Comme on peut le voir, ça fonctionne bien et lorsque je clique sur l'hachure, dans les propriétés c'est bien changé, mais visuellement à l'écran rien n'a changé. Je me demande pourquoi. Qlq a une réponse.Merci d'avance.
didier Posté(e) le 17 décembre 2018 Posté(e) le 17 décembre 2018 Coucou Je ne vais pas répondre à ta question avec les codes DXF car j'ai déjà remarqué ce cas de figure que j'ai contourné ainsi (defun c:test-hach ( / hh ech) (setq hh (car (entsel))) (alert (strcat "actuellement ces hachures ont une échelle de :" (rtos (getpropertyvalue hh "PatternScale") 2 2))) (setq ech (getreal "\nNouvelle échelle des hachures : \n")) (setpropertyvalue hh "PatternScale" ech) ) Amicalement Éternel débutant... Mon site perso : Programmer dans AutoCAD
zebulon_ Posté(e) le 17 décembre 2018 Posté(e) le 17 décembre 2018 (modifié) Bonjour, c'est curieux en effet ! Essaie ceci : (setq hh (car (entsel))) (setpropertyvalue hh "PatternScale" 2) Bien entendu, on dispose aussi du getpropertyvalueCommande: (getpropertyvalue hh "PatternScale")2.0 AmicalementVincent Ah, trop tard, Didier a déjà répondu. Modifié le 17 décembre 2018 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)
zebulon_ Posté(e) le 17 décembre 2018 Posté(e) le 17 décembre 2018 Avec les fonctions vlisp ça marche aussi, mais ce n'est pas plus simple. En même temps, c'est difficile de faire plus simple que deux lignes de code. (setq hh (car (entsel))) (setq obj (vlax-ename->vla-object hh)) (vla-put-patternscale obj 2) Ici aussi, on dispose de la fonction vla-getCommande: (vla-get-patternscale obj)2.0 AmicalementVincent 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)
Patrick_35 Posté(e) le 17 décembre 2018 Posté(e) le 17 décembre 2018 Avec les fonctions vlisp ça marche aussi, mais ce n'est pas plus simple. En même temps, c'est difficile de faire plus simple que deux lignes de code. Salut Un oxymore ? ;) @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
zebulon_ Posté(e) le 17 décembre 2018 Posté(e) le 17 décembre 2018 Salut Un oxymore ? ;) @+ J'ai utilisé cette figure de style ? Dans l'affirmative, c'est à l'insu de mon plein gré !Sombre clarté - Silence assourdissant sont des exemples d'oxymores. Je pensais plutôt à des synonymes quand j'ai écrit ce que j'ai écrit. AmicalementVincent 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)
dfbiagio Posté(e) le 17 décembre 2018 Auteur Posté(e) le 17 décembre 2018 Bonsoir,Voici les résultats de mes essais: Command: test-hach Select object: ; error: no function definition: GETPROPERTYVALUE Command:Command: (vl-load-com) Command: TEST-HACH Select object: ; error: no function definition: GETPROPERTYVALUE Command:Command: (setq hh (car (entsel)))Select object: <Entity name: 7ffff72d350>Command: (setpropertyvalue hh "PatternScale" 2); error: no function definition: SETPROPERTYVALUEMerci de m'éclairer.Bàv
Olivier Eckmann Posté(e) le 17 décembre 2018 Posté(e) le 17 décembre 2018 Bonjour, Les fonctions setpropertyvalue et getpropertyvalue sont apparues avec AutoCAD 2012. Si tu utilises une version plus anciennes alors il faut recourir au VLisp, (message 4 de zebulon). Olivier
dfbiagio Posté(e) le 18 décembre 2018 Auteur Posté(e) le 18 décembre 2018 Effectivement, à la maison, j'utilise la version 2011 et ça ne fonctionnait pas et ici au bureau, c'est la version 2019 et ça fonctionne.Merci
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