Aller au contenu

Bred

Membres
  • Compteur de contenus

    2 764
  • Inscription

  • Dernière visite

Tout ce qui a été posté par Bred

  1. Si !!!... :mad: ;) Preuve : Ton code, (gile) ... ben je voulais faire pareil, mais je suis presque sûr que le miens est plus rapide .... (mais bon... faut voir la quantité de cote tu me diras ...) bon, daccord, il y a un (command ... mais justement ....
  2. re, pour les cotations, en guise d'outils moins violent, tu peux faire ça : (defun c:cc () (if (not (tblobjname "LAYER" "cotations")) (vla-add (vla-get-Layers (vla-get-ActiveDocument (vlax-get-acad-object))) "cotations")) (command "_LAYMCH" (ssget "_X" '((0 . "DIMENSION"))) "" "N" "cotations") ) tu tapes cc sur la ligne de commade, et toutes les cotes présentes seront placé sur le calque "cotation" (à modifier si besoin) mais tu es sous quelle version ?
  3. Re, Charger un lisp : là. (gile) Tout à fait, c'est juste un code que tu charge ou pas à l'ouverture d'un nouveau plan. .. ben tu n'as qu'à utiliser le changement de propriétés ... (_matchprop) ... mais pour défendre un peu ma proposition, je n'ai pas fait de mise qur calque des hachures (je peux le faire), mais je peux mettre n'importe quel entité sur un calque voulus.... sans changer de bouton, ni la macro. Et c'est "dédébrayable !" ....
  4. (gile) : Zebulon : Bon... ben moi, je vais me coucher... :( On ne me reprendra plus de sitôt à proposer un truc avec des réacteurs ... complétement ecoeuré .... :mad: ;)
  5. Salut Tramber, Ton script peut fonctionner pour les cotes continus ? (c'était un point délicat pour mon code...) ça me dégouterrais bien de ne pas y avoir pensé ...
  6. je le crées (entmod ....)
  7. Re, la prposition de grand_sapin fonctionne, mais attention, cela t'active le calque désigné, et à moins que pour tous les outils (ligne ...) tu fasse un chagement de calque, il y a un risque de te retrouver avec des objets qui ne seront pas sur le bon calque (si tu fais une ligne après une cote par exemple). mais c'est une méthode "plus douce" ... ;)
  8. Salut, oui, c'est possible, avec les réacteur de commandes. Test ça : cela te permet de mettre automatiquement les cotes sue le calque "cotation" ou les textes sur le calque "texte". Attention, ceci fonctionne dans le principe de variable : Variable Bred-CoteAuto à mettre sur 1 et variable Bred-TxtAuto à mettre sur 1 si tu veux utiliser l'outil. Ceci est enregistré dans la base de registre (HKEY_CURRENT_USER\\Software\\Bred\\Variables) ;;; Ecriture Automatique des cotes dans calque "cote" ;;; Ecriture Automatique des textes dans calque "texte" ;;; par Fred BONNAUD le 17/04/2007 ;;; Version 1.0 ;;; Ecrire/Changer Variable + valeur (defun PUT-var (variable valeur) (vl-registry-write "HKEY_CURRENT_USER\\Software\\Bred\\Variables" variable valeur) (princ) ) ;;;Récupérer valeur variable (defun GET-var (variable) (setq valvar (vl-registry-read "HKEY_CURRENT_USER\\Software\\Bred\\Variables" variable)) valvar ) ; Cotes sur Calque (defun c:Bred-CoteAuto (/ val test) (if (equal (GET-var "Bred-CoteAuto") nil) (vl-registry-write "HKEY_CURRENT_USER\\Software\\Bred\\Variables" "Bred-CoteAuto" 0) ) (while (equal test nil) (setq val (getint (strcat "\n Entrez une Nouvelle valeur pour Bred-CoteAuto <" (rtos (GET-var "Bred-CoteAuto"))"> :"))) (if (not (or (equal val 0)(equal val 1)(equal val nil))) (progn (princ "Choix : 0 ou 1")(setq test nil)) (setq test "ok") ) ) (PUT-var "Bred-CoteAuto" val) (princ) ) ; Texte sur Calque (defun c:Bred-TxtAuto (/ val test) (if (equal (GET-var "Bred-TxtAuto") nil) (vl-registry-write "HKEY_CURRENT_USER\\Software\\Bred\\Variables" "Bred-TxtAuto" 0) ) (while (equal test nil) (setq val (getint (strcat "\n Entrez une Nouvelle valeur pour Bred-TxtAuto <" (rtos (GET-var "Bred-TxtAuto"))"> :"))) (if (not (or (equal val 0)(equal val 1)(equal val nil))) (progn (princ "Choix : 0 ou 1")(setq test nil)) (setq test "ok") ) ) (PUT-var "Bred-TxtAuto" val) (princ) ) ;;; Test pour Réaction FIN de Commandes (à compéter si besoin) (defun Reacteur_FIN_Commandes (Rea Cde) (cond ((and (equal (car Cde) "DIMLINEAR")(equal (GET-var "Bred-CoteAuto") 1)) (entmod (subst (cons 8 "Cotation")(assoc 8 (entget (entlast)))(entget (entlast))))) ((and (equal (car Cde) "DIMALIGNED")(equal (GET-var "Bred-CoteAuto") 1)) (entmod (subst (cons 8 "Cotation")(assoc 8 (entget (entlast)))(entget (entlast))))) ((and (equal (car Cde) "DIMCONTINUE")(equal (GET-var "Bred-CoteAuto") 1)) (progn (setq dernier_obj (entnext dernier_obj)) (while dernier_obj (entmod (subst (cons 8 "Cotation")(assoc 8 (entget dernier_obj)) (entget dernier_obj))) (setq dernier_obj (entnext dernier_obj))))) ((and (equal (car Cde) "MTEXT")(equal (GET-var "Bred-TxtAuto") 1)) (entmod (subst (cons 8 "Texte")(assoc 8 (entget (entlast)))(entget (entlast))))) (t nil) ) ) ;;; Réacteur de Test de FIN de Commande à charger au démarrage. (if (not Rea_FIN_Commandes) (setq Rea_FIN_Commandes (vlr-command-reactor nil (list (cons :vlr-commandEnded (function Reacteur_FIN_Commandes))))) )
  9. Bred

    raccourcis clavier modifiés

    Ah, désolé, je n'avais pas compris la question : je croyais que c'étais les raccourcis qui ne fonctionnaient plus, non pas la sélection nom-verbe ..... j'ai dû te faire perdre du temps... :exclam:
  10. Bred

    Lisp de Bonuscad

    Bonuscad, Merci ! (décidement, en ce moment, que du bonheur !!! ) :D :D :D
  11. Salut, ça n'est pas trés facile à expliquer comme ça.... le eput que je peut te dire c'est qu'il faut ne pas avoir "peur" d'utiliser des trais de constructions, que soit tu laisse sur un calque à part, soit tu effaces à l'avancement....
  12. Bred

    Lisps de gile

    merci! je vais tester ça. et j'en fait partis !... Ne pense tu pas qu'il serait intéréssant de mettre dans la description de ton lisp l'adresse du message original qui en est la base ? Quelque-fois il y a plusieurs versions qui peuvent intérésser, voir des explications...
  13. Salut, En fait, ta demande est possible en prog, mais vraiment trés lourde, car il faut "rentrer" dans tout les blocs ET imbrication de blocs, récapituler les calques se trouvant dans le blocs et les sous-blocs et quand on trouve le bon calque, repérer le bloc, puis continuer dans les sous-blocs, etc... et ceci pour tous les blocs.... Donc, soit plus clair dans ta demande : que veux tu faire avec ce bloc contenant un objet dans un claque précis ?
  14. Bred

    raccourcis clavier modifiés

    Salut et bienvenue, Si tu charges un developpement (lisp, vb ...) en parrallèlle, peut être celui -ci ne se charge plus. Ou sinon c'est le fichier AutoCAD.pgp qui est modifié (outils-personnalise/paramètre du prog (pgp))
  15. c'est le "quelque" qui est important... 2Ko c'est trés peu... mais 300 aussi... donc un gabarit porte son nom : met tous ce qui t'est essentiel pour travailler... quand tu auras fini, tu purge, et ce qui est inutile par aux oubliettes ....
  16. Salut, je n'utilise pas les xref, mais là j'ai un doute : Tu dois non pas touché au dessin de "base", mais modifié l'orientation du dxf insérer dans ton plan, car si le plan de base est mis à jour par l'archi, tu vas te retrouver à refaire la manip... et c'est contraire à la logique de l'utilisation des xref.... Donc tu fait une rotation du xref Insérer dans TON plan! d'où la remarque de TRAMBER sur l'utilisation de l'option référence dans la rotation. (cela te permet d'orienter un objet dans la même orientation qu'un autre).
  17. Bred

    bloc non decomposable

    C'est un peu bizarre, mais on ne sait jamais : tu change "Nom_bloc" par le nom de ton bloc, et tu copies ça dans ta ligne de commande, puis tu essayes d'exploser : (vla-put-explodable (vla-item (vla-get-Blocks (vla-get-ActiveDocument (vlax-get-acad-object)) ) "Nom_bloc" ) :vlax-true )
  18. Bred

    bloc non decomposable

    Salut, que te dit la ligne de commande ?
  19. Bred

    Lisps de gile

    Salut, Suggestion concernant Ins3D je ne sais pas si tu préferes que je poste mes remarques ici ou dans le sujet original, donc fait le savoir !.. Alors, tout fonctionne correctement, sauf qu'un petit souci se pose à moi : Lors de la première insertion de bloc, on se base par rapport à des points existants, ce qui est logique. Mais ensuite, si l'on veut "empiler" sur le bloc précédent, on perd la possibilité de récupérer la "référence de base". exemple : j'insert le bloc bleu en suivant la ligne blanche. Mais lorsque je veux insérer le bloc vert, je n'ai plus la possibilité de récupérer la référence (ligne blanche). http://xs114.xs.to/xs114/07161/ins3d2.JPG En fait, je me demande si à la question d'orientation, il ne faudrait pas une option comme "Précédent"... merci.
  20. Ben là, raté !... désolé !... si il y a bien quelquechose que je n'utilise jamais, ce sont les xref.... donc je te laisse dans les mains précédente qui ont l'air beaucoup plus compétante en ce domaine !!!
  21. Bred

    Lisps de gile

    Allez, une réponse pas trés constructive : Merci !!! :) :) :)
  22. Bred

    Impossible de copier un objet

    Re, Créés un "wbloc" avec le cartouche et insert le où tu veux.
  23. Bred

    Impossible de copier un objet

    Salut, http://www.cadxp.com/sujetXForum-11022.htm http://www.cadxp.com/sujetXForum-14617.htm
  24. et même comme ça : (Defun C:Corner() (setq Pline(entsel "\n Sélectionner un polyligne: ")) (setq Pline(entget (car Pline))) (princ (cadr (assoc 10 Pline))) (princ) )
  25. :casstet: Ben non 2 : (10 -16.4856 138.843) est une valeur récupérer par assoc, donc rien à voir avec luprec ...
×
×
  • 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é