sechanbask Posté(e) le 8 novembre 2006 Posté(e) le 8 novembre 2006 Salut J'utilise edit_bloc mais j'ai souhaité étoffer les fonctions : J'aimerai pouvoir initialiser les options, seulement losque que je mets dans le dcl : value="1"; pour les options que je souhaite coché au lancement du lisp, ça marche en apparence mais pour que le programme suive ces choix, je suis obligé de re-selectionner les cases cochées. J'aimerai également pouvoir annuler les effets de la lisp. j'aimerai que la selection que j'ai faite avant de lancer la lisp soit utilisable par la lisp... Merci par anticipation... EDIT_BLOC.dcl // Boite de dialogue du LISP EDIT_BLOC version 2.0edit_bloc:dialog{ label="Redéfinition de blocs version BARRIBAUD"; :boxed_row{ label="Choix des blocs"; :radio_column{ :radio_button{ label="Toute la collection"; key="tbl"; fixed_width=true; allow_accept=true; } :radio_button{ label="Tous les blocs insérés"; key="all"; fixed_width=true; allow_accept=true; } :radio_button{ label="Sélection"; value="1"; key="sel"; fixed_width=true; } } :button{ label=" << "; key="ss"; fixed_width=true; alignment=bottom; allow_accept=true; } } :boxed_column{ label="Propriétés à modifier"; :edit_box{ label= "Échelle globale"; key="fact"; edit_width=8; value="1"; allow_accept=true; } :popup_list{ label="Unités "; key="unt"; edit_width=16; } spacer; :toggle{ label="Calque 0"; key="lay"; fixed_width=true; allow_accept=true; } :toggle{ label="Couleur DuCalque"; key="col"; fixed_width=true; allow_accept=true; } :toggle{ label="Couleur DuBloc"; key="colb"; fixed_width=true; allow_accept=true; } :toggle{ label="Type de ligne DuCalque"; key="tl"; fixed_width=true; allow_accept=true; } :toggle{ label="Type de ligne DuBloc"; key="tlb"; fixed_width=true; allow_accept=true; } :toggle{ label="Épaisseur de ligne DuCalque"; key="el"; fixed_width=true; allow_accept=true; } :toggle{ label="Épaisseur de ligne DuBloc"; key="elb"; fixed_width=true; allow_accept=true; } :toggle{ label="Style de tracé DuBloc"; key="plt"; fixed_width=true; allow_accept=true; } } ok_cancel;} ATEGIE - Bureau d'Études Fluideshttp://www.ategie.fr/uploads/ategie/ategie-at%C3%A9gie-bureau-%C3%A9tudes-etudes-fluides-logo-100x56.pngExécution, Synthèse, Conception, Maîtrise d'Oeuvre, Audit, Chiffragewww.ategie.fr
Patrick_35 Posté(e) le 8 novembre 2006 Posté(e) le 8 novembre 2006 Pour les valeurs par défaut, il va faloir initialiser les variablesUn exemple avec le facteur d'échelle à 5.0 (setq fact 5.0) (set_tile "fact" (rtos fact)) @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
(gile) Posté(e) le 8 novembre 2006 Posté(e) le 8 novembre 2006 Salut, J'aimerai pouvoir initialiser les options, seulement losque que je mets dans le dcl : value="1"; pour les options que je souhaite coché au lancement du lisp, ça marche en apparence mais pour que le programme suive ces choix, je suis obligé de re-selectionner les cases cochées. Pour les valeurs par défaut, pas besoin de changer le code DCL.Dans le LISP, rubrique "Boite d'édition" (plutôt vers la fin), par exemple pour le calque, avant les lignes :(if (= lay "Oui") (set_tile "lay" "1") ) ajoute: (if (not lay) (setq lay "Oui") ) et ainsi de suite pour chaque option que tu veux par défaut. J'aimerai également pouvoir annuler les effets de la lisp. Il suffit de taper U puis ENTER. j'aimerai que la selection que j'ai faite avant de lancer la lisp soit utilisable par la lisp... Dans le LISP toujours, à la fin, après (cond ... remplace : ((= loop 3) (setq ss (ssget '((0 . "INSERT")))) ) par : ((= loop 3) (if (and (= (getvar "PICKFIRST") 1) (setq ss (caddr (ssgetfirst))) ) (sssetfirst nil nil) (setq ss (ssget '((0 . "INSERT")))) ) ) et quand tu cliqueras sur le bouton de Sélection, si une sélection existe, elle sera prise en compte. Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
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