Aller au contenu

Despe

Membres
  • Compteur de contenus

    6
  • Inscription

  • Dernière visite

Visiteurs récents du profil

Le bloc de visiteurs récents est désactivé et il n’est pas visible pour les autres utilisateurs.

Despe's Achievements

Rookie

Rookie (2/14)

  • One Month Later Rare
  • First Post Rare
  • Week One Done Rare
  • Conversation Starter Rare

Recent Badges

0

Réputation sur la communauté

  1. Très bien merci beaucoup je vais essayer de faire ça 😉
  2. Merci beaucoup pour ton retour ! En faite pour mon deuxième programme, j'aimerais avec effacer la totalité de mes calques avec -supcalque (car ils ont encore des objets) sauf par exemple les calques "DIVISON" et "FONCIER_SOMMET" Ne pas reprendre en compte ma partie en rouge c'était un test. Le problème que je rencontre c'est que je ne sais pas comment je peux annoncer dans ma commande la suppression de tout les calques via -supcalque sauf "DIVISION" et "FONCIER_SOMMET" Tu aurais une idée de comment je pourrais procéder ?
  3. Le premier va juste me chercher me le nom du fichier et ajouter _Archive.dwg Alors que l'autre va chercher le chemin et le nom du fichier pour y ajouter "Z:\\Documents\\test\\Dessin\\test_Archive.dwg" C'est bien ca ?
  4. Merci beaucoup pour ta réponse, je passe un peux par pas mal d'idée pour arriver a mes fins 😅 En faite se que je souhaite c'est que depuis un fichier de dessin fini, je lance ma commande et un nouveau fichier se crée avec seulement quelques calques déjà prédéfinis Aujourd'hui je suis parti sur cette idée (defun c:sarchive () ; Sauvegarder le dessin actuel (command "SAUVERAP") ; Activer l'affichage de la boîte de dialogue d'enregistrement (setq filedia 1) ; Enregistrer le fichier sous un nouveau nom avec "_Livraison" ajouté (setq filename (strcat (getvar "dwgprefix") (getvar "dwgname"))) (setq new-filename (strcat (substr filename 1 (- (strlen filename) 4)) "_Livraison.dwg")) (command "_saveas" "LT2018" new-filename) (princ (strcat "\nSaved the changes to the file '" new-filename "' in AutoCAD 2018 format.")) ; Supprimer les objets sur les calques spécifiés (setq layer-names '("DIVISION" "FONCIER_SOMMET")) (foreach layer layer-names (setq entlist (vl-remove-if-not '(lambda (x) (eq (vla-get-Layer x) layer)) (vlax-ename->vla-object (entget (entlast))))) (if entlist (progn (setq len (length entlist)) (repeat len (vla-Delete (nth (setq len (1- len)) entlist)) ) (princ (strcat "\nDeleted " (itoa len) " objects on layer " layer ".")) ) (princ (strcat "\nNo objects found on layer " layer ".")) ) ) ; Activer l'affichage de la boîte de dialogue d'enregistrement (setq filedia 1) ; Sauvegarder le dessin actuel (command "SAUVERAP") ) Donc ce lisp fonctionne mais j'aimerai plutôt essayer d'utiliser la commande "-supcalque" pour supprimer tout les calques du dessin sauf les calques en bleu (car c'était pour tester) et remplacer ca à la place de ma partie en rouge. Ou alors garder ma partie en rouge et a la place de désigner les objets des calques a supprimer, même principe que SUPCALQUE sélectionner tour les calques sauf la partie en bleue et ensuite purger. Je sais pas si c'est très claire 😅 Et désolé si l'écriture est pas très belle !!
  5. Bonjour tout le monde, je souhaite crée un lisp pour enregistrer automatiquement des calques prédéfinis dans le dossier de dessin et qu'il ajoute un suffix a la fin du fichier. (defun c:save-selected-layers () (vl-load-com) (setq layers '("Calque1" "Calque2")) (setq filename (strcat (vl-filename-base (getvar 'dwgname)) "_Archive.dwg")) (if (not (null filename)) (progn (vla-clear (vla-get-activedocument (vlax-get-acad-object))) (vlax-for obj (vla-get-layers (vla-get-activedocument (vlax-get-acad-object)))) (setq layername (vla-get-name obj)) (if (member layername layers) (vla-put-layeron obj 1) (vla-put-layeron obj 0) ) ) (command "_.-PLOT" "_Yes" "_Model" "_No" "_Window" "_No" "_Fit" "_Yes" "_No" "_No" "_Yes" "_Yes" "_No") (command "_.SAVEAS" filename "") (alert (strcat "Layers saved to " filename) 64) ) (alert "No filename specified, layers not saved." 16) ) (princ) J'ai déjà fait ça mais il ne veux pas m'enregistrer le fichier Merci d'avance pour votre aide 😉
  6. Bonjour tout le monde, je souhaite crée un lisp pour enregistrer automatiquement des calques prédéfinis dans le dossier de dessin et qu'il ajoute un suffix a la fin du fichier. (defun c:save-selected-layers () (vl-load-com) (setq layers '("Calque1" "Calque2")) (setq filename (strcat (vl-filename-base (getvar 'dwgname)) "_Archive.dwg")) (if (not (null filename)) (progn (vla-clear (vla-get-activedocument (vlax-get-acad-object))) (vlax-for obj (vla-get-layers (vla-get-activedocument (vlax-get-acad-object)))) (setq layername (vla-get-name obj)) (if (member layername layers) (vla-put-layeron obj 1) (vla-put-layeron obj 0) ) ) (command "_.-PLOT" "_Yes" "_Model" "_No" "_Window" "_No" "_Fit" "_Yes" "_No" "_No" "_Yes" "_Yes" "_No") (command "_.SAVEAS" filename "") (alert (strcat "Layers saved to " filename) 64) ) (alert "No filename specified, layers not saved." 16) ) (princ) J'ai déjà fait ça mais il ne veux pas m'enregistrer le fichier Merci d'avance pour votre aide 😉
×
×
  • 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é