Aller au contenu

NETTOYEUR SCRIPT DE BIBLIO


Messages recommandés

  • Réponses 61
  • Créé
  • Dernière réponse

Meilleurs contributeurs dans ce sujet

Et lui oh comme y critique

 

C'était juste une ruse de sioux pour pouvoir utiliser la commande [surligneur] Changer[/surligneur] lorsqu'aucun objet n'était parallèle au SCU.

 

Mais visiblement ça a ses limites

 

 

Je critique pas, je me renseigne (moi, les subtilités du script, c'est pas trop mon truc...)

 

Sinon, la commande _chprop fonctionne si aucun des objets n'est parallèle au SCU courant :

 

_chprop _all  _la 0  

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

Lien vers le commentaire
Partager sur d’autres sites

Le LISP écrit un peu plus proprement :

- variables déclarées ;

- suppression des expressions inutiles ;

- utilisation des fonctions vl-filename-directory et vl-filename-base plus élégantes et fiables que la suppression d'un nombre défini de caractères.

 

Pas testé, mais ça devrait fonctionner...

 

(defun c:sldscr	(/ fichierxtxt fic1 fichierscr fic2 nom_bloc)
 ;; Cette fonction lit dans le répertoire courant
 ;; le fichier listedwg.txt (ou autre)
 ;; et crée un script de création de slide

 ;; ouverture des fichiers
 (if (setq fichierxtxt(getfiled "Select a Listedwg text File" "" "txt" 0))
   (progn
     (setq fic1       (open fichierxtxt "r")
    fichierscr (strcat (vl-filename-directory fichierxtxt) "\\forsld.scr")
    fic2       (open fichierscr "w")
     )

     (while (setq ch1 (read-line fic1))
(setq nom_bloc (vl-filename-base ch1))
;; ecriture dans le fichier
(write-line (strcat "_OPEN " nom_bloc) fic2)
(write-line "_zoom  et" fic2)
(write-line (strcat "_mslide " nom_bloc) fic2)
(write-line "_close o" fic2)
     ) ;_ while
     (close fic1)
     (close fic2)
     (alert "le fichier forsld.scr est créé !")
   ) ;_ progn
 ) ;_ if
 (princ)
) ;_ defun

(prompt "\nExecution, taper  : SLDSCR puis RETURN   \n")
(prin1)

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

Lien vers le commentaire
Partager sur d’autres sites

Re,

 

Merci Gilles !

 

J'ai ceci en ligne de commande (toujours pour la même liste que l'exemple donné précédemment,...

 

Commande: sldscr

*Annuler*

Commande:

erreur: type d'argument incorrect: stringp nil

Commande:

 

J'ai retrouvé un exemple de traitement, le format donné ça =>

 

_OPEN CE30A13a
_zoom et
_mslide CE30A13a
_close o
_OPEN CE30A13b
_zoom et
_mslide CE30A13b
_close o
_OPEN CE30A14
_zoom et
_mslide CE30A14
_close o
_OPEN CE30A15a1 

Civil 3D 2024 - COVADIS_18.2

https://www.linkedin...3%ABt-95313341/

Lien vers le commentaire
Partager sur d’autres sites

Re,

 

As-tu la boite de dialogue pour choisir le fichier ?

 

Oui !

 

As tu essayé la méthode décrite ici (réponse 4) et page 13 de ton manuel pour localiser l'erreur ?

 

Je vais m'y pencher dés demain matin et te tiens au courant,...

 

Je pense que tu connais déjà la réponse,... ;)

 

Merci encore de votre aide,...

Civil 3D 2024 - COVADIS_18.2

https://www.linkedin...3%ABt-95313341/

Lien vers le commentaire
Partager sur d’autres sites

Re,

 

Le script est bien généré,

 

_OPEN PS001
_zoom  et
_mslide PS001
_close o
_OPEN PS002
_zoom  et
_mslide PS002
_close o
_OPEN PS003
_zoom  et
_mslide PS003
_close o 

 

Mais lorsque je le lance, il s'arrête au premier fichier =>

 

Commande: _zoom

Spécifiez le coin d'une fenêtre, entrez un facteur d'échelle (nX ou nXP) ou

