krunch Posté(e) le 8 novembre 2012 Posté(e) le 8 novembre 2012 Bonjour à tous Je cherche à faire une filter list pour ssget qui sélectionne les polys non 3D + une autre pour tous les polys :(ssget "X" '((-4 . "<OR")(-4 . "< AND ")(0 . "POLYLINE")(-4 . "<")(70 . 8)(-4 . "AND>")(0 . "LWPOLYLINE")(-4 . "OR>"))) (ssget "X" '((-4 . "<OR")(-4 . "< AND ")(0 . "POLYLINE")(-4 . "<")(70 . 16)(-4 . "AND>")(0 . "LWPOLYLINE")(-4 . "OR>")))Les 2 renvoient nil, qu'est ce qui cloche la dedans ??
krunch Posté(e) le 8 novembre 2012 Auteur Posté(e) le 8 novembre 2012 Je rectifie : il faudrait écrire quelque chose comme :(ssget "X" '((-4 . "<OR")(-4 . "< AND ")(0 . "POLYLINE")(-4 . "< NOT ")(-4 . "&")(70 . 120)(-4 . "NOT>")(-4 . "AND>")(0 . "LWPOLYLINE")(-4 . "OR>"))) (ssget "X" '((-4 . "<OR")(-4 . "< AND ")(0 . "POLYLINE")(-4 . "< NOT ")(-4 . "&")(70 . 112)(-4 . "NOT>")(-4 . "AND>")(0 . "LWPOLYLINE")(-4 . "OR>"))) Mais ça ne marche pas mieux ..Ce que je comprends pas c'est que même avec une LWPoly dans le dessin le code renvoie nil
bonuscad Posté(e) le 8 novembre 2012 Posté(e) le 8 novembre 2012 Pas facile les filtre logique!... :P OR est exclusif (c'est soit l'un soit l'autre mais pas les deux) (0 . "POLYLINE") et (0 . "LWPOLYLINE") peuvent être regrouper (sans confusion) comme ceci(0 . "*POLYLINE")Ca te fera moins d'opérateur logique. Encore un petit effort, tu vas y arriver. Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
Patrick_35 Posté(e) le 8 novembre 2012 Posté(e) le 8 novembre 2012 Salut Pas facile les filtre logique!... :P Je confirme ;) OR est exclusif (c'est soit l'un soit l'autre mais pas les deux)heu, je dirais le xor @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
krunch Posté(e) le 8 novembre 2012 Auteur Posté(e) le 8 novembre 2012 OR est exclusif (c'est soit l'un soit l'autre mais pas les deux)Oui j'aurais dit aussi le XOR .. mais dans ce cas précis ça ne devrait rien changer (?) En tout cas avec la ligne suivante ça marche bien ..(ssget "X" '((-4 . "<OR")(0 . "LWPOLYLINE")(0 . "CIRCLE")(0 . "ARC")(-4 . "OR>"))) (0 . "*POLYLINE")Effectivement, et les codes 70 ont l'air compatibles. Mais le problème c'est que dès que j'essaie de tester le code 70 avec un AND en plus ça renvoie nil (sans message d'erreur) ..(ssget "X" '((-4 . "< AND ")(0 . "*POLYLINE")(-4 . "<")(70 . 8)(-4 . "AND>"))) Ensuite il faudrait écrire "si {code70 AND 120} <> 0" mais je ne sais pas comment on écrit ça ..
bonuscad Posté(e) le 8 novembre 2012 Posté(e) le 8 novembre 2012 Pardon pour ma boulette à propos de OR :wacko:, c'est bien XOR pour moi le filtre qui sélectionne les polys non 3D à l'air bon: (sssetfirst nil (ssget "X" '((0 . "*POLYLINE")(-4 . "<NOT")(-4 . "&")(70 . 120)(-4 . "NOT>")))) 120= 8 + 16 + 32 + 64 Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
Patrick_35 Posté(e) le 8 novembre 2012 Posté(e) le 8 novembre 2012 Un petit tour sur l'aide @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
krunch Posté(e) le 8 novembre 2012 Auteur Posté(e) le 8 novembre 2012 Mais oui ça marche ! Donc respectivement pour les polys non-3D et pour tous les polys :'((0 . "*POLYLINE")(-4 . "<NOT")(-4 . "&")(70 . 120)(-4 . "NOT>")) '((0 . "*POLYLINE")(-4 . "<NOT")(-4 . "&")(70 . 112)(-4 . "NOT>")) Merci pour vos réponses
Carboleum Posté(e) le 9 novembre 2012 Posté(e) le 9 novembre 2012 En tout cas avec la ligne suivante ça marche bien ..(ssget "X" '((-4 . "<OR")(0 . "LWPOLYLINE")(0 . "CIRCLE")(0 . "ARC")(-4 . "OR>"))) ici, tu peux aussi utiliser les wildcard pattern:(ssget "X" '((0 . "LWPOLYLINE,CIRCLE,ARC"))) Carboléüm, qui dessine aussi à la main -> Carboleum's sketchblog
krunch Posté(e) le 9 novembre 2012 Auteur Posté(e) le 9 novembre 2012 C'est vrai que simplifie beaucoup ce genre de ligne, merci pour la remarque.
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