Aller au contenu

FILTER


geototor

Messages recommandés

Bonjo

Je travaille avec AutoCAD LT2002 et je cherche à faire un filtre qui me selectionne les polylignes ouvertes de mon dessin .

Je prefererais utiliser la commande filter plutôt que la commande selectrap, car j'ai pas mal de fichiers à traiter.

 

Quelqu'un aurait'il une idée à me proposer?

 

d'avance merci

:D

Lien vers le commentaire
Partager sur d’autres sites

Ta demande sous LT m'a fait essayer quelque chose.

Si ça ne sert pas à toi sa pourra peut être servir à d'autre.

 

Je m'explique, (je suis sous une version 2002 pleine).

La commande selectrap (_qselect) permet de filtrer les polylignes fermées ou ouvertes.

'Filter lui ne le permet pas, bien qu'on puisse utiliser certain filtre logique, mais pas forcément là où on le désire.

 

Par contre filter permet (en tout cas sous une version pleine) d'enregister le filtre nommé.

Ceci est écrit alors dans un fichier "FILTER.NFL"

 

Malgré la recommendation en début de fichier

Filter.nfl -- ne modifiez pas ce fichier.

J'ai effectué des modifications en y plaçant ceci

Filter.nfl  --  ne modifiez pas ce fichier.
:ai_lisp|filtre polylignes ouvertes
(0 . "*POLYLINE")
(-4 . "[color=red]< [/color]NOT")
(-4 . "&")
(70 . 113)
(-4 . "NOT>")
:ai_str|filtre polylignes ouvertes
Objet  		=	Polyligne
** Début  NOT	
** Début &
ID 70		=	113
** Fin    NOT	

ENLEVER l'ESPACE APRES <

J'ai quitté Autocad, puis relancé celui-ci et "Miracle le filtre fonctionne" et est acessible dans les dessins.

Est ce que LT permet aussi ceci ???

 

Attention c'est de la bidouille, mais si ça fonctionne ça peut être utile.

 

N.B.: Bien sûr si vous tentez l'expérience, gardez bien précieusement votre fichier original "FILTER.NFL

Surtout si celui-ci est déjà personnalisé. Au pire on l'efface complétement en cas de problème, il sera recréé par la commande FILTER.

 

[Edité le 18/7/2006 par bonuscad]

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Lien vers le commentaire
Partager sur d’autres sites

:( malheureusement, ça n'a pas marché(le filtre n'apparait pas dans la fenetre filter(sans nom)).

Mais je pense effectivement que la solution est là...( il doit y avoir un pb de syntaxe qqpart?)

Par contre je suis un peu perdu dans ce type de language(que veux dire la variable 70 . 113 ?)

De quel language sagit-il ?(LISP?) et Existe t'il un tutoriel pour fabriquer un fichier .nfl?

 

merci à bonuscad.

 

