Invité HAYA82 Posté(e) le 12 décembre 2010 Posté(e) le 12 décembre 2010 BONSOIRa cette selection :(setq ss (ssget "_:S:E" (list '(-4 . " '(0 . "CIRCLE") '(-4 . " '(0 . "ELLIPSE") '(41 . 0.0) (cons 42 (* 2 pi)) '(-4 . "AND>") '(-4 . " '(0 . "LWPOLYLINE") '(-4 . "&") '(70 . 1) '(-4 . "AND>") '(-4 . "OR>") )je voudrais ajouter un autre filte de selection qui est une variable pl et qui est determinée par le choix d'un calque :(defun sel_pl() (setq lb (list)) (setq lb (cons (cdr(assoc 2 (tblnext "LAYER" T))) lb)) (while (setq X (cdr (assoc 2 (tblnext "LAYER")))) (setq lb (cons X lb)) ) (setq lb (acad_strlsort lb)) (setq ll (length lb)) (setq id_dcl (load_dialog "selec.dcl")) (if(not(new_dialog "SELEC" id_dcl)) (exit) ) (start_list "plselec" ) (mapcar 'add_list lb ) (end_list) (action_tile "plselec" "(setq pl (nth (atoi $value) lb))") (start_dialog) (unload_dialog id_dcl) merci d'avance pour votre aide
(gile) Posté(e) le 12 décembre 2010 Posté(e) le 12 décembre 2010 Salut et bienvenue, Pour rendre tes messages plus lisibles quand tu publies du code, utilise les bbcodes :[surligneur][[/surligneur][surligneur]code[/surligneur][surligneur]][/surligneur] ici le code [surligneur][[/surligneur][surligneur]/code[/surligneur][surligneur]][/surligneur] donne : ici le code Accessible via l'icône [#] : http://img94.imageshack.us/img94/8380/bbcode.png Si tu veux ajouter le calque à ton filtre, tu peux faire : (setq lay (sel_pl)) (setq ss (ssget "_:S:E" (list '(-4 . " '(0 . "CIRCLE") '(-4 . " '(0 . "ELLIPSE") '(41 . 0.0) (cons 42 (* 2 pi)) '(-4 . "AND>") '(-4 . " '(0 . "LWPOLYLINE") '(-4 . "&") '(70 . 1) '(-4 . "AND>") '(-4 . "OR>") [color=#FF0000](cons 8 lay)[/color] ) ) ) PS : il manque des parenthèses fermantes dans les codes que tu as posté. Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
Invité HAYA82 Posté(e) le 12 décembre 2010 Posté(e) le 12 décembre 2010 merci désolée je suis une nouvelle inscrite, je vais essayer la prochaine fois.
Invité HAYA82 Posté(e) le 12 décembre 2010 Posté(e) le 12 décembre 2010 ceci ne marche pas j'ai déja essayé l'entrée (cons 8 pl) et l'entrée (cons 8 lay) mais à chaque fois il y a un message d'erreur qui dit " valeur de liste SSGET incorrecte"merci pour votre aide
(gile) Posté(e) le 13 décembre 2010 Posté(e) le 13 décembre 2010 Dans ce cas, ça vient probablement de la routine sel_pl. Cette routine retourne-t-elle bien le nom du calque choisis dans la boite de dialogue ?Je pose ces question car il semble que la routine que tu as postée soit incomplète (en tout cas il manque au moins des parenthèses à la fin). 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