Aller au contenu

Manu12

Membres
  • Compteur de contenus

    3
  • Inscription

  • Dernière visite

Manu12's Achievements

Newbie

Newbie (1/14)

0

Réputation sur la communauté

  1. Manu12

    Boite DCL et LISP

    Merci à vous 2. Après quelques manip. voici le lisp qui fonctionne. (setq dcl_id (load_dialog "test.dcl")) ;on charger le DCL (if (new_dialog "Diag1" dcl_id) (progn (action_tile "accept" "(setq H (atoi(get_tile \"HTot\"))) (setq L (atoi(get_tile \"LTot\")))(done_dialog 1)") ;clic sur "OK" (action_tile "cancel" "(done_dialog 0)") ;clic sur "Cancel" (if (= (start_dialog) 0) (progn (prompt "\n...ABANDON" ) (quit) (princ) ) (progn (setq pt1 (list 0 0)) (setq pt2 (list H L)) (command "_.rectang" pt1 pt2) (princ) ) ) ) (unload_dialog dcl_id) ) Mais apparemment il faut définir les variables setq... dans la parenthèse Action_Tile "accept". si je le fais dans le progn de la commande rectangle, ça ne fonctionne pas. Je crois que mon problème du départ viens de là (à confirmer). Bye.
  2. Manu12

    Boite DCL et LISP

    à Patrick_35: Merci pour l'adresse du site, je vais fouiller. à alala: Je vais essayer ta méthode. A+
  3. Bonjour, Je me forme à AutoLisp et donc je débute depuis peu. J'essaie d'utiliser les boites de dialogue DCL pour saisir des données utilisées dans un Lisp. L'exemple ci-dessous est celui de la saisie d'un rectanlge. Mais il y a un problème lorsque je valide : Autocad 'ne répond pas', le sablier reste actif indéfiniement. Je dois avoir un problème avec mes variables mais je ne trouve pas. Une explication me permettrait d'avancer. merci d'avance. La boite DCL test.dcl: Diag1 : dialog { label = "Saisie d'un Rectangle"; : column { : row { : boxed_column { label = "Dimensions Totales"; fixed_width = true; width = 22; : edit_box { label = "Hauteur :"; mnemonic = "H"; key = "HTot"; edit_width = 5; } : edit_box { label = "Largeur :"; mnemonic = "L"; key = "LTot"; edit_width = 5; } } } ok_cancel; } } Le LISP: ;;;Fonction LISP Test (defun c:TestDiag () ;Chargement de la boite de dialogue (setq id (load_dialog "Test.dcl")) (new_dialog "Diag1" id) ; actions en fonction des choix dans la boite de dialogue (action_tile "cancel" "(done_dialog)") (action_tile "accept" "(Rectangle) (done_dialog)") (start_dialog) ) ; Fonction Rectangle (defun Rectangle () (progn (setq H (atoi(get_tile "HTot"))) (setq L (atoi(get_tile "LTot"))) (setq pt1 (list 0 0)) (setq pt2 (list H L)) (command "_.rectang" pt1 pt2 "") ) )
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité