Accueil > Le jeu AutoCAD du mois > Le jeu AutoCAD du mois n° 13

Le jeu AutoCAD du mois n° 13

lundi 14 janvier 2008, par Eric

Cet article a été lu 2934 fois

Jeux terminé (Cliquez ici pour voir la solution)

Bonjour à tous et bienvenus pour ce 13ème jeu AutoCAD du mois qui est aussi le premier de l’année 2008.

Pour commencer je vous souhaite à tous une très bonne année et une très bonne santé.

Voici donc pour vous l’énigme de ce mois.

Un des grands débats qui existe encore aujourd’hui est, doit on forcer ou non une cote sur un plan AutoCAD.

Nous pourrons peut être rediscuter de cela plus tard, mais vous êtes sans doute déjà tombé sur des plans où des cotes avaient été forcées.

Rappelons ce qu’est une cote forcée.

C’est tout simplement une cote où l’on a remplacé la valeur calculée par AutoCAD par un texte fixe.

L’ennui c’est que rien n’indique qu’une cote est forcée dans un dessin.

On peut le voir éventuellement en éditant le texte de la côte.

Si le symbole <> apparaît (anciennes versions d’AutoCAD) ou si le fond de la dimension est coloré (nouvelles versions d’AutoCAD), la cote n’est pas forcée.

Dans le cas contraire la côte est forcée est ne se mettra plus à jour en cas de modification.

Mais cette manipulation est difficilement applicable sur un plan qui est composé de plusieurs dizaines ou centaines de cotes.

Alors il existe bien des applicatifs, lisp ou VBA qui permettent de détecter et d’afficher ces cotes forcées.

Mais dans ce cas les utilisateurs d’AutoCAD LT ne peuvent pas les utiliser.

Ce qui est bien dommage parce qu’il toujours intéressant de savoir si un plan contient des cotes forcées ou non.

Et pourtant il est possible de détecter et d’afficher les cotes forcées aussi bien sur une version complète d’AutoCAD que sur une version LT.

L’objectif de ce jeu va donc être de trouver une méthode pour savoir combien il y a de cotes forcées sur un plan et de savoir où elles se trouvent.

Versions d’AutoCAD supportées pour ce jeu :

 AutoCAD : OUI

 AutoCAD LT : OUI

Les bonnes réponses seront affichées le Lundi 21 Janvier 2008

Les autres messages seront affichés dans la journée.

Amusez vous bien.

Participants ayant donné la bonne réponse :

 ProfDi a trouvé 2 méthodes ; une qui fonctionne seulement avec la version complète et une autre qui fonctionne aussi avec LT

 Patrick_35 C’était presque bon mais il manque quand même quelque chose.

 Nomutt C’est pas mal du tout, mais il reste quelques cotes en trop. Bon c’est sur après cela dépend de ce que l’on veut comme résultat.