[Tout/Centre/DYnamique/ETendu/Précédent/Echelle/Fenêtre/Objet] :

Appuyez sur Entrée ou Echap pour sortir ou cliquez avec le bouton droit de la

souris pour afficher le menu contextuel.

 

J'ai alors le symbole de la loupe avec le +/- (zoom Temps réél) !!!

 

 

Il semble qu'il y ai un espace de trop entre "_zoom" et "et", non ?

 

Civil 3D 2024 - COVADIS_18.2

https://www.linkedin...3%ABt-95313341/

Lien vers le commentaire
Partager sur d’autres sites

(setq fic1 (open fichierxtxt "r")

fichierscr (strcat (vl-filename-directory [surligneur]nom_chemin[/surligneur]) "\\forsld.scr")

fic2 (open fichierscr "w")

)

 

au lieu de :

(setq fic1 (open fichierxtxt "r")

fichierscr (strcat (vl-filename-directory [surligneur]fichierxtxt[/surligneur]) "\\forsld.scr")

fic2 (open fichierscr "w")

)

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

Lien vers le commentaire
Partager sur d’autres sites

Re,

 

Vu !

 

Merci pour ces explications,...

 

Il semble qu'il y ai un espace de trop entre "_zoom" et "et", non ?

 

C'était bien ça !

 

Dans le code ci-dessus :

 

(write-line "_zoom et" fic2) 

 

a la place de :

 

(write-line "_zoom  et" fic2) 

 

Merci encore Gilles,

Civil 3D 2024 - COVADIS_18.2

https://www.linkedin...3%ABt-95313341/

Lien vers le commentaire
Partager sur d’autres sites

Ce que fait ce LISP est typiquement ce qu'on peut très facilement faire avec Excel sans avoir besoin de créer un fichier txt ni de déboguer un LISP.

 

http://img29.imageshack.us/img29/4930/scriptp.png

Image

 

Super, je n'arrive plus à afficher une image ... :cool: :mad:

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

Lien vers le commentaire
Partager sur d’autres sites

Bonjour à toutes et tous,

 

Merci Gilles pour cette seconde solution qui me semble plus abordable qu'un lisp, en effet !

 

J'ai tester sur trois fichiers, c'est Nickel !!

 

Plus qu'à essayer de faire mes mosaïques avec cet utilitaire,...

 

Merci encore à tous,

 

 

:D

Civil 3D 2024 - COVADIS_18.2

https://www.linkedin...3%ABt-95313341/

Lien vers le commentaire
Partager sur d’autres sites

Sinon, la commande _chprop fonctionne si aucun des objets n'est parallèle au SCU courant :

 

Oui mais c'était trop simple alors je voulais compliquer un peu :red:

 

C'est la fatigue du week end certainement

Lien vers le commentaire
Partager sur d’autres sites

Bonsoir à toutes à tous,

 

J'ai une série de dessin ou je dois modifier l'échelle de 0.1, j'ai alors testé =>

 

_chprop
_all

_scale
0.1
_la
0 

 

Et la ligne de commande =>

 

Commande: _chprop

Choix des objets: _all

11 trouvé(s)

2 n'étaient pas dans l'espace courant.

Choix des objets:

Entrez la propriété à modifier

[COuleur/CAlque/Tligne/EChltl/EPaisseurl/Hauteur/Matériau/Annotatif]: _scale

Spécifiez une nouvelle échelle du type de ligne : 0.1

Entrez la propriété à modifier

[COuleur/CAlque/Tligne/EChltl/EPaisseurl/Hauteur/Matériau/Annotatif]: _la

Entrez un nouveau nom du calque : 0

 

Mais ce n'est pas l'échelle du type de ligne que je veux changer moi, mais l'échelle globale du dessin !

 

Une idée ?

 

Merci d'avance,

Civil 3D 2024 - COVADIS_18.2

https://www.linkedin...3%ABt-95313341/

Lien vers le commentaire
Partager sur d’autres sites

Oui parce qu'il faut finir la commande _chprop d'abord et ensuite changer l'échelle.

 

Ca donnerais plutôt :

 

 _select
_all

_chprop
_p

_la
0

_scale
_p

0,0
0.1
_zoom
_e

 

