Aller au contenu

Messages recommandés

Posté(e)

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 ??

Posté(e)

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

Posté(e)

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

Posté(e)
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 ..

Posté(e)

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

Posté(e)

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

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 compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • 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é