Aller au contenu

Enregistreur d'action


Messages recommandés

Posté(e)

Bonjour,

je suis nouveau sur le forum, je ne crois pas avoir vu de sujet concernant ce que je recherche donc je me lance.

Voilà, je travaille dans un bureau d'étude spécialisé dans la synthèse technique et nous recevons beaucoup de plan venant d'entreprises diverses.

Chaque fois que je reçois un plan, je fais toutes une série de commande visant à ne garder que le dessin et à le mettre d'une couleur bien précise. Je lui attribue également quelques réglages supplémentaires.

 

Je souhaite automatiser cela via l'enregistreur d'action afin d'insérer un bouton sur mon interface autocad. De ce fait à chaque nouveau plan, en cliquant sur ce bouton toutes les actions que je fais habituellement se feront d'elles-même. Gain de temps assuré.

 

Ma question pour commencer :

Via l'enregistreur d'action, ce qui n'est pas tapé au clavier n'est pas pris en compte, c'est à dire que si j'inclue la modification des unités de dessin dans mes actions automatisées, la macro s'arrête quand la fenêtre "Unité de dessin" s'ouvre et attend que je choisisse mes réglages.

 

J'aimerai faire ce choix en ligne de commande, c'est à dire mettre les unités de dessin en mètre par exemple juste avec une ligne de commande, sans passer par la fenêtre "unité de dessin".

 

Est-ce possible? si oui comment procède-t-on? Le but étant de l'intégrer à une macro. Merci de votre aide précieuse, j'ai essayer certaines choses mais là je bloque.

Posté(e)

Salut

 

Pour automatiser mes tâches, je fais mes propres lisps et je n'ai personnellement (c'est peut-être un tort) jamais utilisé cet outil.

L'avantage du lisp est que l'on peut envisager toutes les solutions possibles et réagir en conséquence, ce qui n'est pas le cas de l'enregistreur d'actions.

On a beau essayer de standardiser les dessins, il y aura toujours un cas qui ne rentre pas dans les cases.

 

@+

Les Lisps de Patrick

Le but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.

Joseph Joubert, 1754-1824

Posté(e)

Salut

 

Pour automatiser mes tâches, je fais mes propres lisps et je n'ai personnellement (c'est peut-être un tort) jamais utilisé cet outil.

L'avantage du lisp est que l'on peut envisager toutes les solutions possibles et réagir en conséquence, ce qui n'est pas le cas de l'enregistreur d'actions.

On a beau essayer de standardiser les dessins, il y aura toujours un cas qui ne rentre pas dans les cases.

 

@+

 

Merci Patrick, j'y avais pensé mais je ne connais pas le langage lisp et... c'est problématique pour ce genre de chose. ;)

Posté(e)

Bonjour Mat BET et bienvenu sur le forum,

 

Tu peux utiliser la commande -UNITS et compléter avec la variable INSUNITS.

 

Olivier

 

 

Merci Olivier, malheureusement cette commande ne me permet que de choisir le format (décimal, scientifique, etc...). Si je veux choisir de travailler en mètre, je ne peux rien modifier avec cette commande... mais je ne la connaissais pas, ça peut toujours être utile.

Posté(e)

Bonjour Mat BET et bienvenu sur le forum,

 

Tu peux utiliser la commande -UNITS et compléter avec la variable INSUNITS.

 

Olivier

 

 

Ha Ok, insunits ça marche, je n'avais pas encore essayer, cool ;)

j'aurai probablement d'autre interrogation dans les prochaines semaines... mais bon je vois que j'obtiens des réponses donc tout va bien :)

Posté(e)

Bonjour à toutes et tous,

 

En lisant bien la réponse de -Olivier- =>

 

Tu peux utiliser la commande -UNITS et compléter avec la variable INSUNITS

 

Dans ton cas (mètre) la variable INSUNITS doit donc prendre la valeur de 6 (Rappel ci dessous)

 

INSUNITS (variable système)

 

