Ashram_666 Posté(e) le 2 avril 2007 Posté(e) le 2 avril 2007 Bonjour,J'ai un petit soucis avec la liste d'echelle, lorsque je la redéfinis et que je me fait un fichier de gabarit, ça marche! Je la conserve mais seulement quand je fait un nouveau dessin, mais lorsque j'ouvre un dessin ma liste d'echelle d'echelle que j'ai modifié n'est pas conservé, il me remet sa l'ancienne liste celle par défaut.Ma question est la suivante y a t'il un moyen pour modifié la liste d'echelle par default(par un lisp, ou une variable)?Merci d'avance.
coxsurf56 Posté(e) le 6 avril 2007 Posté(e) le 6 avril 2007 saluttu fais outil optionpreference utilisateurmodifier la liste d'echelleet la tu modifier ou ajouter des echelles
Ashram_666 Posté(e) le 6 avril 2007 Auteur Posté(e) le 6 avril 2007 Salut,oui ça d'accord pour un fichier, mais moi je cherche plutôt une routine qui me permet de modifier cette liste prédéfin en celle que je veux automatiquement à chaque ouverture d'un dessin.j'ai déja trouvé comment les remplacer une par une au démarrage mais ça prend un certain temps sur tout si le fichier est imposant. Donc si quelqu'un à un petit lisp à proposer ou une variable d'environnement à modifier ce serait impécable.et merci d'avoir répondu.
Bred Posté(e) le 6 avril 2007 Posté(e) le 6 avril 2007 Salut,j'ai jeté un petit coup d'oeuil, et il s'avert que la liste des echelles est dans la base de registre(pour 2008 je ne sais pas le chemin, pour 2007 : "HKEY_CURRENT_USER\\Software\\Autodesk\\AutoCAD\\R17.0\\ACAD-5001:40C\\Scale List") Donc je trouve ça bizarre que ça se réinitialise à chaque dessin .... Essaye de modifier directement la liste dans le base de registre (c'est possible en lisp avec les fonctions vl-registry...) Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
Ashram_666 Posté(e) le 6 avril 2007 Auteur Posté(e) le 6 avril 2007 Salut bred, merci pour ta réponse,je suis assez d'accord avec sous la version 2007, on pouvait redéfinir une fois pour toute la liste d'échelle et elle ne bougé pas lors d'ouverture de fichier, mais avec la 2008 ils ont mit en place un système d'annotation ou les texte et autres peuvent être mit à l'échelle indépendamment de l'échelle du tracé (ex: tracé au 1/200 texte au 1/500).Je peux bien sur redéfinir cette liste dans un dessin et dans le fichier gabarit d'ailleurs il me les conservent lors de sa réouverture mais lorsque j'ouvre un autre dessin il me remet une liste par défaut.C'est une bonne idée d'allé voir dans le registre mais hélas je n'ai pas trouvé cela ne veut pas dire que la liste ne s'y trouve pas.Je continu à chercher...
Bred Posté(e) le 6 avril 2007 Posté(e) le 6 avril 2007 Ah, désolé, je n'ai pas encore la 2008 (...dans quelque jour...). Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
sbosarl Posté(e) le 7 avril 2007 Posté(e) le 7 avril 2007 bonjour ,vous trouver pas dans la base "registre " cette liste elle est conserver dans chaque dessin :casstet: mais la ou c'est penible : si on modifis la liste du dessin puis on insere un bloc cree sur version 2000 == on obtient liste modifier + liste de base :casstet: et si on continu on insere un autre bloc avec liste modifier(2) on obtient liste modifier +liste modifier(2)+ liste de base :( navrant sa ressemble aux listes de filtres qui s'accumulai
coxsurf56 Posté(e) le 10 avril 2007 Posté(e) le 10 avril 2007 effectivementils ont changes ca aussigalerequel est l'interet de laisser la creation de cette liste dans outils option si elle n'est pas memorise pour tous les planssurtout que c'est chiant a rentrer
coxsurf56 Posté(e) le 10 avril 2007 Posté(e) le 10 avril 2007 trouve une petite solutionse creer une commande en lisp qui les cree toutes d'un coupavec la commande -MODIFLISTECHELLE;a;1/50;0.2:1;;1/100;0.1:1;;1/20;0.5:1;;1/10;1:1;q
coxsurf56 Posté(e) le 10 avril 2007 Posté(e) le 10 avril 2007 ma commande lisp pour les creer à la creation de chaque nouveaux plans (command "-MODIFLISTECHELLE" "s" "1:2" "s" "1:4" "s" "1:5" "s" "1:8" "s" "1:10" "s" "1:16" "s" "1:20" "s" "1:30" "s" "1:40" "s" "1:50" "s" "1:100" "s" "2:1" "s" "4:1" "s" "8:1" "s" "10:1" "s" "100:1" "a" "/10cm=1" "1:1" "a" "1/20cm=0.5" "0.5:1" "a" "1/50cm=0.2" "0.2:1" "a" "1/100cm=0.1" "0.1:1" "a" "1/200cm=0.05" "0.05:1" "a" "1/500cm=0.02" "0.02:1" "a" "ANNOTATION" "0.15:1" "a" "1/10m=100" "100:1" "a" "1/20m=50" "50:1" "a" "1/50m=20" "20:1" "a" "1/100m=10" "10:1" "a" "1/200m=5" "5:1" "a" "1/500m=2" "2:1" "q") par contre moi j'aimerais supprimer ceux qui existent deja et qui me servent a rienmais j'arrive a supprimer une partie mais pas ceux avec les " ex (1/16" = 1'-0")qui generent des erreurs dans le lisp lorsque l'on veut les supprimer
jf Posté(e) le 11 avril 2007 Posté(e) le 11 avril 2007 Bonjour C est a cause des guillemets qui sont considerés comme une fonction, faudrait demander a un ferru en Lisp sur ce site , svp .........c est vrai que c est barbant ces echelles anglo saxonnes
Ashram_666 Posté(e) le 11 avril 2007 Auteur Posté(e) le 11 avril 2007 Bonjour,Je suis content de n'être pas le seul à trouver que cette nouvelle version d'échelle n'est pas ce qu'ils ont fait de mieux!!Enfin j'attendrais la version 2009, plus qu'un an :)Moi pour enlever les échelles existantes j'utilise ce lisp: (apply ' command (append (list "-scalelistedit") (list "r" "o" ;réinitialise la liste par defaut "s" "1:1" ;supprime l'échelle "1:1" "s" "1:2" "s" "1:4" "s" "1:5" "s" "1:8" "s" "1:10" "s" "1:16" "s" "1:20" "s" "1:30" "s" "1:40" "s" "1:50" "s" "1:100" "s" "2:1" "s" "4:1" "s" "8:1" "s" "10:1" "s" "100:1" "s" "1/128\U+0022 = 1'-0\U+0022" "s" "1/64\U+0022 = 1'-0\U+0022" "s" "1/32\U+0022 = 1'-0\U+0022" "s" "1/16\U+0022 = 1'-0\U+0022" "s" "3/32\U+0022 = 1'-0\U+0022" "s" "1/8\U+0022 = 1'-0\U+0022" "s" "3/16\U+0022 = 1'-0\U+0022" "s" "1/4\U+0022 = 1'-0\U+0022" "s" "3/8\U+0022 = 1'-0\U+0022" "s" "1/2\U+0022 = 1'-0\U+0022" "s" "3/4\U+0022 = 1'-0\U+0022" "s" "1\U+0022 = 1'-0\U+0022" "s" "1-1/2\U+0022 = 1'-0\U+0022" "s" "3\U+0022 = 1'-0\U+0022" "s" "6\U+0022 = 1'-0\U+0022" "s" "1'-0\U+0022 = 1'-0\U+0022" "Q" ) )) (prin1) Pour utilise les guillemets "\U+0022" dans un lisp ^^.Mais il est long en execution :( sur des fichiers de taille importante.C'est un code très simple donc si quelqu'un à mieux et surtout plus rapide à executer je suis preneur :)
Bred Posté(e) le 11 avril 2007 Posté(e) le 11 avril 2007 Salut,j'ai un peu regardé (pas approfondis)pour enlever la liste des echelles existantes : (vla-delete (vlax-ename->vla-object (cdr (assoc -1 (dictsearch (namedobjdict) "ACAD_SCALELIST"))))) (dictsearch (namedobjdict) "ACAD_SCALELIST") te ressort l'entité "ACAD_SCALELIST" Les echelles sonts les dxf 350, on doit pouvoir en rajouter/suprimer à la demande. Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
Bred Posté(e) le 11 avril 2007 Posté(e) le 11 avril 2007 En faisant une recherche sur le net j'ai trouvé ceci. Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
coxsurf56 Posté(e) le 11 avril 2007 Posté(e) le 11 avril 2007 (vla-delete (vlax-ename->vla-object (cdr (assoc -1 (dictsearch (namedobjdict) "ACAD_SCALELIST"))))) super ca supprime tous :D par contre plus moyen de rajouter de nouvelles echelles apres ca :casstet:
lili2006 Posté(e) le 11 avril 2007 Posté(e) le 11 avril 2007 Bonsoir coxsurf56 J'ai testé, ça marche bien aussi chez moi. Dans le menu format, liste d'echelle, tu peux configurer tes propres échelles. Par contre, même dans mon gabarit, dés que j'insère un éléments créé avec une ancienne version (exemple: un bloc), il me remet cette fichue liste d'échelle. Heuresement, je conserve quand même les miennes, mais ça m'énerve un peu quand même. Quelqu'un à t-il une idée ? :casstet: :casstet: Civil 3D 2025 - COVADIS_18.3c https://www.linkedin...3%ABt-95313341/
lili2006 Posté(e) le 11 avril 2007 Posté(e) le 11 avril 2007 Re, Bred, N'étant pas "fortich" en Anglais, peux-tu me préciser ce que fais exactement ce lisp ?? Merci d'avance. :P Civil 3D 2025 - COVADIS_18.3c https://www.linkedin...3%ABt-95313341/
Bred Posté(e) le 11 avril 2007 Posté(e) le 11 avril 2007 Salut,je suis nul en anglais aussi, mais je pense comprendre le lisp qui récupère la liste d'échelle de 2007 (celle dans la base de registre), et qui la met dans la 2008...Donc, en modifiant un peu ce lisp, on doit pouvoir créer sa propre liste... Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
lili2006 Posté(e) le 11 avril 2007 Posté(e) le 11 avril 2007 Merci, je vais tout de même testé.@+ :P Civil 3D 2025 - COVADIS_18.3c https://www.linkedin...3%ABt-95313341/
Ashram_666 Posté(e) le 11 avril 2007 Auteur Posté(e) le 11 avril 2007 Re, tout le mondeil est très sympa ton lisp bred un peu violent :o je trouve, mais un très bon départ.je viens de confectionner un petit lisp en modifiant un tout petit peu le tiens ça donne: (defun Modif () (while (assoc 350 (dictsearch (namedobjdict) "ACAD_SCALELIST")) (progn (vla-delete (vlax-ename->vla-object (cdr (assoc 350 (dictsearch (namedobjdict) "ACAD_SCALELIST"))))) ) ) (apply ' command (append (list "-scalelistedit")(list "a" "1/50" "1:0.05" "a" "1/100" "1:0.1" "a" "1/200" "1:0.2" "a" "1/250" "1:0.25" "a" "1/500" "1:0.5" "a" "1/1000" "1:1" "a" "1/1500" "1:1.5" "a" "1/2000" "1:2" "a" "1/5000" "1:5" "q" ))) (command "cannoscale" "1/200" ) (prin1) ) Donc pour expliquer un peu, je supprime une à une les échelles de la liste puis je cré mes propres échelles et enfin je met en echelle courante "1/200".Voila ça marche pas mal sauf que c'est un peu long pour créer ma propre liste mais bon.Je vais maintenant chercher du coté de la création d'échelle pour que ce soit le plus rapide possible.et encore merci à vous :)
Bred Posté(e) le 11 avril 2007 Posté(e) le 11 avril 2007 Excuse moi, mais là j'ai du mal à t'aider : j'ai un bug dans l'aide du developpeur, et comme je suis trés loin d'être assez bon pour m'en passer, je ne comprends pas certaine chose (je n'arrive pas à rentrer des echelles avec entmake....) Donc je donne la main.... Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
lili2006 Posté(e) le 11 avril 2007 Posté(e) le 11 avril 2007 Rebonsoir, A priori, pas de pbs pour suprrimer les listes par défaut de AutoCAd (merci aux lispeurs de ce forum). Est-ce que quelqu'un qui travaille en cm, pourrais écrire un lisp pour avoir de nouveaux mes echelles (comme au bon vieux temps de la 2007) à savoir : 1/20 =0.5; 1/25=0.4; 1/50=0.2; 1/75 =10/75; 1/100=0.1 et enfin 1/200 =0.05). Je pense que pour un spécialiste, cela ne doit pas être compliqué. Dés que j'ouvre un ancien projet, la liste par défaut de autoCAD, se recharge, c'est rasoir. J'ai bien compris pour effacer à l'ouverture cette fichue liste, mais je ne sais pas lisper, donc pb. Je ne me voit pas réécrire mes échelles à chaque ouverture de projets anciens. Merci d'avance à ceux qui s'essayerons, je pense que cela va dépanner pas mal d'Autocadien.Quelle galère, cette histoire d'échelle, d'ailleurs, j'ai pas encore bien compris ces histoires d'échelles d'annotations, mais je pense que cela peut être pratique tout de même, affaire à suivre, donc,... :casstet: Civil 3D 2025 - COVADIS_18.3c https://www.linkedin...3%ABt-95313341/
coxsurf56 Posté(e) le 12 avril 2007 Posté(e) le 12 avril 2007 Ashram_666 ton lisp ne fais rien chez moi :casstet: meme en faisant un couper collerpour les echelles d'annotations, ils n'ont pas fais dans la simplicite!!!
Ashram_666 Posté(e) le 12 avril 2007 Auteur Posté(e) le 12 avril 2007 Bonnjour,En fait je viens de m'aperçevoir d'une petite erreur sur mon lispje la corrige tout de suite (while (assoc 350 (dictsearch (namedobjdict) "ACAD_SCALELIST")) (progn (vla-delete (vlax-ename->vla-object (cdr (assoc 350 (dictsearch (namedobjdict) "ACAD_SCALELIST"))))) ) ) (apply ' command (append (list "-scalelistedit")(list "a" "1/50" "1:0.05" "a" "1/100" "1:0.1" "a" "1/200" "1:0.2" "a" "1/250" "1:0.25" "a" "1/500" "1:0.5" "a" "1/1000" "1:1" "a" "1/1500" "1:1.5" "a" "1/2000" "1:2" "a" "1/5000" "1:5" "q" ))) (command "cannoscale" "1/200" ) (prin1) Voila maintenant lorsque vous chargez ce lisp il s'executera automatiquement.et pour réponre à lili2006 il suffit que tu modifi juste un peu le lispau lieu de "a" "1/50" "1:0.05" tu tapes "a" "1/20" "1:0.5" et ainsi de suite...Moi non plus je ne connais pas trop les fonctions en "entmake", je continu la lutte :)
Messages recommandés
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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant