GEGEMATIC Posté(e) le 5 décembre 2024 Posté(e) le 5 décembre 2024 Salut à toutes et a tous, j'ai créé un bloc dynamique servant de base à une annotation. Il est très simple, un point, une ligne repère, 11 attributs, un étirement polaire des la ligne repère et des 11 attributs. + un état de visibilité sur la ligne repère visible ou invisible. A partir des ce bloc "cellule souche", je défini 80 blocs à partir de cette cellule souche, en ajoutant des entités diverses pour avoir un symbole + évolué qu'un simple point. sauf que l'ajout des entités se fait dans un état de visibilité ou l'autre. Du coup, c'est soit je vois la ligne repère soit les entités ... (voir exemple joint) si je trouvais où est stocké l'état de visibilité, je pourrai le corriger par la programmation, ça serait mieux que de me palucher 80 blocs ... mais la je sèche. Lee mac drive les blocdynamique, mais il ne fait pas ça... a+ Gégé applique.dwg ----------------------------------------------------------------------Site: https://www.g-eaux.frBlog: http://g-eaux.over-blog.com
(gile) Posté(e) le 5 décembre 2024 Posté(e) le 5 décembre 2024 Salut, À ma connaissance il n'y a pas de fonction Visual LISP (ni en .NET d'ailleurs) pour modifier les paramètres dynamiques de définitions de bloc. Reste peut-être le DXF, si on a le courage décrypter les dictionnaires d'extension des définitions de bloc, mais il n'est pas certain qu'on puisse les modifier... Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
GEGEMATIC Posté(e) le 6 décembre 2024 Auteur Posté(e) le 6 décembre 2024 salut Gilles, c'est bien ce que je pensais, et je sais trop bien combien ça coute d'énergie de "décrypter les dictionnaires d'extension des définitions de bloc" pour s'apercevoir finalement qu'on ne peut les modifier... mais heureusement je crois que j'ai trouvé une combine pour m'affranchir de ce pb, je teste et je vous tiens au courant. merci a+ gégé ----------------------------------------------------------------------Site: https://www.g-eaux.frBlog: http://g-eaux.over-blog.com
GEGEMATIC Posté(e) le 6 décembre 2024 Auteur Posté(e) le 6 décembre 2024 Salut, donc je suis arrivé à contourner le problème, OUF! dans mon bloc "cellule souche" j'ai ajouté un bloc basique, un cercle avec le bon état de visibilisé. pour créer mes 80 blocs, j'ai fait un entmod sur le bloc basique avec le bloc représentation voulu. ça marche très bien ! Au passage, je me suis aperçu (Alléluia) que la caractéristique "dubloc" fonctionne de manière imbriquée, je n'avais jamais fait attention à ça. ;;******************************************************** ;§**/blocs/ prépare la copie des bocs avant de la lancer la redéfinition les blocs dynamique du pproto / none (defun c:prepare_Redef_pt_Topo_Dyn (/ el el1 el2 tmp reinit rep ss1 ss2) (PW_CHARGER_xml (strcat aclsp-chem "ini/topo/INERIS.xml")) (setq lblocs (pw_reduct_list (mapcar 'cadr ineris))) (foreach l (pw_reduct_list lblocs) (print l) (PW_COPY_BLOCK_DEF l (strcat l "_FOND")) ) ) ;;******************************************************** ;§**/blocs/redéfinie les blocs dynamique du pproto / none ;;cette opération est à faire: ;;lorsque l'on décide une redfinition des blocs "TCPOINT_11att", par exemple en ajoutant ou en supprimant des attributs, ;; (defun c:Redef_pt_Topo_Dyn (/ el el1 el2 tmp reinit rep ss1 ss2) (vla-StartUndoMark pw-acaddocument) (alert "\nRedéfinition des blocs dynamiques du pproto à partir des tcpt_11_att dynamique\nil faut purger les autres blocs avant de la lancer " ) (Getstring "\nEchap pour annuler cette commande très spéciale, valider pour continuer" ) (PW_CHARGER_xml (strcat aclsp-chem "ini/topo/INERIS.xml")) (setq lblocs (pw_reduct_list (mapcar 'cadr ineris))) (foreach l lblocs (cond ((wcmatch l "*_EP") (setq tcpt "TCPOINT_11att_EP_dyn") ) ((wcmatch l "*_EU") (setq tcpt "TCPOINT_11att_EU_dyn") ) (t (setq tcpt "TCPOINT_11att_dyn") ) ) (command "_bedit" tcpt) (setq eblocSouche (ssname (ssget "x"'((0 . "insert")(2 . "tcpoint_symbole"))) 0)) ;;(setq egsouche (entget eblocSouche)) (pw_entmodifi eblocSouche 2 (strcat l "_FOND")) (command "_bsaveas" l "_y" ) ) (vla-EndUndoMark pw-acaddocument) ) ----------------------------------------------------------------------Site: https://www.g-eaux.frBlog: http://g-eaux.over-blog.com
GEGEMATIC Posté(e) le 10 décembre 2024 Auteur Posté(e) le 10 décembre 2024 Salut, encore une observation que je fais sur les blocs dynamiques, la methode GetBoundingBox retourne une valeur indépendante de l'état de visibilité. on dira que ça m'arrange pas, mais c'est comme ça ... a+ Gégé ----------------------------------------------------------------------Site: https://www.g-eaux.frBlog: http://g-eaux.over-blog.com
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