x_all Posté(e) le 3 mars 2017 Posté(e) le 3 mars 2017 Bonjour je suis charrette sur du dessin mais j'ai un pb récurent qui peut être ne poserai pas trop de pb à un codeur fou, ou qui peu servir d'exercice pour un débutant. Je voudrai une fonction qui change par un coefficient à rentrer au départ les échelle de type de ligne d'un dessin. Par exemple une entité a un échelle de type de 2, je voudrai le faire passer à 2 x K, et ceux pour toutes les entités d'un dessin y compris dans les blocs. Le but serai de mettre à jour les Xref d'un archi qui à des types exotique et qui bien que les dessins sont en mètre sort très mal une fois inséré dans mes dessins. Hors si je fait un echltp pour traiter son dessin, ça me fou le boxon pour mes types de lignes. merci 'ps je poste toujours le vendredi et personne le lira ce message.... snif quelques trucs sur autocad
rebcao Posté(e) le 3 mars 2017 Posté(e) le 3 mars 2017 Bonjour, Eternel problème les types de ligne ! Et pourtant, y a pas de problème si on respecte une méthode ! Le problème provient souvent de plans basés en pouces (variable MEASUREMENT) alors que l'on travaille dans un environnement METRIQUE !!!! J'ai profité d'une formation chez un client pour créer un Fichier .LIN international . Ce fichier traite les types de lignes avec les noms standards des différents pays : FR - EN - DE - IT - ES - BR. Tu charges TOUS les types de ligne et tu purges les types de ligne inutilisées... Par contre les type de ligne à la noix c'est pas prévu ! Mais si tu as souvent les mêmes noms tu complètes le fichier avec un type de ligne équivalent ! Tu gardes de préférences les paramètres suivants : MSLTSCALE = 1 / PSLTSCALE = 1 / ECHLTP = 0.4 / MEASUREMENT = 1 Une réponse en image dans autre sujet... Christian Formateur, Consultant Expert AutoCAD, REVIT MEP, INVENTOR, télécharger , des Outils AutoCAD...cad123 @ wanadoo.fr (enlever les espaces de part et d'autre de @)
x_all Posté(e) le 3 mars 2017 Auteur Posté(e) le 3 mars 2017 oui, je sais, je le connais l'Eternel pb... mais si je dois traiter mes 6 xref avec 1 mise à jour par semaine en ce mnt, j'y passe un temps certain, je ne vais pas pour ce projet changer mes types de lignes qui marchent bien généralement. alors oui, il y a une méthode, mais non l'archi ne changera pas ses habitudes pour moi... si avec un lisp, je peut traiter les xref en une commande, c'est pas plus mal... quelques trucs sur autocad
bryce Posté(e) le 3 mars 2017 Posté(e) le 3 mars 2017 Bonjour, On est tous d'accord, forcer les échelles de type de ligne c'est mal...Maintenant que le mal est fait, tu peux tester ce petit lisp vite fait:(defun C:MULTS ( / acdoc coeff) (vl-load-com) (setq acdoc (vla-get-activedocument (vlax-get-acad-object))) (or (setq coeff (getreal "\nCoefficient à appliquer à l'échelle du type de ligne pour tous les objets du dessin <1000>: ")) (setq coeff 1000) ) (vlax-map-collection (vla-get-blocks acdoc) '(lambda (x) (vlax-for ent x (vla-put-linetypescale ent (* coeff (vla-get-linetypescale ent))) ) ) ) (princ) )En espérant que ça te sauve ton week-end :P Brice, formateur AutoCAD - Inventor - SolidWorks - ZWCad - DraftSight - SketchUp indépendant
Patrick_35 Posté(e) le 4 mars 2017 Posté(e) le 4 mars 2017 Bonjour à vous tous @briceTon lisp est super et même d'un très bon niveau, mais tu as plus simple en utilisant echltp @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
x_all Posté(e) le 5 mars 2017 Auteur Posté(e) le 5 mars 2017 il est plus que super !! merci brice, qui a bien compris le pb, le but était de faire un echltp sans echltp ^^ le VBA, ça à l'air magique comme ça...j'imagine algorithme en pur lisp et utilisation des dxf....c'est vrai que là c'est super élégant.alors merci encore pour cette leçon de concision. quelques trucs sur autocad
bryce Posté(e) le 5 mars 2017 Posté(e) le 5 mars 2017 Ce n'est pas du VBA, mais du Visual Lisp ;)Content que ça te convienne en tout cas ! Brice, formateur AutoCAD - Inventor - SolidWorks - ZWCad - DraftSight - SketchUp indépendant
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