Aller au contenu

Patrick_35

Membres
  • Compteur de contenus

    6 374
  • Inscription

  • Dernière visite

  • Jours gagnés

    30

Tout ce qui a été posté par Patrick_35

  1. Patrick_35

    Suppression des

    Salut Ou encore utiliser StripMtext @+
  2. Salut Par exemple en créant un répertoire bak du dessin courant s'il n'existe pas et ensuite en déplaçant le .bak dans ledit répertoire. Le nom du répertoire se trouve dans la variable rep (à changer selon le besoin) ; Réacteur (defun patrick:bouger_bak(rea dwg / anc des fso nom rep tot) (setq des (cadr dwg) rep (strcat (vl-filename-directory des) "/bak") nom (strcat (vl-filename-base des) ".bak") fso (vlax-create-object "Scripting.FileSystemObject") ) (or (findfile rep) (vlax-invoke fso 'CreateFolder rep) ) (and (setq tot (findfile (strcat (vl-filename-directory des) "/" nom))) (setq anc (findfile (strcat rep "/" (vl-filename-base des) ".bak"))) (vl-file-delete anc) ) (and tot (vlax-invoke-method fso 'MoveFile tot (strcat rep "/")) ) (vlax-release-object fso) (princ) ) ;Activer le réacteur (defun c:mbak() (if patrick:reacteur_bak (princ "\nLe réacteur est déjà actif.") (setq patrick:reacteur_bak (vlr-dwg-reactor nil (list (cons :vlr-savecomplete (function patrick:bouger_bak))))) ) (princ) ) ; Désactiver le réacteur (defun c:rbak() (if patrick:reacteur_bak (progn (vlr-remove patrick:reacteur_bak) (setq patrick:reacteur_bak nil) ) (princ "\nLe réacteur est déjà désactivé.") ) (princ) ) @+
  3. Salut Et avec polar ? (defun c:acier11 () (setq ptac3 (getpoint "/n donner le premier point")) (setq ptac4 (getpoint ptac3 "/n donner le deuxieme point")) (setq nbr11 (getint "/n donner nombre acier")) (setq d1 (/ (distance ptac3 ptac4) (1+ nbr11))) (setq dist d1) (setq ang (angle ptac3 ptac4)) (repeat nbr11 (command "_.insert" "cercle" "_none" (polar ptac3 ang dist) "1" "1" (* (/ ang pi) 180.0)) (setq dist (+ dist d1)) ) ) @+
  4. Patrick_35

    je galére

    Il va faloir faire joujou avec les dictionnaires "ACAD_LAYERFILTERS" et "AcLyDictionary" (depuis 2007/8 ?) @+
  5. Et le lien que je t'ai donné ? @+
  6. Salut Une liste déroulante à regarder et un clic à faire, mais c'est encore trop (à quand le câble branché du cerveau à l'ordi ?). Tu as Def qui permet de rendre courant le style de cote de la cote cliqué. @+
  7. Patrick_35

    je galére

    Salut (setq js (ssget "x" (list (cons 8 "*toto*")))) @+
  8. Salut Dans la barre des icônes, tu ajoutes la barre de style dans laquelle tu as le choix des styles de cotes. @+
  9. Patrick_35

    Barre de progression

    Salut un exemple qui utilise ou pas la progress bar des express tools (defun c:test(/ express n tot wait) (and (eval 'acet-ui-progress-done) (setq express T)) (setq tot 100 wait "|" n 0) (if express (acet-ui-progress-init "Avancement : " tot) (princ (strcat "\nTraitement en cours... " wait)) ) (repeat tot (repeat 100000) ; une petite pause (if express (progn (setq n (1+ n)) (acet-ui-progress-safe n) ) (progn (cond ((eq wait "|") (setq wait "/") ) ((eq wait "/") (setq wait "-") ) ((eq wait "-") (setq wait "\\") ) (T (setq wait "|") ) ) (princ (strcat (chr 8) wait))(princ) ) ) ) (and express (acet-ui-progress-done)) (princ) ) @+
  10. Tu n'as pas choisit le bon objet Modifie le 5.00 dans le champ, tu sélectionnes l'attribut contenant la valeur 6.00 avec comme choix, la valeur N.R Le numéro de l'objectID passe de 1839248656 à 1840428960 (sur mon pc) @+
  11. Salut Je pense comme (gile) Apprends à mieux utiliser le vlisp avant de t'attaquer à ce type de prog. Il y a plusieurs concepts à maîtriser, comme la gestion des documents dans autocad par exemple. @+
  12. Salut J'ai indiqué la marche à suivre dans la réponse n°14. Pour joindre un fichier, tu peux utiliser ce service @+
  13. Salut Ou encore (vl-sort (append '(1 3 5 7 9) '(2 4 6 8 10)) '<[b])[/b] mais j'ai l'impression de tricher un peu ;) Sinon, il y a aussi cette solution (apply 'append (mapcar 'list '(1 3 5 7 9) '(2 4 6 8 10))) @+ [Edité le 27/4/2011 par Patrick_35]
  14. Patrick_35

    .exe

    Salut J'utilise NSIS qui m'installe au bureau les lisp et qui configure tout seul autocad (via une modif dans le acadxxxxdoc par l'éxecutable). L'énorme avantage, c'est que je n'ai plus que la liste des lisps à gérer :D Tout est automatique, même pour le chargement des lisps via l'autoload @+
  15. Patrick_35

    Arguments et Variables

    Salut Je pense qu'il est important de bien comprendre ce qu'est un effet de bord @+
  16. Salut Tu modifies les attributs dans le bloc avec l'éditeur de bloc, puis une synchronisation avec battman ou _attsync. @+
  17. Patrick_35

    Champ échelle

    Salut Ben non ou je ne connais pas la commande autocad qui le permet. Le problème est de convertir le n° de maintien en n° d'objet dans un même dessin, car un n° de maintien dans un dessin ne donnera pas forcement le même n° d'objet dans un autre dessin. Te connaissant, j'y avais bien pensé au LTsiens ;) @+
  18. Salut La même chose que Didier, mais en vlisp. (vlax-dump-object (vla-item (vla-get-blocks (vla-get-activedocument (vlax-get-acad-object))) "drawing1") T) @+
  19. Patrick_35

    Champ échelle

    Salut Non, c'est de lisp. @+
  20. Salut Tu as aussi GEF @+
  21. Salut Le fichier adapté à tes besoins. @+
  22. Patrick_35

    Champ échelle

    Salut Quand tu utiles la commande liste sur un objet, tu as un numéro de maintien en hexa (par exemple 1e2bd) Si tu utilises la fonction lisp handent sur ce numéro, tu obtiens l'identification en hexa de ton objet (par exemple ) Ce chiffre convertit en décimal te donne le numéro recherché (2128974952). Tu as plus simple en utilisant directement l'objectID (vla-get-objectid (vlax-ename->vla-object (car (entsel)))) @+
  23. Salut Le plus simple est de faire un tri pour comprendre (setq lst '("5" "1" "BRE" "az" "2" "bre" "Az")) (acad_strlsort lst) --> ("1" "2" "5" "az" "Az" "bre" "BRE") (vl-sort lst '<) --> ("1" "2" "5" "Az" "BRE" "az" "bre") @+
  24. Salut J'ai fait un exemple dans ton fichier dans un nuage reprenant mes explications. Le souci, c'est qu'avec des textes, ce n'est pas aussi souple qu'avec des attributs, car quand on fait des copies, l'objet pointé pour additionner la hauteur est toujours le même, et donc il faut refaire la formule, ce qui n'est pas le cas pour des blocs avec attributs. @+
  25. Je l'ai mis à disposition @+
×
×
  • 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é