Laurent_CAMPEDEL Posté(e) le 14 décembre 2004 Posté(e) le 14 décembre 2004 J'ai pu lire qu'il était de mise de fêter ses ceintures :) Alors, voilà, pour ma verte, je partage un de mes petits trucs, qui intêressera au moins les novices. Lorsque l'on dessine, on doit régulièrement rentré des valeurs numériques pour créer des objets (encore que j'en ai vu dessiné à la volée, en regardant l'affichage des coordonnées :(... ).Ainsi, telle ligne doit être dessinée à telle distance de telle autre. Tout ça, ce n'est rien que du quotidien. Là où ça se corse, c'est lorsque l'on doit rentrer une valeur infini, par exemple 1/3, ou plus compliqué 130/7 (pensez aux calpinages...).Pour l'instant, vous tapez sois 0.333333 (et quelques 3 de plus quand vous en avez le courage), soit vous prennez votre caculatrice, tapez l'opération, puis rentrez 18.57142857 qui est le nombre donné par l'outil. J'opposerais 3 arguments à la méthode :1)c'est imprécis (au sens des 16 décimales que gère AutoCAD)2)on est obligé de prendre la caculatrice3)il existe une méthode simple et exacte (au sens des 16 décimales que gère AutoCAD) :) La méthode, la voici : lorsque AutoCAD atend une valeur, tapez directement au clavier la division !Exemple avec copier : Commande: c COPIERChoix des objets: 1 trouvé(s)Choix des objets: Spécifiez le point de base ou déplacement ou [Multiple]:0,0Spécifiez le deuxième point de déplacement ou déplacement>: 130/7Commande: Ceci est vrai pour toutes les commandes qui attendent une valeur numérique ! Par contre, cette capacité d'AutoCAD ne permet de rentrer que des divisions (pas d'autre opérations) de nombres entiers. Pour les nombres décimaux, il est très facile de contourner cette limitation : il suffit de multiplier par puissance de 10 le dividente et le diviseur. Exemple : la division 1.2/2 devra être rentrée sous la forme 12/20, la division 12/0.35 sous la forme 1200/35. Facile non ? Pour les autres opérations, il faut obligatoirement passer par le mode calculatrice lisp. Ainsi, l'opération 3x5 devra être rentrée sous la forme (* 3 5). A ce stade, je préfère utilsier la calculatrice, car je n'ai pas l'habitude du système polonais inversé :)... Voilà. J'epère que vous en servirez tout le temps maintenant :) Laurent CAMPEDELDans l'usage des raccourcis clavier repensés tu trouveras la voie.
Krynn Posté(e) le 14 décembre 2004 Posté(e) le 14 décembre 2004 Bonjour, si je peu me permettre d'ajouter ma contribution. avec les version qui ne sont pa LT, il existe 'cal qui simule une calculette. donc il est possible de faire Commande: copier Choix des objets: Spécifiez le coin opposé: 4 trouvé(s) Choix des objets: Spécifiez le point de base ou déplacement ou [Multiple]: Spécifiez le deuxième point de déplacement ou : 'cal >> Expression: 50.2/3.6 13.9444 ou encore des formule plus complexe, comme Commande: cal >> Expression: (200*2)/3 133.333 voir meme utiliser des ^ pour puissance Il y a aussi deja eu un sujet ou l'on est limité a 32767,par exemple avec Commande: cal >> Expression: 200*200 >> Erreur: La valeur entière de l'expression n'est pas comprise entre -32768 et 32767. alors il est possible de le contourner avec Commande: cal >> Expression: 200.0*200 40000.0 le fait de mettre un chiffre avec une decimale fait sauter la limite n'oublier pas de mettre le ' avant le cal pour l'utiliser devant pendant une commande. et avec cal, il n'est plus necessaire de faire du polonais inverse a la HP. ;)
Tramber Posté(e) le 14 décembre 2004 Posté(e) le 14 décembre 2004 Ca marche aussi sur LT, alors chapeau. Tu n'as plus qu'à le signaler à Patrick pour qu'il le range en bonne place avec les trucs et astuces. Bureau d'études dessin. Spécialiste Escaliers Développement - Formation ./__\. (.°=°.)
Serge Posté(e) le 14 décembre 2004 Posté(e) le 14 décembre 2004 Laurent, Tout d'abord, à l'approche de Noël, je préférerais me débarrasser de ma ceinture :-). En Amérique, et peut-être en France aussi, la taille du linge de femme se calcule en age. On peut porter de la taille 0 à la taille 20.Je ne connais pas l'origine de ce système bizarre. Moi, je porte du 8. En fait, c'est que quand j'attache ma ceinture, j'ai l'air d'un 8. Revenons aux chiffres après le point. Saviez-vous que le diamètre d'un atome d'hydrogène est de 1 angström, c'est-à-dire 10e-10 mètre ou 10e-7 mm. Lorsqu'on trace, on n'a pas besoin de 14 chiffres après le point. C'est pourquoi l'échelle de la fenêtre flottante est passé de la double précision à la simple précision à partir de la 2000i. Si je vous dis cela, c'est qu'on a eu des surprises avec le MVPort. Toujours pour se donner des repères, le diamètre du noyau d'hydrogène (le proton) est de 10e-12 mm. Pourquoi 14 ou 16 chiffres après le point. Pour réduire les erreurs après plusieurs manipulations mathématiques. Je n'entrerai pas dans le détail des mathématiques mais il va de soi que plus le nombre de chiffres significatifs est élevé et plus on est précis, surtout dans les divisions. Toute la géométrie des objets est basée sur des calculs de matrices, qui sont en fait des tableaux de 4x4 chiffres se multipliant entre-eux. Tout traitement de nombres réels (doubles) par AutoCAD se fait en double précision. Il ne faut pas se méprendre avec l'affichage du résultat sur la console qui n'est qu'en simple précision. Aussi, il faut se méfier du piège suivant : l'interpréteur d'AutoLISP retourne les résultats selon la précision la plus élevée des nombres reçus. Si on passe 2 entiers, on recevra un entier. Si on passe un double et un entier, on recevra un entier. Le calculateur (fonction en arx issue de geomcal.arx) retourne toujours les nombres en double précision. Finalement, au rythme où tu participes, tu auras rejoins Tramber d'ici un an :-)) Serge
Laurent_CAMPEDEL Posté(e) le 14 décembre 2004 Auteur Posté(e) le 14 décembre 2004 Ca y est , Serge est réveillé :) ! J'aime bien lire des histoires de la vie au Québec, on a toujours l'impression d'être à une autre époque :). Par contre, j'ai besoin d'un cours de Québécois :) : qu'est-ce que le "ligne de femme" ? Est-ce les brassières et autres sous-vêtements, ou est-ce les habits en général ? Et pour ne pas être hors de propos, je ne comprend pas ton explication sur l'interpréteur. Si on donne une division de 2 entiers, le résultat sera un entier ? Laurent CAMPEDELDans l'usage des raccourcis clavier repensés tu trouveras la voie.
Serge Posté(e) le 14 décembre 2004 Posté(e) le 14 décembre 2004 Laurent, Belle coquille. On parle de courbe de femme et non de ligne. C''était écrit linge et non ligne, puisqu'on parle d'habillement et de ceinture. Pour l'interpréteur, c'est exactement ce que je disais: 1/2 donne 0 parce que 2 nombres entiers donne un résultat en entier. Par contre 1.0/2 donne 0.5 Et tant qu'à y être, avec le calculateur, on peut écrire .5*2 qui donne 1 .0En AutoLISP, on aurait reçu un "invalid dotted pair" à cause du zéro absent devant le point. Serge
Laurent_CAMPEDEL Posté(e) le 14 décembre 2004 Auteur Posté(e) le 14 décembre 2004 Laurent, Belle coquille. On parle de courbe de femme et non de ligne. C''était écrit linge et non ligne, puisqu'on parle d'habillement et de ceinture. Tu crois que c'était un lapsus toi ? ;)Mais dis, t'en profiterais pas pour ne pas répondre toi :). Qu'est-ce donc que le linge de femme ? Pour l'interpréteur, c'est exactement ce que je disais: 1/2 donne 0 parce que 2 nombres entiers donne un résultat en entier. Par contre 1.0/2 donne 0.5 Et tant qu'à y être, avec le calculateur, on peut écrire .5*2 qui donne 1 .0En AutoLISP, on aurait reçu un "invalid dotted pair" à cause du zéro absent devant le point. Hou, je comprend beaucoup mieux !Il ne faut donc sutout pas utiliser l'interpéteur lisp pour introduire des valeurs provenant de division..... Au hasard, c'est peut-êre bien pour ça que l'on peut rentrer directement les divisions ;) ? Merci de cette précision. Serge Laurent CAMPEDELDans l'usage des raccourcis clavier repensés tu trouveras la voie.
Serge Posté(e) le 14 décembre 2004 Posté(e) le 14 décembre 2004 Laurent, Pour le linge, je vais me dérober. Pour l'appel de l'interpréteur, il faut nuancer. Si on répond 1/12 sur la ligne de commande, c'est AutoCAD qui calcule. Dès qu'on entre une parenthèse, c'est AutoLISP. Pour ce qui est de l'utilisation des résultats, c'est le rôle du rpogrammeur de faire ses validations. Lorsqu'il a un doute sur la nature de ses nombres, il peut toujours multiplier par 1.0. Serge
Laurent_CAMPEDEL Posté(e) le 14 décembre 2004 Auteur Posté(e) le 14 décembre 2004 dérober.Héhé, jeu de mots, jeu de mots comme disait Maître Capello :).........http://jeuxde20h.free.fr/capelo.htm Pour l'appel de l'interpréteur, il faut nuancer. Si on répond 1/12 sur la ligne de commande, c'est AutoCAD qui calcule. Dès qu'on entre une parenthèse, c'est AutoLISP. Oui, j'ai bien compris.C'est pour ça que j'émet l'hypothèse que les divisions furent rendues possible directement, parce qu'avec l'interpréteur ne pouvait les rentrer "facilement". Comment faudrait-il rentrer la valeur 1/3 avec l'interpréteur ? (/ 1.000000000000000 3) ? Pas jouable :) Pour ce qui est de l'utilisation des résultats, c'est le rôle du rpogrammeur de faire ses validations. Lorsqu'il a un doute sur la nature de ses nombres, il peut toujours multiplier par 1.0. Oui, en programmation je suis bien d'accord, mais sur la ligne de commande..... Serge Laurent CAMPEDELDans l'usage des raccourcis clavier repensés tu trouveras la voie.
Serge Posté(e) le 14 décembre 2004 Posté(e) le 14 décembre 2004 Laurent, Tu peux m'appeler maitre Capillaire. Ça me redonnera vingt ans. Serge
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