-
Compteur de contenus
292 -
Inscription
-
Dernière visite
-
Jours gagnés
1
Type de contenu
Profils
Forums
Calendrier
Blogs
Tout ce qui a été posté par jms
-
nos réponses viennent de se croiser 🙂
-
Solution apportée par un collègue, qui mange du VBA depuis plus de 20 ans 🙂 : je n'avais pas mentionné l'objet du "LayerOn = True". Que je devais donc écrire "Layer.LayerOn = True" En définitive, j'ai inversé des lignes, rendant le layer "0" courant seulement APRÈS m'être assuré que tous les layers sont bien actifs et dégelès. Ce qui donne : Sub Etat_De_Layer() 'Dégeler et activer tous les layers du dessin: For Each Layer In ThisDrawing.Layers If Layer.Name <> "0" Then Layer.Freeze = False Layer.LayerOn = True Next 'Rend courant le layer "0": Set objLayer = ThisDrawing.Layers("0") objLayer.LayerOn = True ThisDrawing.ActiveLayer = ThisDrawing.Layers.Item("0") 'Geler tous les layers sauf certains : For Each Layer In ThisDrawing.Layers If Layer.Name <> "0" And Layer.Name <> "AR_TXT_M2" And Layer.Name <> "AR_TXT_NOMS" And Layer.Name <> "CARTOUCHE" And Layer.Name <> "CLOISONS" And Layer.Name <> "FD" And Layer.Name <> "FD_CLOISONS" And Layer.Name <> "FD_FENETRES" And Layer.Name <> "FD_HACHURES" And Layer.Name <> "FD_MOBILIER" And Layer.Name <> "FD_PORTES" And Layer.Name <> "FD_SANITAIRES" And Layer.Name <> "FN" And Layer.Name <> "FN$" And Layer.Name <> "TXT" Then If Layer.Name <> "0" Then Layer.Freeze = True End If Next ThisDrawing.Regen acActiveViewport End Sub
-
Salut, Comme le titre l'indique, je tente d'approcher le VBA, avec un premier succès...mitigé ! La routine que j'ai rédigée doit simplement rendre courant le layer "0", activer tous les layers, dégeler tous les layers et es geler tous sauf certains. Aucun message d'erreur, mais pas moyen de rendre les layers actifs. Quelqu'un voit-il pourquoi ? Sub Layers() 'Rend courant le layer "0": Set objLayer = ThisDrawing.Layers("0") objLayer.LayerOn = True ThisDrawing.ActiveLayer = ThisDrawing.Layers.Item("0") 'Dégeler tous les layers du dessin: For Each Layer In ThisDrawing.Layers If Layer.Name <> "0" Then Layer.Freeze = False Next 'Activer tous les layers du dessin: For Each Layer In ThisDrawing.Layers LayerOn = True Next Layer 'Geler tous les layers sauf certains : For Each Layer In ThisDrawing.Layers If Layer.Name <> "0" And Layer.Name <> "AR_TXT_M2" And Layer.Name <> "AR_TXT_NOMS" And Layer.Name <> "CARTOUCHE" And Layer.Name <> "CLOISONS" And Layer.Name <> "FD" And Layer.Name <> "FD_FENETRES" And Layer.Name <> "FD_HACHURES" And Layer.Name <> "FD_MOBILIER" And Layer.Name <> "FD_PORTES" And Layer.Name <> "FD_SANITAIRES" And Layer.Name <> "FN" And Layer.Name <> "FN$" And Layer.Name <> "TXT" Then If Layer.Name <> "0" Then Layer.Freeze = True End If Next ThisDrawing.Regen acActiveViewport End Sub
-
Merci Eric !!! C'est génial, je ne connaissais pas 🙂
-
Bonjour tout le monde, Je cale sur la syntaxe d'une ligne de commande, que je croyais initialement toute simple. Je souhaiterais insérer dans un dwg un bloc qui existe déjà dans ce DWG, mais avec quelques modifications, redéfinissant ainsi celui s'y trouve déjà. A la souris, facile, classique, courant..."Ce bloc existe déjà. Voulez-vous le redéfinir ?", je valide et hop ! Mais en ligne de commande, Autocad n'émet pas cette alerte, et même si le chemin d'accès que j'introduis envoie bien vers un répertoire où se trouve le bloc que je souhaite importer, il insère le bloc avec la définition en cours. Quelqu'un aurait-il une idée de bonne syntaxe ?...
-
Merci de vous pencher sur le sujet. Effectivement, j'utilise Access 32 bits. Est-ce aussi pour cette raison que, si je veux me connecter autrement à une DB Access, sans passer par un UDL, j'obtiens ce retour ? Ceci dit, lorsque je crée un ODBC 64 bits qui pointe vers cette DB Access, et que j'attache dans Map un UDL qui utilise cet ODBC, les tables sont reconnues : Par contre, quand je veux créer un Link Template...ERROR ! Peut-être faudra-t-il que je passe à une version d'Access 64 bits, en effet. Mais j'ai quelques applications essentielles qui tournent sur Access et j'ai eu trop souvent la désagréable habitude de constater que les changements d'infrastructures et autres upgrade traînent souvent leur cortège de mauvaises surprises ! Décision à méditer donc...
-
Bonjour, C'est un appel concernant une installation basique, je suppose, Autocad Map 3D 2019. Quelqu'un pourrait-il/elle m'aider à y voir plus clair, lors de la création d'un lien vers une table ? Le but initial : je voudrais associer des polylignes d'un DWG à une table d'une DB Access. Il s'agit de lier des polylignes représentant des locaux de bâtiments à une DB qui sera elle-même liée à d'autres applications. La DB Access existe. Comme je n'en suis qu'en phase de test, je l'ai enregistrée en mdb et accdb. Le DWG, avec les polylignes, également. Je travaille sous Windows 10 Entreprise, système d’exploitation 64 bits, processeur x64. J'ai créé un ODBC qui pointe vers cette DB. Mais je ne peux le créer qu'en ODBC 32bits. Si je souhaite créer un ODBC 64 bits, je ne trouve pas de pilote Access. Ci-dessous les pilotes proposés à la création des deux types d'ODBC : 64 bits : 32 bits : Déjà à ce niveau, je nage dans le doute : comme je travaille sous un système 64 bits, est-ce une raison pour ne travailler qu'avec des ODBC 64 bits ? Au-delà d'un ODBC, je dois créer un UDL que j'utiliserai dans Map, pour me connecter à la source. Mais l'UDL ne semble reconnaître que les ODBC 64 bits : Quand je sélectionne le driver pour ODBC, je ne vois dans l'onglet Connexion que les ODBC 64 bits qui existent sur ma machine 😞 En bref, je ne fais que démarrer un projet test et je ne suis encore nulle part dans l'installation de l'environnement. Qui aurait une idée pour démarrer correctement ce test ? (ceci dit, on a quand même bien réussi avec le temps, aujourd'hui...tout n'est pas négatif !)
-
Dans le cas qui me préoccupait, ce sont des attributs de blocs.
-
Salut, Quelqu'un connaît-il/elle un moyen pour remplacer du texte dans un dwg sans ouvrir la fenêtre de saisie ? Je voudrais juste pouvoir inscrire cette commande dans un petit script, mais je cale sur cette commande qui ne semble pas pouvoir être exécutée entièrement au clavier... 😞
-
En effet. Personnellement je travaille avec AutoCAD Map 3D 2019 et n'ai pas d'autres versions pour tester.
-
C'est bizarre, Hassan a pu sélectionner cette hachure. Le mystère, bien que réglé de mon côté, s'épaissit, puisque vous travaillez tous les trois sur le même DWG...
-
En effet, ça marche 🙂 Merci !
-
Etonnant ! Je viens de réouvrir le dwg directement depuis cette page et, quand j'isole le layer AR_USAGE et que je fais un QSELECT de toutes les hachures qui sont dans le layer AR_USAGE, j'obtiens ceci...
-
L'échelle de cette hachure et la taille de la polyligne qu'elle devait remplir ne permettait pas de la visualiser. Désolé pour le dérangement, merci et bonne année !!!
-
Ah, voilà. Je ne m'explique pas l'historique du problème mais je l'ai trouvé. Il s'agit d'une hachure du layer AR_USAGE, qui remplissait une polyligne quelque part parmi tous les locaux que j'ai supprimé dans cette partie gauche du bâtiment.
-
Pour mieux visualiser, voici ce que j'obtiens en aperçu si je veux imprimer en étendu et avec centrage...
-
Voilà, j'en ai juste retiré les noms des occupants... EBL_G_13_FM.dwg
-
Merci Didier, Ce n'était malheureusement pas un texte vide. Je continue à chercher.
-
Salut, Quelqu'un sait-il comment je pourrais copier l'intégralité d'un dessin vers un nouveau dessin vierge, en conservant les ehandle, si toutefois Autocad le permet. La raison est très simple; je suis occupé à nettoyer une série de plans d'étage d'un bâtiment dont je dois supprimer entièrement une aile. Problème : même quand je dégèle et déverouille chaque layer, il semble qu'il reste des objets "fantômes" puisqu'un zoom étendu me donne un plan non centré. Et d'autre part, des éléments dans ces DWG sont liés à des DB, avec leur ehandle comme identifiant. Si quelqu'un voit une solution, ce serait une superbe cadeau de fin d'année ! 🙂 L'autre façon de tourner le problème est de voir comment faire apparaître ces objets fantômes...
-
Oui, le doublement du back-slash, je l'utilisais déjà pour d'autres script, en particulier quand il s'agit d'indiquer un chemin d'accès à un fichier. J'ai utilisé ton exemple et ajouté les hauteurs et rotation, qui ne sont pas systématiquement les mêmes. Mon script de base donne maintenant ceci: (command "_-MTEXT" "[FG]X[/FG],[FG]Y[/FG]" "_H" [FG]HEIGHT[/FG] "_R" [FG]ROTATION[/FG] "_J" "TL" "_W" 0 "[FG]New_rm_id[/FG]\\P[FG]Area[/FG]" "") Et, une fois traité, le final donne ceci et tout fonctionne : (command "_-MTEXT" "-226602,79855" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11C_TechR_C-06-1\\P12 m²" "") (command "_-MTEXT" "-226597,80144" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11C_TechR_C-06-2\\P1 m²" "") (command "_-MTEXT" "-226802,82249" "_H" 30 "_R" 90 "_J" "TL" "_W" 0 "ETB2_11C_CorriTech_C-09-1\\P18 m²" "") (command "_-MTEXT" "-226800,82594" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11C_TechR_C-09-2\\P3 m²" "") (command "_-MTEXT" "-226588,82928" "_H" 30 "_R" 90 "_J" "TL" "_W" 0 "ETB2_11C_CorriTech_C-11-1\\P4 m²" "") (command "_-MTEXT" "-226587,83135" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11C_ITR_C-11-2\\P5 m²" "") (command "_-MTEXT" "-226808,83009" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11C_TechR_C-11-3\\P2 m²" "") (command "_-MTEXT" "-226582,83396" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11C_TechR_C-11-4\\P7 m²" "") (command "_-MTEXT" "-226469,81888" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11D_Corri_D-08-2\\P3 m²" "") (command "_-MTEXT" "-226527,82759" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11C_Stairs_87_STAIRS\\P16 m²" "") (command "_-MTEXT" "-226734,81891" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11D_Lift_BH_LIFT\\P9 m²" "") (command "_-MTEXT" "-221893,80160" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11BC_Offic_01\\P112 m²" "") (command "_-MTEXT" "-220774,81075" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11BC_TechR_036\\P2 m²" "") (command "_-MTEXT" "-221557,80507" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11BC_Corri_101\\P49 m²" "") (command "_-MTEXT" "-221016,80393" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11BC_MeetS_102\\P10 m²" "") (command "_-MTEXT" "-223084,80351" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11BC_Corri_118\\P5 m²" "") (command "_-MTEXT" "-223047,80521" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11BC_PrintC_121_PRINT\\P10 m²" "") (command "_-MTEXT" "-222517,80194" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11BC_Offic_13\\P26 m²" "") (command "_-MTEXT" "-220777,80484" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11BC_TechR_136\\P0 m²" "") (command "_-MTEXT" "-222904,80195" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11BC_Offic_16\\P25 m²" "") (command "_-MTEXT" "-222060,80691" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11BC_Offic_22\\P137 m²" "") (command "_-MTEXT" "-221186,80691" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11BC_Offic_32\\P17 m²" "") (command "_-MTEXT" "-220916,80691" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11BC_Offic_34\\P21 m²" "") (command "_-MTEXT" "-219621,79317" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11C_Stairs_00_STAIRS\\P17 m²" "") (command "_-MTEXT" "-220039,78753" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11C_Offic_01\\P118 m²" "") (command "_-MTEXT" "-219962,78365" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11C_Bubble_103\\P8 m²" "") (command "_-MTEXT" "-219596,79839" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11C_PrintC_121_PRINT\\P11 m²" "") (command "_-MTEXT" "-219852,79944" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11C_MailR_122\\P7 m²" "") (command "_-MTEXT" "-219852,80082" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11C_MeetR_123\\P19 m²" "") (command "_-MTEXT" "-219830,81191" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11C_Bubble_131\\P7 m²" "") (command "_-MTEXT" "-220233,83947" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11C_Bubble_149\\P8 m²" "") (command "_-MTEXT" "-220234,84489" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11C_Bubble_152\\P8 m²" "") (command "_-MTEXT" "-219903,84220" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11C_Bubble_158\\P8 m²" "") (command "_-MTEXT" "-220193,79138" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11C_Bubble_16\\P13 m²" "") (command "_-MTEXT" "-219744,81524" "_H" 30 "_R" 90 "_J" "TL" "_W" 0 "ETB2_11C_CorriTech_165\\P18 m²" "") (command "_-MTEXT" "-220199,79441" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11C_Bubble_18\\P12 m²" "") (command "_-MTEXT" "-220187,79721" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11C_MeetR_20\\P37 m²" "") (command "_-MTEXT" "-220182,81024" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11C_CoffeeC_27_COFFEE\\P40 m²" "") (command "_-MTEXT" "-220196,81720" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11C_Bubble_35\\P13 m²" "") (command "_-MTEXT" "-220197,81969" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11C_Bubble_37\\P13 m²" "") (command "_-MTEXT" "-220034,83678" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11C_Offic_38\\P292 m²" "") (command "_-MTEXT" "-219854,82878" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11C_PrintC_64_PRINT\\P9 m²" "") (command "_-MTEXT" "-219605,81761" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11C_Stairs_73_STAIRS\\P16 m²" "") (command "_-MTEXT" "-220029,79721" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11C_Corri_99\\P17 m²" "") (command "_-MTEXT" "-217270,79170" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11CD_TechR_00\\P12 m²" "") (command "_-MTEXT" "-217540,79517" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11CD_Offic_01\\P27 m²" "") (command "_-MTEXT" "-218276,79517" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11CD_Offic_04\\P33 m²" "") (command "_-MTEXT" "-218730,79517" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11CD_Offic_06\\P33 m²" "") (command "_-MTEXT" "-219255,79517" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11CD_Offic_08\\P27 m²" "") (command "_-MTEXT" "-219260,81573" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11CD_Offic_09\\P22 m²" "") (command "_-MTEXT" "-218018,79880" "_H" 22 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11CD_ToilM_103_WC-WOMEN\\P25 m²" "") (command "_-MTEXT" "-218521,79823" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11CD_TechR_105\\P7 m²" "") (command "_-MTEXT" "-218841,79880" "_H" 22 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11CD_ToilM_106_WC-MEN\\P21 m²" "") (command "_-MTEXT" "-219128,81191" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11CD_Bubble_109\\P7 m²" "") (command "_-MTEXT" "-218795,81573" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11CD_Bubble_11\\P14 m²" "") (command "_-MTEXT" "-218568,81573" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11CD_Offic_12\\P14 m²" "") (command "_-MTEXT" "-219686,80699" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11CD_MeetS_129\\P13 m²" "") (command "_-MTEXT" "-218276,81573" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11CD_Bubble_13\\P14 m²" "") (command "_-MTEXT" "-218006,81573" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11CD_Offic_14\\P14 m²" "") (command "_-MTEXT" "-217532,81573" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11CD_Offic_16\\P22 m²" "") (command "_-MTEXT" "-218005,80306" "_H" 22 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11CD_ToilM_203_WC-DIS\\P4 m²" "") (command "_-MTEXT" "-217511,80091" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11CD_Store_901\\P9 m²" "") (command "_-MTEXT" "-219322,80091" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11CD_Store_908\\P9 m²" "") (command "_-MTEXT" "-216951,79591" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11D_Offic_01\\P341 m²" "") (command "_-MTEXT" "-216725,78372" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11D_Bubble_107\\P8 m²" "") (command "_-MTEXT" "-217041,79313" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11D_Offic_117\\P7 m²" "") (command "_-MTEXT" "-217317,79857" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11CD_PrintC_21_PRINT\\P11 m²" "") (command "_-MTEXT" "-216973,79938" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11D_MailR_122\\P6 m²" "") (command "_-MTEXT" "-216979,80084" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11D_MeetR_123\\P19 m²" "") (command "_-MTEXT" "-216981,80520" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11D_MeetR_126\\P31 m²" "") (command "_-MTEXT" "-216905,83948" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11D_Bubble_158\\P8 m²" "") (command "_-MTEXT" "-216906,83683" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11D_Bubble_160\\P8 m²" "") (command "_-MTEXT" "-217023,81524" "_H" 30 "_R" 90 "_J" "TL" "_W" 0 "ETB2_11D_CorriTech_165\\P18 m²" "") (command "_-MTEXT" "-216622,82095" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11D_Bubble_38\\P13 m²" "") (command "_-MTEXT" "-216623,82364" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11D_Offic_40\\P13 m²" "") (command "_-MTEXT" "-216613,82529" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11D_Bubble_41\\P13 m²" "") (command "_-MTEXT" "-216614,82943" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11D_Bubble_44\\P13 m²" "") (command "_-MTEXT" "-216816,83408" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11D_Offic_45\\P191 m²" "") (command "_-MTEXT" "-216955,83068" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11D_Bubble_63\\P13 m²" "") (command "_-MTEXT" "-217088,82875" "_H" 30 "_R" 0 "_J" "TL" "_W" 0 "ETB2_11D_PrintC_64_PRINT\\P9 m²" "") MERCI !
-
Ah ben ça, comme on dit à Liège..."Oufti !!!" Merci Olivier. J'ignorais que ce "\\" renvoyait à la ligne. Ta réponse me sera utile, encore un grand merci !
-
Salut Curlygoth, Merci pour ton avis. Pour les scripts, je les génère avec un petit utilitaire, qu'un consultant nous avait développé il y a 20 ans, et qui est toujours aussi utile. Le principe est le suivant : j'ai un certain nombre de variables dans une table d'une DB Access. D'autre part, j'ai un script de base qui contient des commandes Autocad ainsi que le nom des champs de cette table. Quand je lance l'utilitaire, je sélectionne cette DB, ce script de base, et il génère un script avec autant de boucles qu'il y a de lignes dans la table de la DB. En clair, ça donne un truc comme ceci :(extrait d'un script de base) -layout s Macro-implantation (command "insert" "[FG]CARTOUCHE[/FG]" "0,0" "" "" "" "[FG]PARAM5[/FG]" "[FG]PARAM6[/FG]" "Macro-implantation" "[FG]PARAM7[/FG]" "NO_SCALE" "ENGIE") (command "insert" "P:\\06 - DOCUMENTATION PROJET\\_AUTODESK_SUPPORT_\\_TEMPLATE_\\[FG]LOGO[/FG]" "0,0" "" "" "") Et après le traitement par l'utilitaire, ça donne ceci, soit le même extrait, où les variables sont mises à jour (les "xxxxx..." masquent l'identité du client): -layout s Macro-implantation (command "insert" "P:\\06 - DOCUMENTATION PROJET\\_AUTODESK_SUPPORT_\\_TEMPLATE_\\CARTOUCHE_2021.dwg" "0,0" "" "" "" "Gosselies" "3rd" "Macro-implantation" "22/08/2022" "NO_SCALE" "xxxxxxxxxxxx") (command "insert" "P:\\06 - DOCUMENTATION PROJET\\_AUTODESK_SUPPORT_\\_TEMPLATE_\\LOGO_xxxxxxxxxxx_2014.dwg" "0,0" "" "" "") Concernant l'ajout du CAR(10), comment l'écrirais-tu ? Pas comme ceci, en tout cas : (command "MTEXT" "-226602,79855" "W" "0" "ETB2_11C_TechR_C-06-1" "CAR(10" "12m²")
-
Je pense que j'ai du donner beaucoup trop de précisions superflues, en effet. Si on oublie tout le contenu de ce fil, pour le résumer à l'essentiel, ça donne : quelqu'un peut-il m'aider à écrire un script qui permet d'insérer un texte multiligne dans Autocad ?
-
Bonjour Didier, Merci pour le retour. Oui, ces lignes viennent d'un simple script *.scr Attention, je ne maîtrise pas du tout le LISP. Quand je fais un "script", il s'agit toujours de lignes de commandes assez basiques puisque limitées à la syntaxe des commandes Autocad. Dans le cas présent, je suis bien obligé de chercher une autre solution. A ce stade, je ne vois que l'insertion d'un bloc avec deux attributs. Mais comme les textes que je souhaite insérer peuvent avoir une orientation et une hauteur variable, je dois juste prévoir une mise à jour de l'échelle en fonction de cette hauteur souhaitée.
-
Je viens de trouver une solution en utilisant la commande "DTEXT" plutôt que "TEXT". Evidemment ça me donne deux lignes de texte, et c'est déjà un résultat. Avec un texte multiligne, ce serait encore mieux 😉 ... Hum, erratum ! J'avais juste testé au clavier et ça fonctionnait, bien sûr. Mais plus lorsque c'est intégré sur une ligne de script...
