Aller au contenu

TotalArea.lsp sous LT


pointpower

Messages recommandés

Bonjour,

 

On voit bien qu'après la cd _.area les valeurs Aire et Périmètre s'affichent, mais userr1 prend la dernière qui est périmètre, et là franchement je ne sais pas aller plus loin

 

$(getvar,perimeter) permet de récupérer la valeur de la variable PERIMETER.

Pour la surface, c'est la variable AREA qui nous intéresse.

La macro devient donc:

 

*^C^C_.area;_object;\userr1;$M=$(+,$(getvar,userr1),$(getvar,area));_.text;;$(rtos,$(getvar,area),2,2);

 

;)

Lien vers le commentaire
Partager sur d’autres sites

  • Réponses 59
  • Créé
  • Dernière réponse

Meilleurs contributeurs dans ce sujet

Meilleurs contributeurs dans ce sujet

Images postées

Re,

 

Oui merci bryce ça donne bien l'aire, le petit hic c'est quand on sélectionne des objets, il met l'aire un par par des objets (donc il les écrits en texte) et à la fin il fait la somme. Peut-on s'affranchir de ce désagrément...?

 

Et pour la macro 2bis ça ne fonctionne plus comme avant (je clique sur un objet, je choisi total je clike sur un autre objet et là quand je clique sur la macro3 y'a rien qui se passe...

 

 

Voici mes macro:

 

Macro1:

^C^C_.userr1;0.0;_.text;_justify;_right;\\0.0;Récapitulat if;^Z

Macro2:

*^C^C_.area;_object;\userr1;$M=$(+,$(getvar,userr1),$(getvar,area));_.text;;$(rtos,$(getvar,area),2,2);

Macro2Bis:

*^C^C_lengthen;\;userr1;$M=$(+,$(getvar,userr1),$(getvar,perimeter));_.text;;$(rtos,$(getvar,perimeter),2,2);

Macro3:

^C^C$M=$(if,$(!=,$(getvar,userr1),0.0),_.text;;Total=$(rtos,$(getvar,userr1),2,2);)^Z

 

Svp quelqu'un peut-il les essayer et me dire si tout est ok?...

 

 

Merci

Lien vers le commentaire
Partager sur d’autres sites

Re,

 

Ok super pour l'aire ça marche bien mais pour la longueur il me dit quand je sélectionne mes objets, impossible de modifier la longueur des objets et pourtant je choisis l'option total.

 

Pour l'aire, je sais pas trop comment faire pour éviter de mettre à chaque fois les aires mais avoir seulement le total (dsl je ne programme pas...)

 

Merci.

Lien vers le commentaire
Partager sur d’autres sites

Bonsoir,

 

Si tu parcours le sujet sur les surfaces tu as une Barres d'outils (un ZIP) à charger où la MACRO fonctionne...

 

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

Lien vers le commentaire
Partager sur d’autres sites

Pour l'aire, je sais pas trop comment faire pour éviter de mettre à chaque fois les aires mais avoir seulement le total (dsl je ne programme pas...)

 

*^C^C_.area;_object;\userr1;$M=$(+,$(getvar,userr1),$(getvar,area));modemacro;Cumul surfaces = "$M=$(rtos,$(getvar,userr1),2,2)";

post-8101-0-86709100-1319646943_thumb.png

Lien vers le commentaire
Partager sur d’autres sites

Salut,

si tu regarde bien le lien que j'ai donné vers l'autre sujet, et plus particulièrement ici, il y a 2 macros différentes pour les longueurs.

- Une pour les objets fermés

- Et une pour les objets non fermés

Ici sur le sujet que tu as initié, une macro supplémentaire pour les surfaces a été créé, attention donc de ne pas mélanger.

Maintenant si tu veux une macro qui fasse directement le cumul des longueurs il va falloir passer commande ;) ou t'inspirer de ce qu'a fait Bryce pour l'aire

 

A propos de l'aire, si c'est pour ne pas inscrire le récapitulatif mais seulement le texte du cumul de toutes les surfaces pourquoi ne pas utiliser tout simplement la commande AIRE avec l'option Addition ?

Ensuite F2 et copier le résultat.

Modifié par FormaBois

Studio Gfilm - Agence de communication par l'image

 

"Le matin tu peux rester couché pour poursuivre ton rêve, ou te lever pour le réaliser"

Lien vers le commentaire
Partager sur d’autres sites

Merci Bryce, ça fonctionne nickel pour l'aire, mais pourquoi ça marche pas de la même manière pour les longueurs?

Là comme ça, je ne saurais dire...

Il faudrait que tu sois plus précis:

- quelle est la macro qui pose problème ?

- quel est le problème exactement (tu peux appuyer sur F2 et copier-coller le contenu de la fenêtre de texte, ça nous aidera) ?

- le problème se pose avec tous types d'objets ? avec certains objets seulement ?

Lien vers le commentaire
Partager sur d’autres sites

Re,

 

En fait c'est cette macro qui pose un souci:

 

Macro2Bis:

*^C^C_lengthen;\;userr1;$M=$(+,$(getvar,userr1),$(getvar,perimeter));_.text;;$(rtos,$(getvar,perimeter),2,2);

 

Je procède de la même manière pour l'aire ou pour les longueurs, à savoir je clike sur macro1 puis macro2 (je choisis mes objets) et ensuite macro3, ça c'est pour l'aire.

 

Pour les longueurs, je fais macro1 puis 2bis je choisis mes objets (je fais un essai avec deux rectangles donc des polylignes) et là j'ai un message qui me dit que les objets ne peuvent être modifiés... je clike quand même sur la macro 3 et la j'ai pas le total).

Je vais essayer de reprendre la macro que tu m'as envoyé.

 

Merci

 

A+

Lien vers le commentaire
Partager sur d’autres sites

Essaie avec celle-ci :

 

*^C^C_lengthen;\;userr1;$M=$(+,$(getvar,userr1),$(getvar,perimeter));modemacro;Cumul longueurs = "$M=$(rtos,$(getvar,userr1),2,2)";

 

Même principe que pour la surface, le cumul de longueurs doit s'afficher dans la barre d'état en bas à gauche.

S'il y a toujours un souci, appuie sur F2, fais un copier-coller du contenu de la fenêtre de texte et poste-le ici.

Lien vers le commentaire
Partager sur d’autres sites

Bryce,

je m'excuse de m'immiscer dans votre dialogue, ... j'ai remis MODEMACRO à zéro, mais quand on fait un nouveau cumul de longueur il reprend le total précédent.

Comment repartir pour un nouveau total ?

Studio Gfilm - Agence de communication par l'image

 

"Le matin tu peux rester couché pour poursuivre ton rêve, ou te lever pour le réaliser"

Lien vers le commentaire
Partager sur d’autres sites

Le plus fort c'est que j'ai tout de suite pensé à ça mais entre les userri userr je n'ai pas essayé le userr1. Une copie de l'aide que j'aurais du aller voir avant :unsure:

 

Permet le stockage et la récupération des valeurs entières.

Il existe cinq variables système : USERR1, USERR2, USERR3, USERR4 et USERR5.

Et encore je crois que LT ne les reconnaient pas toutes

Merci Bryce

Studio Gfilm - Agence de communication par l'image

 

"Le matin tu peux rester couché pour poursuivre ton rêve, ou te lever pour le réaliser"

Lien vers le commentaire
Partager sur d’autres sites

LT reconnaît les variables suivantes:

USERR1, USERR2, USERR3, USERR4 et USERR5 (qui servent à stocker des nombres réels)

USERI1, USERI2, USERI3, USERI4 et USERI5 (qui servent à stocker des nombres entiers)

 

Sur une version complète, il existe aussi

USERS1, USERS2, USERS3, USERS4 et USERS5 (qui servent à stocker des chaînes de caractères).

Lien vers le commentaire
Partager sur d’autres sites

C'est normal, puisque ces deux commandes n'ont pas les mêmes options.

Tu ne peux pas simplement substituer une commande à une autre dans cette macro. ;)

 

J'ai posté une macro pour les longueurs hier:

http://cadxp.com/index.php?/topic/33277-totalarealsp-sous-lt/page__view__findpost__p__180291

L'as-tu essayée ?

Lien vers le commentaire
Partager sur d’autres sites

*^C^C_lengthen;\;userr1;$M=$(+,$(getvar,userr1),$(getvar,perimeter));modemacro;Cumul longueurs = "$M=$(rtos,$(getvar,userr1),2,2)";

 

S'il y a toujours un souci, appuie sur F2, fais un copier-coller du contenu de la fenêtre de texte et poste-le ici.

 

_object n'apparaît pas dans cette macro, mais dans celle pour les surfaces.

Ce n'est pas une variable, c'est une option de la commande AREA.

Je ne comprends pas ce que tu fais...

Si la macro ci-dessus ne fonctionne pas (je ne vois pas de raison), fais un copier-coller du contenu de la fenêtre de texte et poste-le ici.

Lien vers le commentaire
Partager sur d’autres sites

Ok, mais il sort d'où ce TO ? il n'est présent dans aucune des macros postées ici... :unsure:

 

Si c'est toi qui l'a tapé, je crois qu'il y a confusion...

L'option TOtal de la commande _LENGTHEN (MODIFLONG) ne sert pas à faire un cumul de longueurs, mais à lui dire qu'on veut modifier la longueur de l'objet sélectionné en entrant sa nouvelle longueur totale (ex: passer de 112.56 à 120).

Tu devrais appuyer sur F1 de temps en temps, on y apprend des choses... ;)

Lien vers le commentaire
Partager sur d’autres sites

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é