Aller au contenu

Lisp pour décolorer un plan


autospeed

Messages recommandés

Sur le même principe que l'excellent lisp DUC de patrick35 ( traitement par lot ) , qui renomme en "du calque" tout ce qui concerne les entités , serait -il possible d'avoir en complément un lisp qui met toutes les couleurs des calques en couleur 8. ou autre ..

on choisirait la couleur , puis le repertoire et hop , si ce lisp passe derriere DUC , on obtiendrait une décoloration parfaite de tous les plans.

 

 

Auteur du logiciel Autospeed

Auteur de la théorie du site www.kheops.biz

Auteur de nombreux livres

Lien vers le commentaire
Partager sur d’autres sites

Bien mais en ce qui concerne la décoloration après un lisp comme DUC qui remet tout en couleur du calque , un petit lisp qui change la couleur des calques devrait suffir. D'après ce que j'ai lu sur la présentation de vos outils de traitement de plan , il doit manquer des trucs ..

Suppression des onglets de présentation ?

Suppression des xrefs inutiles et lier inserer les xrefs utiles

Déplacement des entités se trouvant dans le calque 0 dans un calque _REST_0

SCU général Repere général

Effaccement des solides .. y compris ceux a l'intérieur de blocs

etc ...

 

Auteur du logiciel Autospeed

Auteur de la théorie du site www.kheops.biz

Auteur de nombreux livres

Lien vers le commentaire
Partager sur d’autres sites

Salut,

 

En fait, tout ce que tu mentionnes est inclus dans le nettoyeur de plan.

Simplement, sur notre site, nous n'avons pas voulu mettre trop de détails.

 

Tu peux consulter notre site dédié aux vidéos dans la rubrique CADnorm TOOLS pour avoir un aperçu des fonctions.

 

http://exo.git-cad.ch

 

Code d'accès = 87-w36ta4

 

@plus

Jean-Philippe - Formateur / Dessinateur sur AutoCAD et MEP

http://www.git-cad.ch

Lien vers le commentaire
Partager sur d’autres sites

j'ai vu mais est ce que tu peux faire le parametrage d'un plan type et ensuite lancer le traitement par lot dans un répertoire.

Rien qu'hier j'ai du traiter 51 plans d'affilés alors je n'ai pas le temps d'ouvrir chaque plan pour faire mumuse ..

 

[Edité le 30/8/2011 par autospeed]

Auteur du logiciel Autospeed

Auteur de la théorie du site www.kheops.biz

Auteur de nombreux livres

Lien vers le commentaire
Partager sur d’autres sites

Pour l'instant dans la version actuelle 4.3 ce n'est pas possible, il faut traiter les DWG séparémment.

Cependant la plupart de nos clients nous ont formulé la même demande.

 

Nous avons donc prévu d'intégrer cette possibilité dans la prochaine version 5.0

Il y aura également un nettoyeur express.

 

@plus

 

 

Jean-Philippe - Formateur / Dessinateur sur AutoCAD et MEP

http://www.git-cad.ch

Lien vers le commentaire
Partager sur d’autres sites

Pour le traitement des Xref ..

j'ai un lisp qui efface toutes les présentations mais il ne marche plus sur la 2012 et je ne sais pas pourquoi .. voir le sujet Lisp qui ne marche pas avec la 2012

J'ai un lisp DUC , je ne remercierais jamais assez Patrick35 pour cette merveille qui permet de passer tous les plans d'un même répertoire en couleur du calque

Il me manque la même chose pour passer la couleur des calques en couleur 8 ou autre.

J'ai JAV .. encore merci a Patrick

J'ai goto qui transfère les entités du calque 0 dans un calque rest 0

j'ai delsol et dsh pour virer les hachures solides et stripmtext pour les textes récalcitrant ..

Bref je suis a deux doigts du bonheur :-) déja si le lisp qui détache les présentations pouvait marcher sur la 2012 ça serait top

Auteur du logiciel Autospeed

Auteur de la théorie du site www.kheops.biz

Auteur de nombreux livres

Lien vers le commentaire
Partager sur d’autres sites