Spécifie une valeur d'unités de dessin pour la mise à l'échelle automatique des blocs, images ou Xréfs insérés ou associés à un dessin.

 

Type: Entier

Enregistré dans: Dessin

Valeur initiale : 1 (système anglo-saxon) ou 4(système métrique)

Remarque : Le paramètre UnitésIns est ignoré si vous insérez des blocs annotatifs dans un dessin.

0

Non indiqué (sans unités)

1

Pouces

2

Pieds

3

Miles

4

Millimètres

5

Centimètres

6

Mètres

7

Kilomètres

8

Micropouces

9

Milles

10

Yards

11

Angströms

12

Nanomètres

13

Microns

14

Décimètres

15

Décamètres

16

Hectomètres

17

Gigamètres

18

Unités astronomiques

19

Années lumière

20

Parsecs

Civil 3D 2025 - COVADIS_18.3b

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

Posté(e)

Re-bonjour,

dela même manière, existe-t-il une commande permettant de modifier la couleur de tous les calques? j'espère que je n'en demande pas trop ce coup-ci ;)

 

Merci d'avance.

Posté(e)

Salut,

 

La commande -CALQUE (ou _-LAYER) en ligne de commande (avec le tiret), option COuleur en spécifiant : * (astérisque) pour la liste des calques.

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

Posté(e)

Salut,

 

La commande -CALQUE (ou _-LAYER) en ligne de commande (avec le tiret), option COuleur en spécifiant : * (astérisque) pour la liste des calques.

 

Salut (gile)

merci, je venais juste de le trouver justement. Il faut cela dit le coupler avec _setbylayer pour mettre tout les calques en couleur DuCalque.

 

Merci quand même

Posté(e)

Salut Mat BET,

 

Tu peux poster ce que tu comptes vraiment faire et on t'aideras volontier à comprendre comment faire et donc, tu pourras les créer. Surtout que sur CadXP, il y a des "monstres" de la macro et du LiSP...

Petite précision, la couleur d'un calque n'est jamais "DuCalque"... ;) c'est un pléonasme circulaire de redondance cyclique sur elle-même...

Denis...

Windows 11 / AutoCAD 2024

Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
Davantage d'avantages, avantagent davantage (Bobby Lapointe).
La connaissance s'accroît quand on la partage (Socrate).
Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)

Posté(e)

Salut Mat BET,

 

Tu peux poster ce que tu comptes vraiment faire et on t'aideras volontier à comprendre comment faire et donc, tu pourras les créer. Surtout que sur CadXP, il y a des "monstres" de la macro et du LiSP...

Petite précision, la couleur d'un calque n'est jamais "DuCalque"... ;) c'est un pléonasme circulaire de redondance cyclique sur elle-même...

Denis...

Bonjour DenisH,

en fait pour être clair, je veux automatiser ces actions pour des plans que je reçois de l'extérieur:

- Sélectionner toutes les présentations (peu importe leur nom et leur nombre et les supprimer) >> pas encore résolu

