vindaro Posté(e) le 10 août 2010 Posté(e) le 10 août 2010 Bonjour tout le monde, Voilà j'ai un souci j'avais commencé un sujet dans Autocad 2010 pour savoir s'il fallait utiliser plutôt "enregistrer une action" ou créer une macro en vba... Après plusieurs échanges avec entr'autres (gile) je suis arrivé à cette dernière question (qu'il m'a conseillé de poster sur ce forum): Sur Autocad 2008 lorsque j'ouvre un dessin et que je dessine une polyligne de la couleur du calque et je lance la macro suivante: Public Sub essai()Dim objSS As AcadSelectionSetDim intCodes(0) As IntegerDim varCodeValues(0) As Variant Set objSS = ThisDrawing.SelectionSets.Add("2") intCodes(0) = 0varCodeValues(0) = "LWpolyline" objSS.Select acSelectionSetAll, , , intCodes, varCodeValues objSS.Erase ThisDrawing.Regen acAllViewportsThisDrawing.SelectionSets("2").Delete End Sub Là la polyligne est supprimée...je lance la même macro en changeant la couleur en couleur 30 et je modifie la macro en ajoutant le code 62 et la couleur 30. La polyligne est supprimée...Je fait de même en changeant la couleur en couleur RGB 191,210,97 et en remplacant le code 62 par le code 420 et la couleur 30 par 12571233 (récupéré avec l'application que m'as donné (gile)): (-1 . (0 . "LWPOLYLINE") (330 . (5 . "190") (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "0") (62 . 53) (420 . 12571233) (100 . "AcDbPolyline") (90 . 6) (70 . 128) (43 . 0.0) (38 . 0.0) (39 . 0.0) (10 4.34426 4.51881) (40 . 0.0) (41 . 0.0) (42 . 0.0) (10 6.77143 6.72875) (40 . 0.0) (41 . 0.0) (42 . 0.0) (10 9.98884 5.2053) (40 . 0.0) (41 . 0.0) (42 . 0.0) (10 7.44878 3.00476) (40 . 0.0) (41 . 0.0) (42 . 0.0) (10 5.22857 2.58158) (40 . 0.0) (41 . 0.0) (42 . 0.0) (10 2.09583 4.28371) (40 . 0.0) (41 . 0.0) (42 . 0.0) (210 0.0 0.0 1.0) J'ai la réponse suivante sur la fenêtre de la commande:"Autocad ne peut gérer la demande d'autorisation de service"et dans la fenêtre autocad sur la ligne de commande j'ai "That command may not be invoked transaprently" J'ouvre alors un nouveau dessin je refais une polyligne de la même couleur que précédemment je vérifie en lançant le lisp (-1 . (0 . "LWPOLYLINE") (330 . (5 . "18B") (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "0") (62 . 53) (420 . 12571233) (100 . "AcDbPolyline") (90 . 6) (70 . 128) (43 . 0.0) (38 . 0.0) (39 . 0.0) (10 1.30087e+007 6.26326e+006) (40 . 0.0) (41 . 0.0) (42 . 0.0) (10 1.30087e+007 6.26326e+006) (40 . 0.0) (41 . 0.0) (42 . 0.0) (10 1.30087e+007 6.26326e+006) (40 . 0.0) (41 . 0.0) (42 . 0.0) (10 1.30087e+007 6.26326e+006) (40 . 0.0) (41 . 0.0) (42 . 0.0) (10 1.30087e+007 6.26326e+006) (40 . 0.0) (41 . 0.0) (42 . 0.0) (10 1.30087e+007 6.26326e+006) (40 . 0.0) (41 . 0.0) (42 . 0.0) (210 0.0 0.0 1.0) Là la macro va jusqu'au bout mais ne me supprime pas la polyligne... J'avoue que je ne comprends pas pourquoi la polyligne est supprimée avec la macro lorsque je lui précise la couleur 0-256 mais pas la couleur RGB? Est ce que ca viendrait de ce message? Et il en est de même pour les épaisseurs de ligne en code 370 qu'il ne reconnait pas... Auriez-vous un début de réponse? Merci d'avance. NB: Cette macro fonctionne correctement si j'utilise Autocad 2010 (les autres étant en vacances j'ai pu essayer sur leur poste) Je me demande également comment:1- sélectionner des hachures d'une couleur RGB2-de les transformer en couleur 0 - 2563- de les mettre en arrière-plan. Merci d'avance pour vos réponses.
winfield Posté(e) le 11 août 2010 Posté(e) le 11 août 2010 Slt .... je modifie la macro en ajoutant le code 62 et la couleur 30 ... peut-on voir ce code ? Comme ça, à froid, je dirais :a) une mauvaise utilisationd des codes dxf ?b) un oubli de déclaration du RGB ? Je me demande également comment:1- sélectionner des hachures d'une couleur RGB2-de les transformer en couleur 0 - 2563- de les mettre en arrière-plan. Pour le 1 et 2, voir petit bPour le 3, fais une recherche sur "ACAD_SORTENTS" dans l'Aide d'Acad ou sur le forum VB/VBA, il y a des exemples dont un de moi, par contre je ne saurais pas t'aiguiller pour le mot clé. 3- de les mettre en arrière-plan. Je croyais qu'Acad 2010 le faisait automaiquement ?! ... à moins que ça ne soit que pour l'impression ?! m'enfin ... bon courage et bonne continuation Nous n’ héritons pas de la terre de nos ancêtres.Nous l’empruntons à nos enfants.
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