Bred Posté(e) le 12 avril 2007 Posté(e) le 12 avril 2007 Salut,je réussis (enfin) à créer un type echelle... Mais comme je n'ai toujour pas l'aide :mad: j'ai du mal à comprendre à quoi tous les code dxf que j'ai ressortis du 350 correspondent...Si quelqu'un pouvait mettre ici ce q'il trouve dans l'aide visual-lisp des code dxf de "SCALE", ça me servirait bien ... (setq dict (cdr (assoc -1 (dictsearch (namedobjdict) "ACAD_SCALELIST"))) ent1 (entmakex (list '(0 . "SCALE") '(100 . "AcDbScale") '(70 . 0) '(300 . "TOTO") '(140 . 8) '(141 . 8) '(290 . 1)))) (dictadd dict "AcDbScale" ent1) Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
lili2006 Posté(e) le 12 avril 2007 Posté(e) le 12 avril 2007 Bonjour, Merci à Ashram_666 , je vais essayer de suite. Quant à Bred, c'est quoi ce que tu proposes, un lisp ou autre ? Je n'y comprends pas grand chose et surtout ça sert à quoi? (Je suis parfaitement débutant dans ce domaine). Encore merci à vous. Je teste et je vous tient au courant.@+ :) Civil 3D 2025 - COVADIS_18.3c https://www.linkedin...3%ABt-95313341/
Bred Posté(e) le 12 avril 2007 Posté(e) le 12 avril 2007 C'est juste pour faire +propre et d'éviter de passer par des (command ...), mais le lisp de Ashram_666 convient tout à fait. Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
lili2006 Posté(e) le 12 avril 2007 Posté(e) le 12 avril 2007 Resalut, Encore merci à Ashram_666.J'ai rechangé les facteurs d'echelle et ça marche !! :) Un soucis de moins !@+, 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 moi j'ai ce message d'erreurUtilitaires de menu AutoCAD chargés.; erreur: no function definition: VLAX-ENAME->VLA-OBJECT :exclam: pour bredmoi je ne trouve rien pour scale dans l'aide de visual lispet je ne sais pas ou chercher les codes dxf
(gile) Posté(e) le 12 avril 2007 Posté(e) le 12 avril 2007 coxsurf56, Ajoute (vl-load-com) au début du code. Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
coxsurf56 Posté(e) le 12 avril 2007 Posté(e) le 12 avril 2007 :) merci gile, Ashram_666, ....ca marche nickelgrosse epine en moin dans le pied
lili2006 Posté(e) le 12 avril 2007 Posté(e) le 12 avril 2007 Merci à bred pour sa réponse, Effectivement le lisp de Ashram_666 fonctionne trés bien. Encore merci à tous. Civil 3D 2025 - COVADIS_18.3c https://www.linkedin...3%ABt-95313341/
Ashram_666 Posté(e) le 12 avril 2007 Auteur Posté(e) le 12 avril 2007 Re,Bred ton lisp fonctionne bien pour créer une echelle mais losque je veux en créer plusieurs en suivant le schéma que ta routine il ne tient compte que de la première, étrange :casstet: .Un jour je l'aurai oh oui un jour je l'aurai :) .Et merci de passer du temps sur ces problèmes.
Bred Posté(e) le 12 avril 2007 Posté(e) le 12 avril 2007 En fait je faisais une erreur : il faut incrémenter une valeur pour le "symbol" dans dictadd ...(je découvre aussi...) (setq dict (cdr (assoc -1 (dictsearch (namedobjdict) "ACAD_SCALELIST"))) ent1 (entmakex (list '(0 . "SCALE") '(100 . "AcDbScale") '(70 . 0) '(300 . "toto") '(140 . 2) '(141 . 2) '(290 . 1)))) (dictadd dict [b]"Z1"[/b] ent1)puis(setq ent2 (entmakex (list '(0 . "SCALE") '(100 . "AcDbScale") '(70 . 0) '(300 . "uuu") '(140 . 3) '(141 . 3) '(290 . 1)))) (dictadd dict [b]"Z2"[/b] ent2)etc ....donc attention au doublon !!! fonctionne pas sinon ... [Edité le 12/4/2007 par Bred] Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
coxsurf56 Posté(e) le 13 avril 2007 Posté(e) le 13 avril 2007 salutcomment marche ton lisp BREDTOTO c'est le nom qui est visiblepour regler les tailles c'est scale et acdbscale? le lisp de Ashram_666 marche tres bienmais comme la precise lili2006 des qu'on insert un bloc d'une version precedentela liste revient :mad:
Bred Posté(e) le 13 avril 2007 Posté(e) le 13 avril 2007 le lisp de Ashram_666 marche tres bienmais comme la precise lili2006 des qu'on insert un bloc d'une version precedenteLà, j'avoue, à part les réacteur de blocs, je ne vois pas comment faire...et moi, les réacteurs, pour l'instant ... comment marche ton lisp BREDTOTO c'est le nom qui est visiblepour regler les tailles c'est scale et acdbscale?Mon extrait de code est juste une manière plus "propre" de créer la liste d'échelle.le lisp de Ashram_666 fonctionne, mais comme j'ai trouver le moyen d'atteindre le dictionnaire d'édition de liste (le début du code de Ashram_666 ) , ce qui n'était pas facile pour moi, j'essaye de le modifier sans passer par les (command..., ce qui est juste un caprice de programmateur....J'ai des soucis d'aide, mais après quelque test, les variables à modifier pour l'échelle sont les codes dxf 140 et 141. Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
jifi Posté(e) le 13 avril 2007 Posté(e) le 13 avril 2007 Salut à tous, Pour les nouveaux dessins, il suffit de modifier le gabarit d'AutoCAD. 1 - Ouvrir le fichier acadiso.dwt2 - Menu -> Format -> Liste des échelles -> Modifier la liste des échelles3 - Sauvegarder acadiso.dwt 4 - Fichier -> Nouveau... -> choisir acadiso.dwt5 - Vous pouvez contrôler la liste des échelles. @plus Jean-Philippe - Formateur / Dessinateur sur AutoCAD et MEP http://www.git-cad.ch
Bred Posté(e) le 13 avril 2007 Posté(e) le 13 avril 2007 Pour les nouveaux dessins, il suffit de modifier le gabarit d'AutoCAD.Plus sur 2008... et c'est le but de ce post sur 2008... Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
Ashram_666 Posté(e) le 13 avril 2007 Auteur Posté(e) le 13 avril 2007 Salut,Merci pour ton lisp bred, il me permet d'executer ma routine plus rapidement :)Parcontre j'ai fait quelques test et, j'ai remarqué que pour les fenêtres dans les présentations, elles perdaient leurs échelles d'annotations! à la place de "1/200" il y a "" et pas leurs échelles de fenêtre :casstet: Bizard!!Je cherche maintenant du coté des viewport pour extraire ces échelles c'est pas encore gagnémais on y est presque :)
Pieroka Posté(e) le 9 juillet 2007 Posté(e) le 9 juillet 2007 Salut les lispeurs 2008, ;) Dans tout ce que vous avez écrit, je ne sais quoi utiliser. Je ne lisp pas personnellement. Ma rubrique préférée étant la pause café...:casstet: Vu que je travaille beaucoup avec des fichiers existants reçus de géomètres (ou mes propres anciens fichiers), caler ma liste perso en un geste, en effaçant celle de base, m'intéresse. :) Au final, quelqu'un pourrait-il pondre un lisp qui remette à zéro la liste d'échelles d'origine d'un fichier et qui la remplace par une perso ? Je suis capable d'écrire les lignes de codes qui correspondront à ma liste d'échelles persos, si il y a 2 ou 3 lignes d'échelles en exemple. Merci d'avance ! :D :D :D [Edité le 9/7/2007 par Pieroka] Formateur Autocad - Revit - Sketchup - Photoshop
Bred Posté(e) le 9 juillet 2007 Posté(e) le 9 juillet 2007 Salut Pieroka,bientôt en vacances ??? Ci-dessous, un code mise au propre.Tu dois modifier/rajouter ce que je t'ai mis en gras.je pense que c'est assez compréhensible comme ça, mais si tu as du mal, fais le savoir ! ; Modification de la liste des echelles (defun c:lst-ech-pierroka () (lst-ech (list [b] (list "1/50" 2 1) (list "1/1" 1 1) (list "1/2" 1 2) (list "1/4" 1 4)[/b] ) ) (princ) ) ; routine modif liste echelle (defun lst-ech (lst / DICT ENT1 I N X) (vl-load-com) (while (assoc 350 (dictsearch (namedobjdict) "ACAD_SCALELIST")) (progn (vla-delete (vlax-ename->vla-object (cdr (assoc 350 (dictsearch (namedobjdict) "ACAD_SCALELIST"))))) ) ) (setq i 1 x (strcat "Z" (rtos i))) (repeat (length lst) (setq n (nth (1- i) lst) dict (cdr (assoc -1 (dictsearch (namedobjdict) "ACAD_SCALELIST"))) ent1 (entmakex (list '(0 . "SCALE") '(100 . "AcDbScale") '(70 . 0) (cons 300 (car n)) (cons 140 (cadr n)) (cons 141 (caddr n))))) (dictadd dict x ent1) (setq i (1+ i) x (strcat "Z" (rtos i))) ) ) [Edité le 9/7/2007 par Bred] Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
Pieroka Posté(e) le 9 juillet 2007 Posté(e) le 9 juillet 2007 Nickel, merci ! petit test effectué ça marche bien. Faudra voir à l'usage, car je suis pas encore passé entièrement à la 2008.Je me suis fait un lisp pour les plans en mètres ( 99% pour moi >>topo). de " 1:1° " à " 1:25.000° ".Je le déclinerais aussi pour les plans d'unité-objet en cm et mm pour mes collègues qui bossent avé des archis centimetreux ou millimétreux. vacances en Août pour moi... pas mal de boulot... mais tranquille... Et toi ? ça roule avec tes 3 colocatrices maintenant (plus le chat) ?Vacances ? Chantier de la maison ?réponse en MP ou mail si tu donnes des détails croustillants... :P bises Pierre :D Formateur Autocad - Revit - Sketchup - Photoshop
La Lozère Posté(e) le 12 juillet 2007 Posté(e) le 12 juillet 2007 Bonjour,Je voudrais tester le lisp de BRED, mais comment le lance-t-on une fois charger?Je ne connais pas beaucoup le lisp (c'est très vieux Autocad 12).En apparté, je trouve nul d'être obligé de redéfinir la liste des echelles à chaque nouveaux/anciens dessin. Quand on fait découvrir Autocad, il est quand même plus simple de choisir l'echelle dun plan dans une liste plutôt que de faire le zoom yyXP. :mad: :mad: www.cad-is.fr Autocad Map 2021 - Covadis/Autopiste V18.2c Pisser sous la douche ne suffira pas
Bred Posté(e) le 12 juillet 2007 Posté(e) le 12 juillet 2007 Salut,Pour le charger, tu as tous ce que tu veux ici. POur lancer une lisp après l'avoir charger, le nom de la commande à taper est celle qui se trouve juste après le c: (defun c:[b]lst-ech-pierroka[/b] () (lst-ech (list (list "1/50" 2 1) (list "1/1" 1 1) ... tu peux le modifier (en ne prenant pas un nom de commande déjà existant) Le code suivant où il n'y a pas de c: est une sous-routine qu'utilise le lisp. Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
La Lozère Posté(e) le 12 juillet 2007 Posté(e) le 12 juillet 2007 Nickel, ca marche. Dans mes souvenir, il me semblait bien que c'été ça. Mais j'avais du faire un truc qui n'allait pas.Merci pour cette routine, en espérant qu'autodesk reprendra cette boulette, car pour moi, c'est une boulette.A+ www.cad-is.fr Autocad Map 2021 - Covadis/Autopiste V18.2c Pisser sous la douche ne suffira pas
Pieroka Posté(e) le 4 mai 2008 Posté(e) le 4 mai 2008 Je colle ici l'info sur le nettoyeur d'échelles qu'Autodesk a sorti il y a qques semaines : Un pb de lourdeur est provoqué pas une surabondance d'échelles dans la liste des échelles. un outil a été publié par autodesk voir ici. Cet outil permet de nettoyer les échelles excédentaires, de mettre sa liste perso à partir d'un dwg ou un dwt... et permet de traiter des dossiers entiers et tout les dwg qu'ils contiennent. Formateur Autocad - Revit - Sketchup - Photoshop
vinz34 Posté(e) le 5 mai 2008 Posté(e) le 5 mai 2008 Salut, Pour mémoire ce sujet à déja été résolu ici. Sur ce, bonne journée
Bred Posté(e) le 5 mai 2008 Posté(e) le 5 mai 2008 Salut,Pour mémoire ce sujet à déja été résolu ici.Ce que veux dire Pieroka, c'est que ce problème à été résolu par Autodesk, et que donc mon lisp (qui est celui de ce post, et recopier dans le post que tu cites) permettant de nettoyer la liste est maintenant inutile. Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
vinz34 Posté(e) le 5 mai 2008 Posté(e) le 5 mai 2008 Salut, Le problème est résolu avec la version 2009, si tu as trop d'échelles Autocad te propose te supprimer les excédentaires en réinitialisant la liste et en te permettant d'afficher ou non celles venant d'Xrefs. Cependant, le problème de la gestion de ces échelles par rapport à l'unité de dessin n'est toujours pas géré contrairement à la version MEP par exemple. Donc, on continue avec le lisp....
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