(gile) Posté(e) le 9 novembre 2007 Auteur Partager Posté(e) le 9 novembre 2007 Ajouté GelObj. Cette routine permet de geler certains calques uniquement dans l'onglet Objet. Ces calques sont dégelés quand on passe dans les onglets Présentations où ils peuvent être normalement gelé ou dégelés dans certaines fenêtres et regelés quand on revient dans l'onglet Objet. Les listes de calques permettant au réacteur de fonctionner sont enrigistrées avec le dessin.Pour retrouver l'état des calques à l'enregistrement lors de la réouverture du dessin, le LISP doit être chargé automatiquement à chaque ouverture d'un nouveau dessin (valise de la fenêtre appload, ou charge depuis un fichier acaddoc.lsp ou MNL). Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD Lien vers le commentaire Partager sur d’autres sites More sharing options...
Matt666 Posté(e) le 22 novembre 2007 Partager Posté(e) le 22 novembre 2007 Salut Gile ! J'ai fait une petite modif sur ton lisp SSMATCH, et vu que la trouve assez pratique, je t'en fais part... Je ne sais pas si tu l'as déjà fait, et si ça se trouve, tu vas rire !! Il s'agit de filtrer la sélection après avoir sélectionne l'objet source...J'ai ajouté un bouton ">> Filtrer sur sélection >> " dans ta boite de dialogue ssmatch_box: dialog { label = "Propriétés" ; spacer ; [b] [i] : button {label = " >> Filtrer sur sélection >> " ; key = "selection" ;}[/i][/b] : boxed_row { : column { : toggle {label = "Type d'entité" ; key = "ent" ; value = "1" ; fixed_width = true ; allow_accept = true ; } spacer ; : toggle {label = "Couleur" ; key = "col" ; value = "1" ; fixed_width = true ; allow_accept = true ; } spacer ; : toggle {label = "Calque" ; key = "lay" ; value = "1" ; fixed_width = true ; allow_accept = true ; } spacer ; : toggle {label = "Type de ligne" ; key = "typ" ; value = "1" ; fixed_width = true ; allow_accept = true ; } spacer ; : toggle {label = "Epaisseur de ligne" ; key = "wid" ; value = "1" ; fixed_width = true ; allow_accept = true ; } spacer ; } : column { : text {key = "e_ent" ; width = 15 ; } spacer ; : row { : image {key = "e_col" ; height = 1 ; width = 1 ; } : text {key = "t_col" ; width = 10 ; } } spacer ; : text {key = "e_lay" ; width = 15 ; } spacer ; : text {key = "e_typ" ; width = 15 ; } spacer ; : text {key = "e_wid" ; width = 15 ; } spacer ; } } ok_cancel ; spacer ; } Et intégré les conséquences de ce bouton dans ton lisp :;; SSM -Gilles Chanteau- 19/04/07 ;; Sélectionne tous les objets ayant les mêmes propriétés que celles de l'objet sélectionné ;; et qui sont cochées dans la boite de dialogue. ;; Boite de dialogue (defun ssmatch_box (ent / elst col lst dis dcl_id w h) (setq elst (entget ent) col (cond ((assoc 420 elst))((assoc 62 elst))('(62 . 256))) lst (list (assoc 0 elst) col (assoc 8 elst) (cond ((assoc 6 elst)) ('(6 . "BYLAYER"))) (cond ((assoc 370 elst)) ('(370 . -1)))) col (cdr col) dis (cond ((cdr (assoc 62 elst))) ((cdr (assoc 62 (tblsearch "LAYER" (cdr (assoc 8 elst))))))) dcl_id (load_dialog "Bonus/Bonus.dcl") loop 2 ) (while (> loop 1) (if (not (new_dialog "ssmatch_box" dcl_id)) (exit)) (setq w (dimx_tile "e_col") h (dimy_tile "e_col")) (start_image "e_col") (fill_image 0 0 w h dis) (end_image) (set_tile "e_ent" (cdr (assoc 0 elst))) (set_tile "t_col" (cond ((= col 256) "DuCalque") ((= col 0) "DuBloc") ((< 256 col) (strcat (itoa (lsh col -16)) "," (itoa (lsh (lsh col 16) -24)) "," (itoa (lsh (lsh col 24) -24)) ) ) ((itoa col)) ) ) (set_tile "e_lay" (cdr (assoc 8 elst))) (set_tile "e_typ" (cond ((or (null (cdr (assoc 6 elst))) (= (strcase (cdr (assoc 6 elst))) "BYLAYER")) "DuCalque") ((= (strcase (cdr (assoc 6 lst))) "BYBLOCK")"DuBloc")((cdr (assoc 6 lst))) ) ) (set_tile "e_wid" (cond ((null (cdr (assoc 370 elst))) "DuCalque") ((= -1 (cdr (assoc 370 elst))) "DuCalque") ((= -2 (cdr (assoc 370 elst))) "DuBlock") ((= -3 (cdr (assoc 370 elst))) "Défaut") ((rtos (/ (cdr (assoc 370 elst)) 100.0) 2 2)) ) ) [i] [b](action_tile "selection" "(done_dialog 4)")[/b][/i] (action_tile "accept" "(or (= \"1\" (get_tile \"ent\")) (setq lst (remove (assoc 0 lst) lst)) ) (or (= \"1\" (get_tile \"col\")) (setq lst (remove (assoc 420 lst) (remove (assoc 62 lst) lst))) ) (or(= \"1\" (get_tile \"lay\")) (setq lst (remove (assoc 8 lst) lst)) ) (or(= \"1\" (get_tile \"typ\")) (setq lst (remove (assoc 6 lst) lst)) ) (or(= \"1\" (get_tile \"wid\")) (setq lst (remove (assoc 370 lst) lst)) ) (done_dialog 0)" ) (action_tile "cancel" "(setq lst nil)") [b] [i](setq loop (start_dialog)) (cond ((eq loop 4) (setq sel (ssget)) ) )[/i][/b] ) (unload_dialog dcl_id) lst ) ;; Fonction d'appel (defun c:ssm (/ ss ent lst) (and (or (and (setq ss (cadr (ssgetfirst))) (= 1 (sslength ss)) (setq ent (ssname ss 0)) ) (and (sssetfirst nil nil) (setq ent (car (entsel "\nSélectionner une entité : "))) ) ) (setq lst (ssmatch_box ent)) (princ lst) (if sel [i][b](progn (repeat (setq n (sslength sel)) (setq ent (entget (ssname sel (setq n (1- n)))) cn 0) (foreach pt lst (if (member pt ent) (setq cn (1+ cn))) ) (if (/= cn (length lst)) (setq sel (ssdel (cdr (assoc -1 ent)) sel)) ) ) (sssetfirst nil sel) )[/b][/i] (sssetfirst nil (ssget "_X" lst)) ) ) (princ) ) Voilà ! Si ça peut te donner des idées.. ;) A bientot !Matt. [Edité le 22/11/2007 par Matt666] "Chacun compte pour un, et nul ne compte pour plus d'un." Lien vers le commentaire Partager sur d’autres sites More sharing options...
(gile) Posté(e) le 22 novembre 2007 Auteur Partager Posté(e) le 22 novembre 2007 Salut, Je ne suis pas sûr de comprendre comment tu te sers de la routine, mais je n'arrive pas à la faire fonctionner. Télécharge la dernière version et essaye la commande ssmm. Elle fonctionne en boucle jusqu'à validation par Entrée. Pour chaque filtre constitué, elle permet de faire une sélection à l'écran (ou entrée pour "Tout") et ajoute cette sélection aux précédentes. Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD Lien vers le commentaire Partager sur d’autres sites More sharing options...
lili2006 Posté(e) le 22 novembre 2007 Partager Posté(e) le 22 novembre 2007 Bonsoir à toutes et tous, Matt666, voici ce que me retourne AutoCAD : Commande: ssmSélectionner une entité : ; erreur: quitter / sortir abandonCommande: ?? Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/ Lien vers le commentaire Partager sur d’autres sites More sharing options...
(gile) Posté(e) le 22 novembre 2007 Auteur Partager Posté(e) le 22 novembre 2007 Salut, C'est toujours le même problème de fichier DCL non trouvé. Le LISP modifié par Matt666 appelle un fichier DCL nommé "Bonus/Bonus.dcl", il faudrait donc enregistrer le DCL sous ce nom, mais ce nom n'est pas valide à cause du slash (/). Si tu veux essayer ce LISP, il faut d'abord changer le nom du fichier dans l'expression qui se trouve au début de ssmatch_box : (setq......dcl_id (load_dialog "Bonus/Bonus.dcl")...) en (par exemple) : (setq......dcl_id (load_dialog "Bonus.dcl")...) et enregistrer le DCL sous Bonus.dcl Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD Lien vers le commentaire Partager sur d’autres sites More sharing options...
lili2006 Posté(e) le 22 novembre 2007 Partager Posté(e) le 22 novembre 2007 Re, En effet, (gile), merci pour ces explications. Je ne suis pas sûr de comprendre comment tu te sers de la routine, mais je n'arrive pas à la faire fonctionner. Je dois dire que je suis un peu dans le même cas Matt666, aprés plusieurs manips, je filtre bien, mais je ne sais plus trop comment j'en suis arrivé là,.. Exemple : Commande:SSMMSélectionnez l'objet source:Choix des objets: 1 trouvé(s) Choix des objets: Sélectionnez les objes (ou Entrée pour "Tout"):Choix des objets: 1 trouvé(s) Choix des objets: Sélectionnez l'objet source:Sélectionnez les objes (ou Entrée pour "Tout"):Choix des objets: *Annuler*; erreur: Fonction annulée Bonne nuit. Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/ Lien vers le commentaire Partager sur d’autres sites More sharing options...
Matt666 Posté(e) le 23 novembre 2007 Partager Posté(e) le 23 novembre 2007 Télécharge la dernière version et essaye la commande ssmm (...) elle permet de faire une sélection à l'écran Ah bah mais c'est ça que je fais aussi !!! J'avais pas vu la dernière version... Ma routine fonctionne avec SSM, qui retourne une sélection filtrée sur toutes les entités de la base graphique... Je trouvais ça dommage, et j'ai intégré un bouton pour réduire la sélection des objets à filtrer... Je ne sais pas si tu l'as déjà faitMais tu l'as fait avec SSMM... Il pense à tout ce Gile !! "Chacun compte pour un, et nul ne compte pour plus d'un." Lien vers le commentaire Partager sur d’autres sites More sharing options...
BIM G CO Posté(e) le 4 décembre 2007 Partager Posté(e) le 4 décembre 2007 Comme pour les lisps de Patrick_35, je voudrais installer tous tes lisps dans un dossier type : Lisp du Web\(gile).CADXP.COM\3dPolyFillet.lsp Lisp du Web\(gile).CADXP.COM\Ac_ob&Rac_ob.lsp Lisp du Web\(gile).CADXP.COM\Ac2pg.lsp Lisp du Web\(gile).CADXP.COM\AddVtx&DelVtx.LSP Lisp du Web\(gile).CADXP.COM\Anse_de_panier.lsp ... Lisp du Web\(gile).CADXP.COM\Reverse_pline.LSP Lisp du Web\(gile).CADXP.COM\Special_selections.lsp Lisp du Web\(gile).CADXP.COM\SurfDev_bloc.lsp Or j'ai un souci avec un fichier de même nom mais de taille et date différente Lisp du Web\(gile).CADXP.COM\Div-Mes\Getblock.DCL de 583 octets du 9/04/2007 Lisp du Web\(gile).CADXP.COM\Ins3d\Getblock.dcl de 560 octets du 29/04/2007 je voudrais mettre tous les fichiers LSP, PDF,TXT, DCL etc.. dans un seul dossier "Lisp du Web\(gile).CADXP.COM" dossier que j'ajouterais dans le Support AutoCAd mais pour l'instant je suis bloqué à cause de ce "Getblock.dcl" Dessinateur AutoCAD, Modeleur BIM, consultant informatique logiciels métier Lenovo ThinkStation P330 i9 9900K 32Gb RAM 512 SSD + 1To GstarCAD, Fisa-CAD, Revit, FisaBIM CVC, Microsoft Office PlaquetteDeplianteMars2024.pdf Lien vers le commentaire Partager sur d’autres sites More sharing options...
(gile) Posté(e) le 4 décembre 2007 Auteur Partager Posté(e) le 4 décembre 2007 Salut, Tout d'abord, je dois dire que je suis flatté par tant d'égards. Effectivement, plusieurs LISP utilisent la boite de dialogue getblock, et j'ai voulu la joindre dans chaque ZIP (de plus il semblerait que celle de Div-Mes ne soit pas la dernière version). Tu peux ne conserver que le plus récent (la différence est juste un "initial_focus" que j'ai supprimé). Tu peux aussi supprimer les fichiers getblock.dcl, le fichier getblock.lsp inclus dans Ins3d.zip et la routine getblock dans Div-Mes.lsp et utiliser la nouvelle définition de getblock (sans fichier DCL séparé) qui est dans Dialog.lsp (tout en bas de la page). [Edité le 5/12/2007 par (gile)] Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD Lien vers le commentaire Partager sur d’autres sites More sharing options...
BIM G CO Posté(e) le 6 décembre 2007 Partager Posté(e) le 6 décembre 2007 Ca y est j'ai fait un dssier dans lequel tous les fichiers nécessaire au fonctionnement de tes Lisp sont intégré. Je n'ai pas encore testé mais au moins cela va permettre le déploiement sur la vingtaine de poste équipé en DAO en un seul clic.Dézippage des LISPModification des dossier supportAjout d'un menu dans AutCAD pour tous tes lisps Si tu veux je peux te le donner..... si j'ai ton adresse mail Dessinateur AutoCAD, Modeleur BIM, consultant informatique logiciels métier Lenovo ThinkStation P330 i9 9900K 32Gb RAM 512 SSD + 1To GstarCAD, Fisa-CAD, Revit, FisaBIM CVC, Microsoft Office PlaquetteDeplianteMars2024.pdf Lien vers le commentaire Partager sur d’autres sites More sharing options...
Matt666 Posté(e) le 6 décembre 2007 Partager Posté(e) le 6 décembre 2007 Salut maximilien ! Tu crois que nous aussi on pourrait le voir ??? Paske ça m'intéresse de savoir ce que ça peut donner... Tu passes par inno et acad_intsall ? Merci !A bientot.Matt "Chacun compte pour un, et nul ne compte pour plus d'un." Lien vers le commentaire Partager sur d’autres sites More sharing options...
BIM G CO Posté(e) le 6 décembre 2007 Partager Posté(e) le 6 décembre 2007 Actuellement, j'ai un fichier EXE (ZIP autoextractible) avec toutes les fonctions dans un seul et même dossier. Rien de bien extraordinaire donc pas encore intéressant de le mettre dans un téléchargement membres ou autre. - J'ai encore à identifier selon la version d'AutoCAD les clés de registre que je dois modifier pour que les paramètres soit bien affecté (dossier de recherche, chargement du MNU/CUI) utilisation en batch de REGEDIT /S- A rassembler les différents programmes et d'avoir une documentation au format HTML (pour créer un CHM) J'utilise actuellement PowerArchiver 6/2000 le dernier en version gratuiciel qui permet d'exécuter un batch après son auto-extraction. Pour la distribution à tous cela ne sera qu'à la discrétion de (gile) puisque ce sont SES programme et donc de SA propriété. Dessinateur AutoCAD, Modeleur BIM, consultant informatique logiciels métier Lenovo ThinkStation P330 i9 9900K 32Gb RAM 512 SSD + 1To GstarCAD, Fisa-CAD, Revit, FisaBIM CVC, Microsoft Office PlaquetteDeplianteMars2024.pdf Lien vers le commentaire Partager sur d’autres sites More sharing options...
yusukens82 Posté(e) le 17 décembre 2007 Partager Posté(e) le 17 décembre 2007 BRAVO pour ce topic.[Edité le 20/12/2007 par yusukens82][Edité le 24/12/2007 par yusukens82] [Edité le 24/2/2009 par yusukens82] Lien vers le commentaire Partager sur d’autres sites More sharing options...
FRAXA Posté(e) le 20 décembre 2007 Partager Posté(e) le 20 décembre 2007 Bonjour Gile,Serait-il possible que sur le lisp "Curve2pipe":- on puisse garder ou pas les traits de constructions (axes des tuyauteries).- que les diamètres renseignés une première fois soient remis par défaut lors du rappel de la commande.De plus sur le lisp "PolySolid", serait-il possible de choisir un diamètre? Merci d'avance HPZ400 Workstation Intel Xeon W3550 3.07 GHz 6 Go ram QUADRO FX 1800 Lien vers le commentaire Partager sur d’autres sites More sharing options...
(gile) Posté(e) le 20 décembre 2007 Auteur Partager Posté(e) le 20 décembre 2007 Salut, Pour la première demande, c'est déjà fait, la conservation ou non des objets ayant servi d'axes dépend de la valeur de la variable DELOBJ, (si elle est à 0 les axes sont conservés). Pour les autres, je vais essayer de faire quelque chose... Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD Lien vers le commentaire Partager sur d’autres sites More sharing options...
(gile) Posté(e) le 20 décembre 2007 Auteur Partager Posté(e) le 20 décembre 2007 - que les diamètres renseignés une première fois soient remis par défaut lors du rappel de la commande. C'est fait, le fichier en téléchargement est à jour, j'ai aussi ajouté un raccourci clavier : c2p PS : pour polysolid, je ne comprends pas bien l'intérêt, curve2pipe est plus polyvalent. [Edité le 20/12/2007 par (gile)] Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD Lien vers le commentaire Partager sur d’autres sites More sharing options...
FRAXA Posté(e) le 20 décembre 2007 Partager Posté(e) le 20 décembre 2007 PS : pour polysolid, je ne comprends pas bien l'intérêt, curve2pipe est plus polyvalent.Effectivement, je ne vois plus l'intérêt. ;) En tout cas merci.Je vais certainement abusé mais j'ai téléchargé sur le site 2 lisp trés intéressants: tuyau.lsp et tuy.lsp.Le premier crée de la tuyauterie 2d à partie autocad2000 et le second de la tuyauterie 3d à partir autocad2007.N'est-il pas possible de rendre le tuy.lsp utilisable pour les versions antérieures à 2007? HPZ400 Workstation Intel Xeon W3550 3.07 GHz 6 Go ram QUADRO FX 1800 Lien vers le commentaire Partager sur d’autres sites More sharing options...
(gile) Posté(e) le 29 décembre 2007 Auteur Partager Posté(e) le 29 décembre 2007 J'ai modifié GETLAYOUTS dans le fichier Dialog.lsp : suppression des fonctions vlisp pour plus de polyvalence (compatibilité avec les clônes d'AutoCAD et LT Extender) Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD Lien vers le commentaire Partager sur d’autres sites More sharing options...
(gile) Posté(e) le 4 février 2008 Auteur Partager Posté(e) le 4 février 2008 J'ai ajouté une nouvelle commande dans Special_Selections : ssatt pour sélectionner tous les blocs ayant un attribut qui a la même étiquette et la même valeur que l'attribut source. Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD Lien vers le commentaire Partager sur d’autres sites More sharing options...
(gile) Posté(e) le 1 avril 2008 Auteur Partager Posté(e) le 1 avril 2008 Ajout de deux nouveaux fichiers : - Increment.lsp (commandes INCTXT et INCSUF) - Tangente.lsp (commande TAP) Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD Lien vers le commentaire Partager sur d’autres sites More sharing options...
(gile) Posté(e) le 8 avril 2008 Auteur Partager Posté(e) le 8 avril 2008 Incrément.lsp compte désormais 4 commandes : INCTXT : insertions multiples d'un texte contenant une valeur à incrémenter http://img178.imageshack.us/img178/5088/inxtxthx2.png INCATT : insertions multiples d'un bloc avec un attribut contenant une valeur à incrémenter http://img223.imageshack.us/img223/6465/incattny4.png INCSUF : incrémentation de la fin des textes sélectionnés en fonction des caractères http://img366.imageshack.us/img366/8440/incsuflz5.png INCSEL : incrémentation d'une valeur dans les textes sélectionnés http://img241.imageshack.us/img241/5787/incselvi0.png Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD Lien vers le commentaire Partager sur d’autres sites More sharing options...
salvanorigatore Posté(e) le 9 avril 2008 Partager Posté(e) le 9 avril 2008 Bonjour (gile),je viens de découvrir ton Incrément.lsp et je le trouve absolument indispensable! :heartpump: Merci pour ton super travail! :yltype: Voilà j'ai une demande à te faire : en ce qui concernes les commandes incsuf et incsel serait-il possible qu'on puisse continuer à incrémenter même si on change d'étiquette (sur des blocs ayant des noms et des noms d'étiquette différent, par exemple)?Si cela n'est pas possible tant pis, merci quand même.Salut. " Celui qui a déplacé la montagne, c'est celui qui a commencé par enlever les petites pierres " Lien vers le commentaire Partager sur d’autres sites More sharing options...
Patrick_35 Posté(e) le 9 avril 2008 Partager Posté(e) le 9 avril 2008 Salut Tu as LATT, à moins que (gile) se lance enfin dans les réacteurs ;) @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824 Lien vers le commentaire Partager sur d’autres sites More sharing options...
salvanorigatore Posté(e) le 10 avril 2008 Partager Posté(e) le 10 avril 2008 Salut Patrick_35,merci pour la suggestion, LATT je connais (c'est même à ma demande que tu l'avais développé... Lier 2 attributs - merci encore).Toutefois dans ce cas bien précis ce n'est pas ce qu'il me faut car je voudrais incrémenter en toute simplicité (sans être obligé de faire d'abord des associations d'attributs...) comme le permets de faire l'outil de (gile), mais sur des blocs différents ou au moins sur des étiquettes différentes du même bloc.Afin si cela est possible bien sur.Ciao. " Celui qui a déplacé la montagne, c'est celui qui a commencé par enlever les petites pierres " Lien vers le commentaire Partager sur d’autres sites More sharing options...
Patrick_35 Posté(e) le 10 avril 2008 Partager Posté(e) le 10 avril 2008 Re,Afin si cela est possible bien sur.C'est possible, mais pas facile à faire car cela suppose au préalable un choix multiple de blocs avec un choix multiple d'étiquettes et la mémorisation de la valeur d'incrémentation.Comme LATT permet l'incrémentation sur différentes étiquettes de différents blocs, et que la commande copier peut être utilisée à la place de la commande insérer, d'où ma réponse. @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824 Lien vers le commentaire Partager sur d’autres sites More sharing options...
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