Pour la suppression de toutes tes présentation pourquoi n'utilises-tu pas plutôt un script qui lui peut être exécuté avec SuperAutoscript ce qui te permets d'effectuer cette opération pour toutes une sérier de dessin que tu choisiras.

 

Un exemple de script que tu peut modifier selon le nom de tes présentations

 

****************************

_layout

EF

1-100

_layout

EF

1-200

_layout

EF

50-a1

_layout

EF

50-a2

_layout

EF

50-a3

_layout

EF

50-B1

_layout

EF

50-b2

_layout

EF

50-c1

_layout

EF

50-c2

_layout

EF

50-c3

_layout

EF

A3

_layout

EF

A3-H

_layout

EF

A3-V

purger

tout

n

***********************************

Lien vers le commentaire
Partager sur d’autres sites

parce que dans les plans que je reçois de l'extérieur , chaque plan a un nombre d'onglets différent avec des noms différents de présentations :-)

 

J'ai bien ce lisp la qui fonctionne super

 ; Effacer les présentations
(vlax-for lay (vla-get-layouts (vla-get-activedocument (vlax-get-acad-object)))
 (or (eq (vla-get-name lay) "Model")
   (vla-delete lay)
 )
)

 

mais je ne sais pas comment faire pour le mettre dans une routine qui traite un répertoire dans son ensemble.

 

[Edité le 30/8/2011 par autospeed]

Auteur du logiciel Autospeed

Auteur de la théorie du site www.kheops.biz

Auteur de nombreux livres

Lien vers le commentaire
Partager sur d’autres sites

Un début

 

 

 (vl-load-com)
(defun c:8 (/ cdoc lst)
(setq cdoc (vla-get-activedocument (vlax-get-acad-object)))
(vla-startundomark cdoc)
(vlax-for l (vla-get-layers cdoc)
(setq lst (cons (cons l (vla-get-lock l)) lst))
(vla-put-lock l :vlax-false)
(vla-put-color l 8)
)
(vlax-for i (vla-get-blocks cdoc)
(vlax-for e i (vla-put-color e 256))
)
(foreach n lst
(vla-put-lock (car n) (cdr n)))
(vla-endundomark cdoc)
) 

"Je suis fasciné par l'air. Si on enlevait l'air du ciel, tous les oiseaux tomberaient par terre... Et les avions aussi... En même temps l'air tu peux pas le toucher... Ca existe et ça existe pas... Ca nourrit l'homme sans qu'il ait faim... It's magic ! L'air c'est beau en même temps tu peux pas le voir, c'est doux et tu peux pas le toucher... L'air, c'est un peu comme mon cerveau..."

J-C Van Damme

Lien vers le commentaire
Partager sur d’autres sites

Utilise SuperAutoscript

La tu charges ta commande en script puis tu sélectionnes tous les dessins concernés et tu lances l'application, celui-ci va ouvrir chaque fichier exécuter ton lisp le sauvegardé jusqu'à ce que tous les plans sélectionnés soient fait.

Lien vers le commentaire
Partager sur d’autres sites

Je testerais cela demain mais a première vue , cela ne fait pas le traitement par lot dans un répertoire.

 

Salut

Non effectivement, mais c'est un début (qui n'est pas de moi au passage)

"Je suis fasciné par l'air. Si on enlevait l'air du ciel, tous les oiseaux tomberaient par terre... Et les avions aussi... En même temps l'air tu peux pas le toucher... Ca existe et ça existe pas... Ca nourrit l'homme sans qu'il ait faim... It's magic ! L'air c'est beau en même temps tu peux pas le voir, c'est doux et tu peux pas le toucher... L'air, c'est un peu comme mon cerveau..."

J-C Van Damme

Lien vers le commentaire
Partager sur d’autres sites

non tu écrits simplement la commande que tu tappes au clavier quand tu veux lancer le lisp

 

Le script interprète simplement ce que tu écrits au clavier, et le programme SuperAutoscript permet d'exécuter le script sur tous les dessins que tu choisis.

Lien vers le commentaire
Partager sur d’autres sites

ici le lisp n'a pas de commande , ca marche par copié collé dans la ligne de commande , je vais essayé de le laissé tel quel pour voir si ca marche.

 

