La Lozère Posté(e) le 10 juillet 2015 Posté(e) le 10 juillet 2015 Hello,Sur Autocad 2013, il n'est pas possible d'inverser par paquet le type d'attachement de plusieurs XREF (Association/Superposition). Il me semble avoir vu un sujet là-dessus en passant par un lisp. Mais impossible de remettre la main dessus.Quelqu'un aurait-il ça dans ça besace? Et sauf erreur de ma part, ce n'est pas possible via le gestionnaire de références. A plus www.cad-is.fr Autocad Map 2021 - Covadis/Autopiste V18.0c Pisser sous la douche ne suffira pas
x_all Posté(e) le 10 juillet 2015 Posté(e) le 10 juillet 2015 il y avait ça:http://cadxp.com/topic/15660-edition-des-chemins-des-xref/mais c’était pour le chemin absolut relatif Pour transformer les Rxef en bloc, il y a un moyen simple en passant par un Etransmit tu coche l'option lier les Xref.. dans les option de transfer quelques trucs sur autocad
GEGEMATIC Posté(e) le 10 juillet 2015 Posté(e) le 10 juillet 2015 Hello,Sur Autocad 2013, il n'est pas possible d'inverser par paquet le type d'attachement de plusieurs XREF (Association/Superposition). Il me semble avoir vu un sujet là-dessus en passant par un lisp. Mais impossible de remettre la main dessus.Quelqu'un aurait-il ça dans ça besace? Et sauf erreur de ma part, ce n'est pas possible via le gestionnaire de références. A plusSalut,tu as raison c'est possible avec la 2015, mais pas avec la 2013:suaf en utilisant le lisp pour mac setpropertyvalue ci dessous un exemple pour les mettre en superposition:a+gégé ; **************************************************************************** ;;§/xref/change toutes les xref de type overlay /none (defun c:MakeAllXrefOverlay ( / nom blocks sel lsel eblockref oblock flags ) (setq sel (pw_SsgetX_Xref)) (foreach eblockref (pw_listsel sel) (setq oblock (pw_retoBlock eblockref)) (if (= :vlax-true (vla-get-isxref oblock)) (progn (setq eblock (pw_to_ename oblock)) (setq egBlock (entget eblock)) (setq Flags (cdr (assoc 70 egBlock))) (if (= (boole 1 Flags 8) 8) ; that means that this block in an overlay xref (prompt "\nAllready Overlay xref") (setpropertyvalue eblock "IsFromOverlayReference" 1) ) ) (prompt "\nNot an xref") ) ) ) ; **************************************************************************** ;;§/xref/Liste toutes les xrefs de type Attached /none (defun c:ListAllXrefAttached ( / nom blocks sel lsel eblockref oblock flags ) (setq sel (pw_SsgetX_Xref)) (foreach eblockref (pw_listsel sel) (setq oblock (pw_retoBlock eblockref)) (if (= :vlax-true (vla-get-isxref oblock)) (progn (setq nom (vla-get-name oblock)) (setq eblock (pw_to_ename oblock)) (setq egBlock (entget eblock)) (setq Flags (cdr (assoc 70 egBlock))) (if (= (boole 1 Flags 8) 8) ; that means that this block in an overlay xref ;(prompt "\nAllready Overlay xref") nil (prompt (strcat "\nAttached : " nom)) ; ) ) (prompt "\nNot an xref") ) ) ) ----------------------------------------------------------------------Site: https://www.g-eaux.frBlog: http://g-eaux.over-blog.com
La Lozère Posté(e) le 10 juillet 2015 Auteur Posté(e) le 10 juillet 2015 Hello, Merci, mais le lisp ne marche pas.Voici ce que ça me donne:; erreur: no function definition: PW_SSGETX_XREF www.cad-is.fr Autocad Map 2021 - Covadis/Autopiste V18.0c Pisser sous la douche ne suffira pas
GEGEMATIC Posté(e) le 10 juillet 2015 Posté(e) le 10 juillet 2015 salutexcuse moi mais il faut PowerClic pour que ça marche.PowerClicmaintenant, cette routine est une vilaine adaptation d'une tentative précédent qui ne marchait pas avec les commandes vlisp classiques.il faut que je prenne le temps de trouver un logique plus simple, car la je crois que je part d'une occurence de xref pour aller trouver sa définition.(c'était pour pouvoir le faire par pointage)j’essaie de voir ça cet AMGégé ----------------------------------------------------------------------Site: https://www.g-eaux.frBlog: http://g-eaux.over-blog.com
Patrick_35 Posté(e) le 10 juillet 2015 Posté(e) le 10 juillet 2015 (modifié) Salut Tu as un lisp ici Edit : un double clic sur le type dans la boite de dialogue des xrefs fait permuter association/superposition @+ Modifié le 10 juillet 2015 par Patrick_35 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 juillet 2015 Posté(e) le 10 juillet 2015 Salut,ça doit mieux marcher ...a+gégé ; ***************************************************************************** ;§/dxf/ change toutes les xref pour qu'elle soient de type superposition /none (defun pw_makeAllOverlayReference2 ( / blk each ) (setq blk (vla-get-blocks (vla-get-ActiveDocument (vlax-get-acad-object)))) (vlax-for each blk (if (= :vlax-true (vla-get-isxref each)) (setpropertyvalue (vlax-vla-object->ename each) "IsFromOverlayReference" 1) ) ) ) ----------------------------------------------------------------------Site: https://www.g-eaux.frBlog: http://g-eaux.over-blog.com
La Lozère Posté(e) le 15 juillet 2015 Auteur Posté(e) le 15 juillet 2015 Hello,Gégé, le bout de code ne marche pas :huh: Patrick, malgrès une erreur à la fin, le lisp de ton lien fonctionne bien. Merci www.cad-is.fr Autocad Map 2021 - Covadis/Autopiste V18.0c Pisser sous la douche ne suffira pas
GEGEMATIC Posté(e) le 15 juillet 2015 Posté(e) le 15 juillet 2015 salut,Hello,Gégé, le bout de code ne marche pas :huh: Mercile code ne marche que dans un sens, pour rendre superpositionpour faire l'inverse, il faut faire :(setpropertyvalue (vlax-vla-object->ename each) "IsFromOverlayReference" 0)autre chose, dans le gestionnaire d'xref, il faut faire une rafraichissement, sinon on ne voit pas les modficationssi tu as le temps de retester,j'aimerai donc bien savoir ce qui ne marche pas ?Gégé ----------------------------------------------------------------------Site: https://www.g-eaux.frBlog: http://g-eaux.over-blog.com
La Lozère Posté(e) le 15 juillet 2015 Auteur Posté(e) le 15 juillet 2015 Gégé,Cela me revoie: pw_makeAllOverlayReference2, commande inconnue www.cad-is.fr Autocad Map 2021 - Covadis/Autopiste V18.0c Pisser sous la douche ne suffira pas
bonuscad Posté(e) le 15 juillet 2015 Posté(e) le 15 juillet 2015 salut, le code ne marche que dans un sens, pour rendre superpositionpour faire l'inverse, il faut faire :(setpropertyvalue (vlax-vla-object->ename each) "IsFromOverlayReference" 0)autre chose, dans le gestionnaire d'xref, il faut faire une rafraichissement, sinon on ne voit pas les modficationssi tu as le temps de retester,j'aimerai donc bien savoir ce qui ne marche pas ?GégéBonjour, Pour moi cela fonctionne sans problème dans les 2 sens, je l'ai juste modifié pour qu'il soit plus pratique d'utilisation... (defun c:XRef2Ass_Sup ( / blk each key) (initget "Association Superposition") (setq key (getkword "\nStatut [Association/Superposition]? <Superposition>: ")) (if (eq key "Association") (setq key 0) (setq key 1)) (setq blk (vla-get-blocks (vla-get-ActiveDocument (vlax-get-acad-object)))) (vlax-for each blk (if (= :vlax-true (vla-get-isxref each)) (setpropertyvalue (vlax-vla-object->ename each) "IsFromOverlayReference" key) ) ) ) Par contre le lien donné par Patrick_35 ne fonctionne pas pour moi:; erreur: Erreur Automation Clé dupliquéeJ'ai identifier le problème, mais je ne sais pas le corriger: c'est la ligne(vla-detach BlockDef)qui me génère cette erreur.Edit : un double clic sur le type dans la boite de dialogue des xrefs fait permuter association/superpositionMerci, je n'avais jamais remarqué cette fonctionnalité. Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
GEGEMATIC Posté(e) le 15 juillet 2015 Posté(e) le 15 juillet 2015 salut,Bonjour,Pour moi cela fonctionne sans problème dans les 2 sens, je l'ai juste modifié pour qu'il soit plus pratique d'utilisation...merci Bonuscad d'avoir terminé le boulot,c'est bien plus clair et pratique comme ça !c'est vrai que le sujet est dans "routine lisp", j'aurais pas du répondre de cette manière,et proposer une commande aboutie ...a+gégé ----------------------------------------------------------------------Site: https://www.g-eaux.frBlog: http://g-eaux.over-blog.com
La Lozère Posté(e) le 15 juillet 2015 Auteur Posté(e) le 15 juillet 2015 Merci à vous. Ca marche.Gégé quand tu dis:autre chose, dans le gestionnaire d'xref, il faut faire une rafraichissement, sinon on ne voit pas les modficationsComment fais-tu un rafraichissement?Le seul moyen que j'ai trouvé, c'est de fermer et de réouvrir le fichier, ou d'insérer une nouvelle xref. Fermer et ré-ouvrir la palette ne suffit pas. Sinon nickel... www.cad-is.fr Autocad Map 2021 - Covadis/Autopiste V18.0c Pisser sous la douche ne suffira pas
bonuscad Posté(e) le 15 juillet 2015 Posté(e) le 15 juillet 2015 Comment fais-tu un rafraichissement?Tu as le bouton "Actualiser" (2 flèches vertes enroulées) dans la palettes des Xrefs Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
La Lozère Posté(e) le 15 juillet 2015 Auteur Posté(e) le 15 juillet 2015 Ok, parfait.Et ben parfait...Merci à vous www.cad-is.fr Autocad Map 2021 - Covadis/Autopiste V18.0c Pisser sous la douche ne suffira pas
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