Pour info on pourrait faire un fichier.bat qui renommerait un fichier .nfl en filter.nfl et utiliser un raccourci dans le fichier pgp pour lancer ce .bat (associé à un bouton on pourrait avoir toute une batterie de filtres predeterminés et les lancer d'un clic...)

:D

Lien vers le commentaire
Partager sur d’autres sites

Pour voir si cette manip est possible, (je n'ai pas de LT à disposition) il serait bien que tu fasse un filtre un peu compliqué (employant des AND ou NOT), que tu enregistre ce type de fitre et que tu donne ensuite le contenu du fichier.nfl.

 

Cela me permettrait de voir la syntaxe utilisée sur une LT, et, si elle est similaire à une version pleine.

 

LT ne permet pas le lisp, celui-ci est bridé, mais je pense cependant que des accés réservés soient possibles. C'est ce que fait LT-EXTENDER. Donc je serais à moitié surpris de voir que la commande FILTER dans une LT se réserve un accés pour l'appel à des fonctions lisp interne. Mais bon tout ça n'est que des suppositions.

 

Un extrait du fichier NFL pourra peut être m'éclairer un peu plus à ce sujet et voir ainsi les possibilités qui pourraient s'ouvrir pour une LT.

 

Si cette magouille est possible, cela peut ouvrir la porte à des manipulations de sélections interressantes sous une version "Ligth" en bidouillant ce fichier filter.nfl

 

A suivre .....

 

(70 . 113) : 70 est le code DXF des drapeaux de polylignes. Il contient un bit de controle, qui suivant sa valeur, renseigne sur la nature de la polyligne. Ici par exemple 113 représente soit (dans le sens OU inclusif) une Pmaille, une Maille3D (fermée ou non dans direction N ou M) et toute autres polylignes fermées: 64 + 32 + 16 + 1 = 113 (voir l'aide DXF)

Celles ci sont donc écartées par le NOT du filtre. Il ne restera donc que des polyligne2D ou 3D pouvant être lissées ou splinées ET étant ouvertes.

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Lien vers le commentaire
Partager sur d’autres sites

:D voila, grace aux conseils avisés de bonusCAD, j'ai réussi à modifier le fichiers nfl pour creer des filtres polylignes fermées et polylignes ouvertes, je vous livre le fichier nfl

:ai_lisp|polylignes fermées

(8 . "*")

(0 . "Polyline")

(-4 . "

(-4 . "=")

(70 . 129)

(-4 . "=")

(70 . 1)

(-4 . "OR>")

:ai_str|polylignes fermées

Calques = tous

Objets = Polylignes

Anomalies = Polylignes Fermées à tort

:ai_lisp|poly ouvertes

(8 . "*")

(0 . "Polyline")

(-4 . "

(-4 . "=")

(70 . 128)

(-4 . "=")

(70 . 0)

(-4 . "OR>")

:ai_str|poly ouvertes

Calques = *

Objets = Contours

Anomalies = Contours Ouverts à tort

 

enregistré dans un fichier toto.nfl et avec un petit.bat qui me renomme toto en filter.nfl, un script

et un raccourci dans le pgp et le tour est joué

 

Cela ouvre des perspective de filtres automatiques vraiment interessantes

 

encore merci à BonusCAD

Lien vers le commentaire
Partager sur d’autres sites

Je vous redonne le fichier nfl (probleme de copier coller :mad: )

:ai_lisp|poly ouvertes

(8 . "*")

(0 . "Polyline")

(-4 . "

(-4 . "=")

(70 . 128)

(-4 . "=")

(70 . 0)

(-4 . "OR>")

:ai_str|poly ouvertes

Calques = *

Objets = Contours

Anomalies = Contours Ouverts à tord

:ai_lisp|polylignes fermées

(8 . "*")

(0 . "Polyline")

(-4 . "

(-4 . "=")

(70 . 129)

(-4 . "=")

(70 . 1)

(-4 . "OR>")

:ai_str|polylignes fermées

Calques = tous

Objets = Polylignes

Anomalies = Polylignes Fermées à tort

Lien vers le commentaire
Partager sur d’autres sites

Je n'avais pas vu tes réponses, désolé :exclam:

 

Pour le caractère "< " il est mal interprété sur le forum, il faut systématiquement rajouter un "Espace" après pour qu'il apparaisse :casstet:

 

Mais je suis content d'apprende que cela fonctionne sous une LT. Je retiens l'info car cela peux vraiment être utile pour ceux qui n'utilise pas LT-Extender.

 

Bidouille complexe, mais ouvrant des possibilités de sélections.

 

NB: Tu peux éditer ton post, au lieu d'en faire un nouveau

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Lien vers le commentaire
Partager sur d’autres sites

  • 10 mois après...

je travaille sous autocad 2006, y'a-t-il moyen de modifier le filtre pour sélectionner les blocs dynamiques en fonction de leur visibilité?

ATEGIE - Bureau d'Études Fluides

http://www.ategie.fr/uploads/ategie/ategie-at%C3%A9gie-bureau-%C3%A9tudes-etudes-fluides-logo-100x56.png

Exécution, Synthèse, Conception, Maîtrise d'Oeuvre, Audit, Chiffrage

www.ategie.fr

Lien vers le commentaire
Partager sur d’autres sites

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é