Aller au contenu

l56

Membres
  • Compteur de contenus

    201
  • Inscription

  • Dernière visite

Tout ce qui a été posté par l56

  1. l56

    Gérer la touche ECHAP

    Je ne comprends pas. Imagine un morceaux de code du genre: (command "_line" "0,0" "1,1" pause "") Bon, passons sur la qualité du code, je pourrais faire un getpoint avant et remplacer ma pause ..... Quand l'utilisateur du code en sera à "pause", il devra donc cliquer un dernier point et la commande ligne se terminera. Mais il pourra aussi appuyer sur la touche ECHAP, et c'est bien cela que je souhaite éviter pour que l'utilisateur n'est pas d'autre choix que de cliquer un point (ou valider.) donc avant cette ligne de code, j'aimerai déactiver la touche ECHAP. Est-ce possible ?
  2. l56

    Gérer la touche ECHAP

    oui, dans un lisp. Mais si tu passes par *error", cela veut dire que la touche ECHAP à été enfoncé or moi je voudrais que la touche ECHAP sois ignoré, comme si elle n'avait jamais été touché, que l'utilisateur ne puisse pas interrompre le lisp
  3. l56

    Gérer la touche ECHAP

    Je pensais à quelque chose de plus radical: l'appuis sur la touche ECHAP serait sans conséquence, comme ci elle n'existait pas. Un petit programme qui agirait plutot sur Windows que dans AutoCAD.
  4. Bonjour, Est-il possible de rendre inactive la touche ECHAP à un endroit précis d'un programme lisp et de la rendre à nouveau active à un autre moment merci
  5. l56

    modifier la date d\'un fichier

    merci, je vais voir ce que je peux faire avec ça. a+
  6. l56

    Zoom avec boite de dialogue ouverte

    Je ne souhaite pas la masquer. On peut intervenir sur l'ecran avec une bdD ouverte en faisant par exemple (setvar "tilemode" 1), ça marche tres bien. Mais comment faire un zoom ?
  7. Bonjour, Tout est dans le titre ... Ne pouvant pas utilisé (command "_zoom"... , y a t-il un autre moyen ? merci a+
  8. l56

    modifier la date d\'un fichier

    Plutôt la date de création. mais si on peut modifier les deux, je veux bien savoir comment. :-) merci
  9. Bonjour, Avec la command lisp OPEN, je peux créer un fichier, mais j'aimerai lui donner une autre date que la date de création. Est-ce possible ? Merci
  10. l56

    Nombre de Jeux de sélection ouvert

    Effectivement, sujet très interressant. Merci (Gile)
  11. l56

    Nombre de Jeux de sélection ouvert

    Merci Zebulon_, ça marche tres bien. Bonne soirée L56
  12. Bonjour, Comment connaitre le nombre de Jeux de sélection ouvert ? Peut-on en ouvrir plus de 128 ? Merci à ceux qui savent. l56
  13. l56

    Suppression d\'un groupe anonyme

    Les commandes grp et dgrp , c'est le top ! Merci encore bye
  14. l56

    Suppression d\'un groupe anonyme

    Merci (gile), je vais y jeter un oeil ...
  15. Bonjour, Si je nomme un groupe; "GROUP1" et que je souhaite le supprimer, je fais: (setq grpdict (cdr (car (dictsearch (namedobjdict) "ACAD_GROUP")))) (dictremove grpdict "GROUP1") et ça marche. Mais si je veux supprimer un groupe Sansnom (ex: "*A2"), cela ne marche pas. Existe-t-il une solution en VLISP ? le probleme est le meme pour renommer. Merci
  16. l56

    Jeux de sélection \"précédent\"

    Bon. Je vais vous expliquer mon astuce à 2 balles ! Dans un jeux de sélection (JS1), vous avez 10 entités. La suite des évenements fait que sur ces 10 entités, 3 sont éffacées par l'utilisateur. Le probleme c'est que (sslength JS1) renvoi toujours 10. Donc une boucle du type (repeat (sslength JS1) .... ne fonctionne plus comme je voudrai. Donc, avant de lancer cette boucle, je faisais: (command "_select" JS1 "") et apres (ssget "_p") dans la suite du programme cela permet de "purger" du jeux les entités effacées Je sais, il y a nettement plus noble, mais ça marchai ! Depuis que j'utilise les reacteurs, les commandes d'AutoCAD sont à bannir. Je dois donc remplacer (command "_select" JS1 "") par un routine qui purge les entités effacées (ça, ça va, je sais faire) mais je dois aussi rendre ce jeux de sélection accessible par (ssget "_p"). et (sssetfirst nil jsl) (sssetfirst nil nil) ne fonctionne pas. Si une solution rapide existe, tres bien, sinon je prendrai le temps de re-coder correctement tout ça. Merci
  17. l56

    Jeux de sélection \"précédent\"

    Je sais , c'est un peu tordu. Imagines que tu as des entités dans un jeu de sélection (js1) et que le jeux de sélection précèdent n'est pas js1. (car c'est un "vieux" jeux de sélection) Comment le repassé en précédent SANS utilisé de commande. Cette solution me permettrait de ne pas retoucher à ce qui est déjà codé. Mais c'est vrai, le mieux serait de tout refaire correctement. C'est sûrement ce que je vais faire si je ne trouve pas cette astuce. En tout cas, merci de ta réponse à ce faux problème. a+
  18. Comment peut-on, créer un jeux de selection répondant à (ssget "p") sans être créé en utilisant une commande AutoCAD mais une fonction Lisp ou Vlisp. Si quelqu'un à une idée ... Merci
  19. l56

    Commande apres un double-clic

    Merci à vous ! Vous avez raison tout les deux, ce qui me gene le plus c'est que l'on ne peut pas supprimer l'action de base generée par AutoCAD. Je vous explique mon pb: Double clic sur MTEXTE et _.mtedit se lance, mais si ce texte appartient à un GROUP, alors c'est _.properties. Avec le bon reacteur je peux corriger cela mais j'aimerai supprimer la fenetre _.properties seulement si elle s'est lancée apres mon double-clic. Car elle était peut etre la avant et dans ce cas, je ne dois pas l'enlever. Comment savoir si _.properties est actif ? PS pour (Gile): verifie le message privé que tu m'as envoyé, de toute évidence, il n'est pas pour moi. a+ [Edité le 21/1/2008 par l56]
  20. Comment choisir la commande qui va automatiquement se lancer apres un double-clic ? Ex: double-clic sur une entité MTEXT et "_.mtedit" se lance. Est-il possible de lancer une autre commande ? et si oui, comment ? Merci [Edité le 19/1/2008 par l56]
  21. l56

    Ordre d\'affichage

    Commande: (tblobjname "block" "*model_space") [b] < Nom d'entité: 7ef60d00>[/b] Commande: (setq *acdoc* (vla-get-ActiveDocument (vlax-get-acad-object))) [b] #< VLA-OBJECT IAcadDocument 0d4e8f84>[/b] Commande: (setq space (if (= (getvar "CVPORT") 1) ((_> (vla-get-PaperSpace *acdoc*) ((_> (vla-get-ModelSpace *acdoc*) ((_> ) (_> ) [b] #< VLA-OBJECT IAcadModelSpace 0d56b554>[/b] Commande: (setq dict (vla-getExtensionDictionary space)) [b] #< VLA-OBJECT I [surligneur] AcadDictionary [/surligneur]0d56a0d4>[/b] Commande: (setq sort (vla-addObject dict "ACAD_SORTENTS" "AcDbSortentsTable")) [b] ; erreur: Erreur Automation. Aucune description n'a été entrée[/b]. Je t'ai surligné la différence de résultat entre ton code sur ta machine et sur la miene. Test fait sur AutoCAD 2004 et 2006. Merci encore a+
  22. l56

    Ordre d\'affichage

    Je ne l'ai pas oublié. La variable SPACE est défini. Commande: !space # < VLA-OBJECT IAcadModelSpace 0d56a304> ensuite j' exécute: (if (vl-catch-all-error-p (setq sort (vl-catch-all-apply 'vla-getObject (list (vla-getExtensionDictionary space ) "ACAD_SORTENTS" ) ) ) ) (setq sort (vla-addObject (vla-getExtensionDictionary space ) "ACAD_SORTENTS" "AcDbSortentsTable" ) ) ) Mais il renvoi: ; erreur: Erreur Automation. Aucune description n'a été entrée. Qu'est-ce qu'une description ?
  23. Bonsoir, Quelqu'un peut il me dire si l'option dessous de la commande draworder demande un jeux de sélection ou une seule entité. En 2004 c'est une seule entite En 2006 c'est un jeu de sélection Mais je n'ai pas 2005 pour tester. Merci.
  24. l56

    Ordre d\'affichage

    Merci, je viens de tester mais le code suivant me retourne une erreur. Et je ne connais pas grand chose au vlisp. (setq sort (vl-catch-all-apply 'vla-getObject (list (vla-getExtensionDictionary space ) "ACAD_SORTENTS" ) ) ==> #%catch-all-apply-error% Donc : (setq sort (vla-addObject (vla-getExtensionDictionary space ) "ACAD_SORTENTS" "AcDbSortentsTable" ) ==> #%catch-all-apply-error% Je crois qu'il n'arrive pas à créer le dictionnaire Je pense que la variable space est corectement défini, il rerourne : #VLA-OBJECT IAcadModelSpace 01106b94 [Edité le 2/1/2008 par l56]
  25. l56

    Ordre d\'affichage

    Bonjour et Bonne année 2008 ! Est-il possible de modifier l'ordre d'affichage SANS provoquer de régénération ? Avec la commande "_.draworder", je pense que c'est impossible. Existe-t-til une solution VLISP ? a+
×
×
  • 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é