Aller au contenu

MACRO EXPLOSE + _DDETIT


Messages recommandés

Posté(e)

Bonsoir à toutes et tous,

 

Je souhaiterai pouvoir enchainer une décomposition de bloc et une édition de texte dans la foulée.

 

J'ai écrit :

 

^C^C_explode;_ddedit 

 

Ma ligne de commande =>

 

Commande: _explode

Sélectionnez un objet: _ddedit

*Sélection non valable*

Attend un point ou Dernier/TOUT/Groupe

Sélectionnez un objet:

Commande:

 

Une idée ?

Civil 3D 2025 - COVADIS_18.3b

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

Posté(e)

Salut,

Dans une macro (comme dans un script ou une expression LISP (command ...), il faut reproduire tout ce qu'on ferait si on faisait l'opération en ligne de commande.

 

Quand la commande nécessite une intervention de l'utilisateur (pour sélectionner des objets par exemple) la macro doit soit fournir l'information, soit faire une pause pour laisser l'utilisateur le faire (impossible en script).

 

En macro, une pause utilisateur est représentée par un anti-slash (barre oblique inversée)

 

Si la commande n'est pas achevée, la main est rendue à l'utilisateur (pour _ddedit dans cet exemple)

 

Macro

^C^C_explode;\_ddedit;

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

Posté(e)

Re,

 

Je viens de penser qu'une regen serait la bienvenue suite à tout ça car j'ai un champ lié à la modif du texte (_ddedit), donc j'ai rajouté ça =>

 

^C^C_Regenall;_explode;\_ddedit;\\_Regenall

 

Et bien, ça ne marche pas !

Pourtant le double "anti-slash " est censé me sortir de la commande "_ddedit" et enchainé la commande suivante, à savoir "_Regenall", non ?

 

Ligne de commande =>

 

Commande:

Commande: _Regenall

Régénération du modèle.

Commande: _explode

Sélectionnez un objet:

Commande: _ddedit

Sélectionnez une annotation ou [annUler]:

 

J'ai encore bien du mal à comprendre la logique de tout ça,....

 

Merci d'avance,

Civil 3D 2025 - COVADIS_18.3b

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

Posté(e)

En ligne de commande, après avoir sélectionné puis édité ton texte (ou attribut) tu fais quoi ?

Tu valides et tu dois encore faire Echap pour sortir de la commande, par contre, il n'y a qu'une pause (pour sélectionner l'objet).

Et après avoir entré _regenall en ligne de commande, tu valides aussi.

 

^C^C_explode;\_ddedit;\;^C^C_regenall;

 

PS : c'est aussi simple en LISP, mais plus facile pour faire les tests (pas besoin d'ouvrir le CUI à chaque fois).

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

Posté(e)

Re,

 

après avoir sélectionné puis édité ton texte (ou attribut) tu fais quoi ?

 

C'est du texte car un champ récupère ensuite la valeur de ce texte,..

 

Ok !

 

Repartir avec un "^C^C", je ne pensais pas que c'était possible,...

 

 

PS : c'est aussi simple en LISP, mais plus facile pour faire les tests (pas besoin d'ouvrir le CUI à chaque fois).

 

c'est clair que c'est la galère !!!

 

MAIS, je tiens à bien comprendre les macros avant de me lancer dans le lisp,... en plus, ce que je fais actuellement doit être 100% compatible light, alors,...

 

Je te dois bien une explication, mais attention, je suis loin d'avoir finalisé le projet,... =>

 

 

 

Merci encore de ton aide précieuse Gilles,

 

Je reposterai quand au moins un exemple concret sera validé,...

Civil 3D 2025 - COVADIS_18.3b

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

Posté(e)

Bonjour,

 

Dessiner des aciers avec des blocs dynamiques est une idée qui est intéressante. Elle a des avantages (compatible LT ...) mais aussi des inconvénients que je trouve majeurs. C'est pour cela que j'ai abandonné cette idée (sauf pour les treillis soudés et les boites d'attentes).

 

En fait, avec un bloc dynamique, il est quasiment impossible de définir un acier avec un façonnage hors standard. Malheureusement, j'ai besoin de faire très souvent des façonnages un peu "acrobatiques" compte tenu des coffrages qu'on peut rencontrer en ouvrage d'art.

 

Mais pour des ferraillages de poteaux, poutres, semelles de bâtiment ces blocs peuvent correspondre parfaitement aux besoins.

 

On en a déjà parlé et il est évident qu'il y a encore beaucoup de monde qui dessine les armatures "comme à la main". En gros, Autocad remplace le Rotring, c'est tout et c'est bien dommage. Des blocs comme tu les imagines sont donc un progrès considérable pour toute cette population. Et encore, il a des dessinateurs qui sont tellement "réactionnaires" qu'il s te diront que c'est mieux comme ils font, point barre (d'acier bien sûr).

 