Je viens de tester ... ca ne marche pas :-) c'est con que le superautoscript ne puisse pas coller du code lisp

 

[Edité le 31/8/2011 par autospeed]

Auteur du logiciel Autospeed

Auteur de la théorie du site www.kheops.biz

Auteur de nombreux livres

Lien vers le commentaire
Partager sur d’autres sites

Le lisp pour la décoloration marche bien , j'ai mis c8 en appel de commande a la place de 8 et il s'exécute parfaitement avec super autoscript

Par contre pour le lisp pour effacer les présentations , sans une commande précise pour le lancer , il ne marche pas .. est ce que quelqu'un peut me rajouter une commande ?

Auteur du logiciel Autospeed

Auteur de la théorie du site www.kheops.biz

Auteur de nombreux livres

Lien vers le commentaire
Partager sur d’autres sites

Voilà j'ai testé un truc et ça fonctionne

 

J'ai trouvé ce lisp qui supprime les présentations que je sauvegarde dans le répertoire de mes lisp.

(il ne faut pas oublier de le faire charger avec le démarrage d'autocad)

 

le lisp est le suivant :

 

[surligneur]

;permet de se placer en espace objet et de supprimer toutes les autres présentations

 

(defun c:LK (/ cmd n layouts)

 

 

 

(graphscr)

 

(setq cmd (getvar "CMDECHO"))

 

(setvar "CMDECHO" 1)

 

 

 

(setvar "ctab" "Model")

 

(setq layouts (layoutlist))

 

(foreach p layouts

 

(command "_layout" "EF" p)

 

) ;_ Fin de foreach

 

(setvar "CMDECHO" cmd)

 

(prin1)

 

) ;_ Fin de defun

 

 

 

(prompt "\nLK : Supprimer les présentations")

[/surligneur]

 

Puis dans le SuperAutoscript je choisi les plans et dans la fenêtre script je tape uniquement lk

Lien vers le commentaire
Partager sur d’autres sites

C'est quand même bizarre le lisp comme language , j'ai trois programmes pour effacer les présentations et il n'y en a pas un qui ressemble a l'autre :-)

Je vais tester le tien - super merci .

@+

Phil

 

n'oublies pas d'éditer ton lisp et de rajouter la balise code sinon tu va te faire allumer par un modérateur :-)

 

[Edité le 31/8/2011 par autospeed]

Auteur du logiciel Autospeed

Auteur de la théorie du site www.kheops.biz

Auteur de nombreux livres

Lien vers le commentaire
Partager sur d’autres sites

Bonjour à toutes et à tous

 

http://www.cadxp.com/XForum+print-fid-145-tid-26797.html

 

 
;;de Gile - supprimer des mises en pages
;Tu enregistres le LISP suivant sous DeleteLayouts.lsp
;Dans SuperAutoScript tu ajoutes ces deux lignes : (load "DeleteLayouts") (DeleteLayouts)

(defun c:DeleteLayouts ()
 (vl-load-com)
 (vlax-for l (vla-get-Layouts
	(vla-get-ActiveDocument
	  (vlax-get-acad-object)
	)
      )
   (if	(/= (vla-get-Name l) "Model")
     (vla-delete l)
   )
 )
)

 

 

Le code pour mettre les calques à la couleur 8, fonctionne avec SuperAutoScript 1.50 beta 2 d'Eric...mais le code s'arrete chez moi "erreur qu'il ne trouve pas AutoCAD.chm"...

 

@+

 

Michel a

 

Lien vers le commentaire
Partager sur d’autres sites

Merci pour ce lisp deletelayouts , je viens de tester celui de fauxsuisse qui marche correctement mais j'ai du mal a m'expliquer autant de différence de conception dans les lisp pour un résultat final identique !

 

Je viens de tester le lisp deletelayouts , ça fonctionne aussi mais cela ne repasse pas en espace objet après.

 

[Edité le 31/8/2011 par autospeed]

Auteur du logiciel Autospeed

Auteur de la théorie du site www.kheops.biz

Auteur de nombreux livres

Lien vers le commentaire
Partager sur d’autres sites

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 compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • 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é