Là j'ai mis le changement d'échelle depuis le point 0,0 mais il peut être changé et j'ai aussi rajouté un zoom étendu à la fin parce qu'avec le changement d'échelle tu risques de ne plus voir ton dessin.

 

Lien vers le commentaire
Partager sur d’autres sites

Re,

 

Salut Gilles,

 

Ben justement ou je bloque, c'est pour le point de base après la sélection de l'ensemble,...

 

Commande:

Commande: _scale

Choix des objets: _all

13 trouvé(s)

Choix des objets:

Spécifiez le point de base:

Point incorrect.

Spécifiez le point de base:

Point incorrect.

Spécifiez le point de base:

Point incorrect.

Civil 3D 2024 - COVADIS_18.2

https://www.linkedin...3%ABt-95313341/

Lien vers le commentaire
Partager sur d’autres sites

Il faut tout entrer en ligne de commande, y compris la spécification du point : 0,0 ou 0,0,0 ou n'importe quel autre point entré sous la forme x,y ou x,y,z

 

Eric, je pense qu'il faut arrêter de donner des poissons tout prêts à lili2006, sinon il n'apprendra jamais à pêcher...

 

 

 

 

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

Lien vers le commentaire
Partager sur d’autres sites

Re,

 

Salut Eric,

 

Oui parce qu'il faut finir la commande _chprop d'abord et ensuite changer l'échelle.

 

Ok !

 

Mais ça donne ça =>

 

Commande: _select

Choix des objets: _all

13 trouvé(s)

Choix des objets:

Commande: _chprop

Choix des objets: _p

13 trouvé(s)

Choix des objets:

Entrez la propriété à modifier

[COuleur/CAlque/Tligne/EChltl/EPaisseurl/Hauteur/Matériau/styleTR/Annotatif]:

_la

Entrez un nouveau nom du calque : 0

Entrez la propriété à modifier

[COuleur/CAlque/Tligne/EChltl/EPaisseurl/Hauteur/Matériau/styleTR/Annotatif]:

Commande:

CHPROP

Choix des objets: _scale

*Sélection non valable*

Attend un point ou

Fenêtre/Dernier/Capture/BOîte/TOUT/Trajet/SPolygone/CPolygone/Groupe/Ajouter/Sup

primer/Multiple/Précédent/annUler/AUto/uniQue

 

Eric, je pense qu'il faut arrêter de donner des poissons tout prêts à lili2006, sinon il n'apprendra jamais à pêcher.

 

Ce n'est pas faux ! ;)

 

Mais j'avance tout de même grâce à vos interventions,:P

 

Mais je poste après avoir tourné en rond,...

 

Par exemple ça =>

 

y compris la spécification du point : 0,0 ou 0,0,0

 

je ne connaissais pas,ou plutôt, ça ne m'étais pas venu à l'idée, tellement habitué à une utilisation "normale" à la soursi,... :o

 

Mais je vais m'y atteler,...

 

Merci encore à vous deux,...

Civil 3D 2024 - COVADIS_18.2

https://www.linkedin...3%ABt-95313341/

Lien vers le commentaire
Partager sur d’autres sites

citation extraite du message original:

Commande: _select

Choix des objets: _all

13 trouvé(s)

Choix des objets:

Commande: _chprop

Choix des objets: _p

13 trouvé(s)

Choix des objets:

Entrez la propriété à modifier

[COuleur/CAlque/Tligne/EChltl/EPaisseurl/Hauteur/Matériau/styleTR/Annotatif]:

_la

Entrez un nouveau nom du calque : 0

Entrez la propriété à modifier

[COuleur/CAlque/Tligne/EChltl/EPaisseurl/Hauteur/Matériau/styleTR/Annotatif]:

Commande:

[surligneur]CHPROP[/surligneur]

Choix des objets: _scale

*Sélection non valable*

Attend un point ou

Fenêtre/Dernier/Capture/BOîte/TOUT/Trajet/SPolygone/CPolygone/Groupe/Ajouter/Sup

primer/Multiple/Précédent/annUler/AUto/uniQue

 

La commande [surligneur]CHPROP[/surligneur] est relancée, comme quand on fait Enter après la fin d'une commande, il y a donc une espace ou un retour chariot en trop dans le script après : _la 0

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

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é