Comme tu as pu le constater, personnellement, j'utilise le lisp pour dessiner mes aciers, repères, nomenclatures et récapitulations. Les aciers sont des polylignes qui contiennent des xdatas. Les repères, nomenclatures et récapitulations sont des blocs avec des paramètres. Les inconvénients de ma méthode, c'est qu'il faut connaitre le lisp (la gestion des polylignes 2D n'a presque plus de secret pour moi, la gestion des xdata ...) et que cela n'intéressera pas les LTsiens. L'avantage le plus important du lisp, hormis la possibilité de dessiner des aciers hors standard, est l'automatisation beaucoup plus aboutie de la nomenclature et de la récapitulation. C'est ce qui réduit de beaucoup le temps dans la réalisation des plans d'armatures et c'est ce qui est important en "production".

 

Amicalement

Vincent

 

C'est au pied du mur que l'on reconnaît le maçon ! (Anonyme)

C’est en restant au pied du mur qu’on ne voit que le mur (Anonyme aussi)

Posté(e)

Bonjour à toutes et tous,

 

L'idée de ce "développement" est que l'ensemble soit 100% compatible light. suite à l'interdiction d'utiliser light extender, mon ami qui est gérant d'un BE Béton Armé bâtiment c'est trouvé dans la panade,... Donc, je change complétement d'optique pour son développement. Et effectivement, dans "beaucoup" de BE que je vois du même style, c'est souvent une version pleine pour le reste en light. Et cela peut se comprendre dans bien des cas,...J'ai testé et retesté FerSystem, il est clair que c'est un outil terrible ! Malheuresement, il est rare d'avoir des bureaux qu'avec des versions pleines (et pour les convaincres, c'est pas gagné. Lorsque je présente ton outil (3 boites pour le moment), ils sont tous très emballés mais trouve (à juste titre souvent, on en a déjà parlé) pas forcément adapté aux armatures du bâtiment ainsi que les vues nécessaires,...(souvent une coupe, et puis basta,...). Il est donc très dur, voir impossible de récupérer la valeur du nombre d'acier puisqu'aucune vue correspondante,... a coté de ça, beaucoup moins de dessin, forcément,...

 

Un bon compromis me semble t-il que je suis en train de peaufiner (encore le poids des aciers en état de visibilité,par exemple,...)

 

A ce stade, voilà ce que ça donne =>

 

 

 

Civil 3D 2025 - COVADIS_18.3b

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

  • 2 semaines après...
Posté(e)

Bonsoir à toutes et tous,

 

Je souhaiterai pouvoir répéter x fois (jusqu'à utiliser la touche échap) l'enchainement de ces deux fonctions :

 

 ^C^C_Regenall;_explode;\_ddedit;\;^C^C_regenall

 

Alors, j'ai écrit :

 

 *^C^C_Regenall;_explode;\_ddedit;\;*^C^C_regenall

 

Mais cela ne semble pas fonctionner comme prévu,...

 

Une idée ?

 

Merci d'avance,

Civil 3D 2025 - COVADIS_18.3b

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

Posté(e)

Salut,

 

C'est marqué dans l'aide :

Remarque Ne tapez pas ^C (Annuler) dans une macro commençant par la chaîne *^C^C, car cela annule la répétition.

 

Par ailleurs, _regenall régénère toutes les fenêtres du dessin. Un _regen est peut-être suffisant ?

 

*^C^C_Regen;_explode;\_ddedit;\;_regen;

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

Posté(e)

Re,

 

Salut Gilles,

 

J'ai bien vu cette remarque dans l'aide mais me suis dis que cela ne concernait pas ma macro puisque j'ai un double "^C",...

 

Décidément, j'ai encore un mal de chien à interpréter toutes ces commandes,...

 

Un _regen est peut-être suffisant ?

 

effectivement dans ce cas de figure, oui !

 

Pourquoi "_regenall", plus "gourmand" en ressource ?

 

Merci à nouveau pour ton aide,... ;) ;)

Civil 3D 2025 - COVADIS_18.3b

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

Posté(e)

En macro ^C c'est Echap donc ^C^C c'est 2fois Echap (ce qui peut être nécessaire pour sortir de certaine commandes).

 

Pourquoi "_regenall", plus "gourmand" en ressource ?

Regenall régénère toutes les fenêtre du dessin celle(s) de l'espace objet, mais aussi toutes celles des présentations.

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

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é