Messages

  • Bonjour Éric et bonne année à tous !

    Bon... je ne sais pas s’il existe une autre méthode, mais je viens d’en trouver une qui fonctionne :

     Lancez la commande "FILTER"
     Ajoutez à la liste des filtres, les deux lignes suivantes :

     Objet = Cote
     Valeur de texte = *0,1,2,3,4,5,6,7,8,9*

     Cliquez sur "Appliquer"
     Choix des objets : TOUT

    Vous aurez ainsi le nombre d’objets trouvés et verrez les objets sélectionnés.

    ;-)

  • Une petite chose que j’ai oublié de spécifier dans mon précédent message est que si une cote a été forcée par seulement du texte, celle-ci ne sera pas sélectionnée.
    Par contre, il serait facile de la repérer.

    De plus, le premier « * » dans la suite « *0,1,2... » est très important, mais le dernier « ...7,8,9* » pourrait ne pas être entré.

    Voilà qui complète. :-)

    • Une petite chose que j’ai oublié de spécifier dans mon précédent message est que si une cote a été forcée par seulement du texte, celle-ci ne sera pas sélectionnée.

      Oui mais avec ma méthode, non plus.

      Après on peut discuter sur la définition exacte d’une cote forcée.

      Mais s’il n’y a que du texte, ce n’est pas trompeur pour l’utilisateur.

      Une cote ou il y marqué L et que ce L se rapporte à un tableau de valeur, ne risque pas d’induire en erreur.

      J’estime qu’une cote est forcé si sa valeur calculée ne s’affiche pas du tout dans la cote et qu’à la place il y a une autre valeur qui a été donnée manuellement.

      ø200 par exemple n’est pas non plus pour moi une cote forcée (à condition que le 200 soit une valeur calculée)

      200 cm ou 200 à vérifier non plus d’ailleurs.

      180x135 non plus si une des deux valeurs est calculée et si la deuxième valeur est une hauteur qui n’apparait pas sur la vue en plan. (hauteur de fenêtre sur la vue de dessus par exemple).

  • Bonjour Eric,

    Ma réponse ressemblera à celle du dernier jeu... à savoir l’utilisation de la commande "rechercher".

    Donc on utilise la "sélection rapide" _find pour sélectionner toutes les côtes du dessin (type d’objet "côtes pivotées", opérateur "tout sélectionner").

    On lance la commande _find et on recherche la chaîne de texte "*" dans la sélection courante et on lance "tout sélectionner". Seules les côtes forcées seront sélectionnées.

    • Bonjour Ludwig,

      T’as proposition n’est pas mauvaise, mais par contre elle n’est pas très fiable.

      Je m’explique.

      La première chose c’est que tu fais une sélection rapide sur les cotes pivotés, donc du coup du ne verra que les cotes pivotés forcées.
      Bon il suffit de refaire la manip sur les autres types de cotes mais du coup il ne faut pas en oublier.

      Le deuxième point c’est qu’avec cette méthode tu sélectionnes plus de cotes qu’il ne faudrait.

      Si tu rajoutes simplement le symbole diamètre devant une valeur de cote, elle sera affichée comme forcée alors que la valeur est bien une valeur calculée et non forcée.

      Même chose pour tous les suffixes et préfixes.

      Cette méthode va également te sélectionner des côtes qui pour une raison ou pour une autre étaient forcées mais où l’on a remis le symbole <> pour réafficher la valeur calculée.

      Du coup ta méthode va aussi la sélectionner parce que il y aura eu un texte de remplacement mais c’est bien une valeur calculée.

      Donc ce n’est pas une mauvaise méthode mais elle manque un peu de rapidité et de précision.

      Je sais je chipote mais bon c’est le jeu :-))

  • Salut Eric

    Tu fais la commande _selectrap.
    On choisit le dessin entier pour appliquer la sélection.
    On choisit comme type d’objets les cotes pivotées.
    On choisit comme propriétés "Remplacement du texte" avec comme opérateur "* Correspondance générique" et comme valeur " " (tilde).
    On choisit comme mode d’application Inclure dans le nouveau jeu de sélection.
    On valide et on trouve ces fameuses cotes forcées.

    @+

    • Bonjour Patrick_35

      Content de voir sur le Jeu AutoCAD du mois.

      Ta méthode est un peu différente de celle de Ludwig mais par contre je ferais les mêmes remarques.

      Persévérez et vous trouverez.

    • Je suis tombé sur ton jeu par hasard et le challenge m’a plu.

      Donc, j’ai bien une solution, mais elle ne me convient qu’a moitié car il faut faire deux manips (le lisp est bien plus simple :o) )

      On lance la commande _selectrap avec une "sélection dans tout le dessin", comme type d’objet les "cotes pivotées", la propriété "Remplacement du texte" et l’opérateur "* Correspondance générique" avec comme valeur le tilde.
      On trouve n éléments de cotes auxquels on a ajouté quelque chose.

      Maintenant, pour ne conserver que les cotes forcées, je relance la commande _selectrap mais sur la "sélection courante, toujours avec le même type d’objet, les mêmes propriétés et le même opérateur mais comme valeur " *<>" (tilde + * + < + >)
      Il me reste les cotes forcées.

      ps : je n’arrive pas à faire apparaitre le caractère tilde :-((

      @+

    • Dommage que je ne puisse revoir mon message mais il me semble que j’ai oublié * de fin

      Le bon opérateur “ *<>*” —> tilde + * + < + > + *

      @+

    • ps : je n’arrive pas à faire apparaitre le caractère tilde

      Oui tiens c’est bizarre ça ne marche pas :-((

  • Alors là Éric, je ne comprends vraiment pas, car je viens encore de l’essayer et ma méthode fonctionne très bien ! :-/

    Pour info, j’utilise la version 2008.

    Si tu veux me faire parvenir un dessin pour lequel ça ne fonctionne pas, ça me ferait grandement plaisir. ;-)

    ...en attendant, je vais essayer de trouver une méthode différente.

  • Je viens de retester et cette fois-ci, j’ai remarqué que ma méthode fonctionne seulement si les côtes modifiées ont été remplacées par un nombre entier.
    Donc, les cotes modifiées comme 0.5 ou 0,5 ne sont pas sélectionnées.

    La recherche se poursuit donc... :-)

  • Bon.... quelques caractères à rajouter dans ma première méthode.
    Cette fois-ci, même les cotes ayant été modifiées comme par exemple 0.5 ou 0,5 sont sélectionnées.

    Donc, pour reprendre à zéro :

     Lancez la commande "FILTER"
     Ajoutez à la liste des filtres, les deux lignes suivantes :

     Objet = Cote
     Valeur de texte = *.*,*0,1,2,3,4,5,6,7,8,9

     Cliquez sur "Appliquer"
     Choix des objets : TOUT

    Vous aurez ainsi le nombre d’objets trouvés et verrez les objets sélectionnés.

    :-)

  • Autre petite modification dans la liste des filtres :-))

     Objet = Cote
     Valeur de texte = *.*,*0,1,2,3,4,5,6,7,8,9
     **Début NOT
     Valeur de texte = *<>*
     **Fin NOT

    Cette dernière modification permet de ne pas sélectionner les cotes dont la valeur calculée "<>" est inscrite dans la case de remplacement de texte par la boîte des propriétés.

    Par exemple, \U+2205<> ou <> (TYPE), etc.

    Je crois bien que cette fois-ci, c’est la bonne... je me croise les doigts ! :-P

  • Une petite dernière... avant d’aller au lit. :-))

    Pour faire compliqué quand on peut faire simple ? !!!

     Commande "DIMREASSOC"
     Sélectionner "TOUT"

    Et voilà...

  • Une autre :

    on sélectionne toutes les côtes par un filtre par exemple.

    On va dans les propriétés, dans le préfixe de côte et on y met un texte ("NON FORCEE" par exemple).

    Toutes les côtes non forcées ou forcée mais utilisant "<>" afficheront ce préfixe.
    Toutes les côtes forcées ne l’afficheront pas.

    Voilà,on repère donc visuellement les côtes forcées.

    La suite de ma réponse est moins glorieux (car je n’ai pas réussi à faire de sélection) : on compte une par une les côtes forcées.

  • Je vais dans le parametre des cotes et je choisi de mettre 0.0000000 pour la precision, les cotes forcé ne change pas.

    ou autre methode

    mettre \C1 ; en prefix et les cotes non forcé prenne la couleur Rouge

    @+
    MDSV31

  • Plus rapide (je pense)
     FILTER
     selection du filtre : cote

    je appliqué

    en suite
     tout ou All selon les versions

    Et dans les propriétés je rajoute
    \C3 ; Les côtes non forcées deviennent VERT
    \C1 ; Les côtes non forcées deviennent Rouge
    ....

    @+
    MDSV31

  • Après plusieurs tests, je peux dire que ma dernière méthode "avec FILTER" ne fonctionne "pas tout à fait" à 100%. Ça fonctionne bien pour toutes les cotes, sauf pour les cotes installées avec "ARCCOTE" (longueur d’arc).

    J’ai essayé de trouver quel code je pouvais bien rajouter à ceux déjà présents dans la liste des filtres de ma dernière tentative avec cette méthode, mais le résultat fût négatif.

    J’ai donc tout recommencé la liste des filtres, qui maintenant, fonctionne très bien pour TOUTES les cotes !

    Voici donc ce que j’ai inscrit dans la liste des filtres (commande "FILTER") :

    Si jamais vous trouvez quelque chose qui ne va pas, faites-le savoir...

    En tout cas, comme un vieux proverbe le dit si bien, "Ce qu’il y a de pire dans la vie que de ne pas réussir, c’est de ne pas essayer." :-)

  • Pour les intéressés, voici le .dwg avec lequel j’ai fait mes expériences.

    Jeu13.dwg

  • Bonjour,

    J’ai cherché et je crois que j’ai trouvé !

    La réponse est : Stéphanie de Monacooooooo !

    Sinon j’ai une autre solution :

    Pour chaque style de cote, je modifie le champ Facteur d’échelle dans la zone Echelle de mesure sur l’onglet Unités principales et j’applique un coefficient de 0.00000001. Dans ce cas les cotes non forcées sont toutes affichées avec une valeur à 0 (zéro).

    Enfin c’est vrai sauf pour les cotes angulaires !

    • La réponse est : Stéphanie de Monacooooooo !

      Ah un fan des inconnus :-))

      Pour le reste :

      Originale comme idée ça.

      Par contre on ne sait pas combien il y en a et il faut les compter manuellement.

    • Bonjour,

      C’est prenant comme jeu hein !

      Je n’avais pas bien lu qu’il fallait compter les cotes forcées.|-)
      Alors on oublie la modification des styles cote.

      Nouvelle proposition (sur une idée de départ de LUDWIG) :

      Séléctionner tous les objets du dessin.
      Lancer la commande Rechercher et dans le champ Remplacer la chaine de texte : puis saisir * ?* et cliquer sur le bouton Tout sélectionner

    • C’est prenant comme jeu hein !

      Ca fait plaisir à entendre :-))

      Bon pour la méthode :

       Si l’on sélectionne tous les objets du dessin cette méthode va aussi sélectionner des objets qui ne sont pas des cotes. Il faudrait ne sélectionner que les cotes avant.

       (puis saisir * ?*) Je ne sais pas si l’espace est voulu avant le ? mais du coup on ne sélectionne pas grand chose.

       Si on enlève l’espace ça fonctionne mieux, mais dans ce cas on sélectionne aussi des cotes qui ne sont pas forcées.

      Une cote avec le symbôle diamètre sera aussi sélectionnée, ainsi qu’une cote où l’on a remis le texte <> pour réafficher la valeur caculée.

      J’adore ce jeux :-))

    • Bonjour,

      Alors j’ai trouvé cette méthode sur AutoCAD 2008 et il n’y a pas d’espace entre * ?*. Après avoir cliqué sur le bouton "Tout sélectionner", les cotes sont filtrées et comptées dans la palette propriétés. Cela fonctionne sauf, en effet, pour les cotes dont le remplacement de texte contient quelque chose.

      Sur AutoCAD LT 2004 (je viens de le vérifier) et AutoCAD 2008 le résultat obtenu est le même mais en procédant différemment.

      Avec la commande Filter, j’ajoute au filtre Cotation=objet et Valeur de texte = * ?*. Ensuite je clique sur le bouton Appliquer et je saisis "tout" pour la sélection d’objet. La, seules les cotes contenant quelque chose dans remplacement du texte sont sélectionnée.

      Cela dit, s’il faut ajouter à une cote un préfixe comme le diamètre ou un suffixe il me semble plus judicieux d’utiliser les champs suffixe et préfixe prévus à cet effet. Le champ remplacement du texte peut être totalement nettoyé avec la touche "Suppr".
      La c’est clair il y a débat ! Mais si je dois vérifier un dessin contenant des cotes forcées (mais alors vraiment forcées) j’ai le loisir d’inspecter ensuite ma sélection (en ayant par exemple forcé leur couleur) pour les redresser au niveau du suffixe et du préfixe éventuels. Ainsi je n’aurais à la fin que des cotes dont la mesure est réellement forcée ! (C’est qui qui chipote la ??? :->)

      Un inconvénient en revanche provient des nouvelles cotes apparues récemment sur AutoCAD lorsque je fais une recherche avec une ancienne version AutoCAD suite à l’enregistrement du dessin sous une version antérieure.

      Maintenant, s’il existe une méthode capable de tenir compte de la justesse de la mesure même s’il y a remplacement et sur les objets considéré comme Proxy, je verrais ça ce soir ! Ma curiosité est vraiment piquée et je suis impatient de connaitre The méthode !

  • Bravo à ProfDi qui a été le premier à trouver une bonne réponse.

    Bravo aussi à tous les participants qui se sont penchés sur ce problème.

    En tout cas pour ce premier opus de 2008, la participation a été record

    Pour infos voici la méthode que j’avais élaborée au départ.

    Qui est certainement discutable mais qui fonctionne pas trop mal.

     Utilisez la commande FILTER

     Dans la boite de dialogue ajoutez : Objet = Cote

     Ajoutez aussi : Valeur de texte = *#* (ce qui permet de sélectionner les cotes ayant un chiffre à la place de la valeur calculée)

    # signifie : Remplace un chiffre quelconque

     Ajoutez : Valeur de texte = Tilde*<>* (pour exclure les cotes avec la valeur calculée)

    Pour avoir le tilde (qui ne veut pas s’afficher ici) utilisez la combinaison de touches ALT GR + 2 puis espace.

    Tilde signifie : Recherche tous les caractères, sauf ceux indiqués.

    Cliquez sur le bouton Appliquer et sélectionnez tout le dessin.

    Et voila.

    Bien sur on pouvait combiner comme vous l’avez fait d’ailleurs, d’autres expressions que celle ci.

    Merci encore pour cette participation et à bientôt.

Un message, un commentaire ?

modération a priori

Ce forum est modéré a priori : votre contribution n’apparaîtra qu’après avoir été validée par un administrateur du site.

Qui êtes-vous ?
Votre message

Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document