- Mettre les unités de dessin en mètres (peu importe l'échelle générale) >> résolu, ^C^C-units;2; puis ^C^Cinsunits;6;

- Déverrouiller tous les calques >> résolu, ^C^C-calque;D;*;^C

- Mettre tout le dessin avec une couleur unique (ici bleu) >> résolu, ^C^C-calque;CO;U;0,0,255;*;^C

- Tout mettre en DuCalque pour modifier les éventuelles couleurs forcées de la couleur que j'ai choisi >> résolu, ^C^C_setbylayer;tout;;O;O;

- Détacher toutes les xref >> résolu, ^C^C-xref,T,*; (cette commande détache-t-elle uniquement les dwg?)

- et je termine par un JAV

 

Voilà en gros. Je répète souvent ces actions et pour certains plans cela peut vite devenir lassant surtout quand j'en reçois une vingtaine.

 

Bref, le langage lisp, je ne connais pas, par contre ce genre d'automatisation est plus à ma portée, il suffit juste de connaître les commandes autocad et ça fonctionne.

Posté(e)

- Détacher toutes les xref >> résolu, ^C^C-xref,T,*; (cette commande détache-t-elle uniquement les dwg?)

 

 

Après essai, oui. Il n'y a que les dwg qui sont détachés. Les images restent, il faut donc que je trouve comment les détacher également.

Posté(e)

Salut

 

Comme tu utilises JAV, un lisp pour effacer toutes les présentations

(defun c:efo(/ doc)
 (setq doc (vla-get-activedocument (vlax-get-acad-object)))
 (vla-startundomark doc)
 (vlax-for lay (vla-get-layouts doc)
   (vla-delete lay)
 )
 (vla-endundomark doc)
 (princ)
)

 

Ps : Dans jav, tu as une option qui permet de lancer d'autres applications comme le lisp ci-dessus. Cela veut aussi dire que tu peux y inclure tes macros traduites sous forme de lisp

Par exemple :

Mettre les unités de dessin en mètres (peu importe l'échelle générale) >> résolu, ^C^C-units;2; puis ^C^Cinsunits;6;

(setvar "lunits" 2)
(setvar "insunits" 6)

 

Pps : Pour tes images, regarde la commande -image

 

@+

Les Lisps de Patrick

Le but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.

Joseph Joubert, 1754-1824

Posté(e)

Bonjour,

petit souci avec JAV...

dans le procédé que je suis, tout doit apparaître en ligne commande or JAV m'ouvre une fenêtre, interrompt la chaîne dans la macro et attend que je clique "OK", et donc tout ce que je tape derrière n'est pas pris en compte même les ";". Y a-t-il un moyen pour que le ";" à l'intérieur de la macro soit pris en compte?

Quand je le tape en direct en lancant JAV cela fonctionne... je ne comprend pas pourquoi il ne se lance pas.

en gros j'ai écrit ...jav;;; en pensant le premier ; confirme la commande, le deuxième répond OK à la permière fenêtre et le troisième répond OK à la deuxième fenêtre... or là, jav se lance, je clique OK, il se rouvre, je clique OK, il se rouvre (normal, car j'ai ;;; )

 

La je bloque, je ne suis pas sur que je puisse utiliser JAV avec mon procédé... :(

 

Merci de me donner une piste si vous en avez une...

Posté(e)

Bonjour à toutes et tous,

 

Par exemple ne fonctionne pas chez moi,...

 

 

 

Après avec une commande similaire pour l'image ?

 

Bonjour,

sur autocad 2013 ça fonctionne pour Xref et image aussi (merci Patrick_35).

Quelle version d'autocad as-tu?

Posté(e)

Bonjour Mat BET,

Pour JAV, utilise la commande -JAV pour ne pas avoir l'ouverture de la fenêtre.

Dans Autocad, le tiret au début du commande lance la version sans fenêtre lorsqu'elle existe.

 

Olivier

Posté(e)

Bonjour Mat BET,

Pour JAV, utilise la commande -JAV pour ne pas avoir l'ouverture de la fenêtre.

Dans Autocad, le tiret au début du commande lance la version sans fenêtre lorsqu'elle existe.

 

Olivier

 

 

Super, merci beaucoup.

 

Je ne connaissais pas cette subtilité.

Posté(e)

Salut

 

Comme tu utilises JAV, un lisp pour effacer toutes les présentations

(defun c:efo(/ doc)
 (setq doc (vla-get-activedocument (vlax-get-acad-object)))
 (vla-startundomark doc)
 (vlax-for lay (vla-get-layouts doc)
   (vla-delete lay)
 )
 (vla-endundomark doc)
 (princ)
)

 

 

 

Re-

petit problème lors de l'éxecution du lisp pour suppression des présentation, autocad me renvoie l'information "; erreur: Erreur Automation La présentation à supprimer se trouve dans l'espace objet"

Une présentation dans l'espace objet? y a t-t-il une solution?

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é