Sujet: MACRO EXPLOSE + _DDETIT


lili2006 - 14/1/2010 à 18:28

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 =>

citation extraite du message original:
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 ?


(gile) - 14/1/2010 à 18:54

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;


lili2006 - 14/1/2010 à 19:15

Re,

Oui !

Merci gilles,

J'ai testé à taton différents trucs dans ce genre là, jusqu'à tomber (par hasard,..) sur cette parade,...

Je vais faire un tour dans l'aide,...

Merci encore,


lili2006 - 14/1/2010 à 21:25

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 =>

citation extraite du message original:
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,


(gile) - 14/1/2010 à 21:49

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).


lili2006 - 14/1/2010 à 22:08

Re,

citation extraite du message original:
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,...


citation extraite du message original:
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é,...


zebulon_ - 15/1/2010 à 15:15

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


lili2006 - 15/1/2010 à 15:32

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 =>




lili2006 - 23/1/2010 à 17:17

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,


(gile) - 23/1/2010 à 18:03

Salut,

C'est marqué dans l'aide :
citation extraite du message original:
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;


lili2006 - 23/1/2010 à 18:27

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,...

citation extraite du message original:
Un _regen est peut-être suffisant ?



effectivement dans ce cas de figure, oui !

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

Merci à nouveau pour ton aide,...


(gile) - 23/1/2010 à 19:49

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

citation extraite du message original:
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.


lili2006 - 23/1/2010 à 19:56

Re,

Ok !

Merci encore Gilles,

C'est nickel pour moi !


Cette page provient du forum de: CADxp
http://cadxp.cadmag.info/

Dont l'URL est:
http://cadxp.cadmag.info//modules.php?op=modload&name=XForum&file=viewthread&fid=141&tid=26465