Aller au contenu

Calcul entre attributs dans bloc


sepacap

Messages recommandés

Bonsoir,

 

Oui bien sur, inspire toi de ma réponse dans ce post, http://cadxp.com/index.php?/topic/37582-bloc-avec-champ-de-position/page__view__findpost__p__206932, si après tu as toujours un soucis poste ton bloc avec les attributs que tu souhaite additionner.

 

Personnellement je me sers de cette méthode pour calculer la hauteur de mes poteaux,et les compter en extrayant ces données dans des tableaux de nomenclature, poteaux dans lesquels sont renseignés le niveaux inférieure et le niveaux supérieur en vue en plan dans des attributs.

 

A+

Apprendre => Prendre => Rendre

Lien vers le commentaire
Partager sur d’autres sites

merci mais le truc c'est que je ne comprends pas comment VDH-Bruno fait "il faut écrire ta formule dans la référence de bloc plutôt que dans sa définition, puis recopier cette référence qui se mettra à jour en fonction des valeurs d’attributs P & TN"

 

 

voila si l'un de vous deux peut m'expliquer merci

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

merci mais le truc c'est que je ne comprends pas comment VDH-Bruno fait "il faut écrire ta formule dans la référence de bloc plutôt que dans sa définition, puis recopier cette référence qui se mettra à jour en fonction des valeurs d’attributs P & TN"

voila si l'un de vous deux peut m'expliquer merci

 

Tout d’abord quand je parle de référence de bloc, je désigne l’entité graphique qui est insérer (_insert) dans ton dessin et quand je parle de définition de bloc, je parle du bloc tel qu’il est définie et enregistrer (_block) dans la table des bloc, à ce sujet si ce n’est déjà fait je t’invite à lire ce très bon sujet Blocs et imbrications d’un de mes auteurs préférés sur ce forum..

 

Maintenant ce que j’ai voulu dire dans mon post précédent, c’est qu’une fois le bloc etiquette inséré et renseigné dans ton dessin, tu édite l’attribut FE dans valeur:

Tu fais insérer un champ puis tu choisie Objet et clique ta référence de bloc dans ses propriétés tu choisie TN et dans expression de champ tu devrais voir inscrit quelque chose du type :

%<\AcObjProp Object(%<\_ObjId 2115027656>%).TextString>%

Que tu copie (Ctrl+C) colle dans un fichier texte (cette expression barbare fait référence à la valeur contenue dans ton attribut TN)

 

Puis tu recommence la même opération en choisissant cette fois la propriété P de la référence de bloc pour obtenir une autre expression du type :

%<\AcObjProp Object(%<\_ObjId 2115027664>%).TextString>%

 

Maintenant dans Noms de champs tu choisie Formule et dans la zone formule tu copie ta première expression moins ta deuxième, tu cliques sur le bouton Evaluer, tu verra apparaitre une expression de champs du type :

%<\AcExpr (%<\_FldPtr 2115297776>% - %<\_FldPtr 2115297840>%) \f "%lu2%pr2">%

Il ne te reste plus qu’à spécifié le Formats: , la Précision: et de cliquer sur Ok

 

Nota: Travaillant sous une version antérieur à la tienne, il se peut que quelques dénominations ont changer d’appellation, mais cela ne devrait pas te bloquer.

 

Cordialement

Apprendre => Prendre => Rendre

Lien vers le commentaire
Partager sur d’autres sites

  • 2 mois après...

Merci pour cette explication, ca fonctionne royalement!

 

Par contre, il semble impératif d'effectuer la manipulation une fois le bloc inséré dans le plan.

 

J'ai essayé en mode édition de bloc afin de définir l'équation dans mon bloc mais cela ne semble pas fonctionner :(

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

 

Merci pour cette explication, ça fonctionne royalement!

Pour cette explication j’avais donné la version longue, pour faire simple (éviter les Ctrl+C et Ctrl+V) et intuitif, dans la zone d’édition du champ formule, tu peux également faire un clic Bouton-Droit et choisir -> insérer un champ pour sélectionner l’objet et la propriété qui t’intéresse dans ton calcul.

 

 

Par contre, il semble impératif d'effectuer la manipulation une fois le bloc inséré dans le plan.

 

J'ai essayé en mode édition de bloc afin de définir l'équation dans mon bloc mais cela ne semble pas fonctionner

Non cela ne fonctionne car dans la valeur prédéfinie de ta définition d’attribut, tu référence les valeurs prédéfinie des définitions d’attribut utilisé dans ton champ formule. Et même en cochant Afficher la valeur de référence, pour AutoCAD 2007 (je ne pense pas que cela ait changé depuis) ce n’est pas la même chose que de définir ta formule dans une référence d’attribut.

 

 

A+ Bruno

(Ps : A l’occasion n'hésite pas à lire ou relire Blocs et imbrications sur le forum)

Apprendre => Prendre => Rendre

Lien vers le commentaire
Partager sur d’autres sites

  • 1 an après...

Bonjour!

 

Je déterre un vieux sujet mais j'utilise toujours cette astuce bien smpathique et je me pose une question.

 

Le calcul de la formule ne s'effectue pas automatiquement si on change une valeur, il faut selectionner la formule et demander la mise à jour manuellement.

 

Y-a-t-il un moyen d'automatiser l'actualisation de la formule?

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

 

Le calcul de la formule ne s'effectue pas automatiquement si on change une valeur, il faut selectionner la formule et demander la mise à jour manuellement.

Y-a-t-il un moyen d'automatiser l'actualisation de la formule?

La limite est imposé par l'actualisation de la mise à jour de ton champ, géré par la variable système FIEDEVAL,

 

Pour mettre à jour les fichiers automatiquement

1. Sur la ligne de commande, entrez fieldeval.

2. Entrez un code d'octets représentant la somme des valeurs suivantes :

 0 : Non mis à jour

 1 : Mis à jour à l'ouverture

 2 : Mis à jour à l'enregistrement

 4 : Mis à jour au tracé

 8: Mis à jour à l'utilisation de ETRANSMIT

 16 : Mis à jour à la régénération

 

Maintenant pour une actualisation automatique à l'édition de tes attributs, je crains que tu ne puisse échapper à de la programmation..

 

A+

Apprendre => Prendre => Rendre

Lien vers le commentaire
Partager sur d’autres sites

La regen, (rires forts) c'est tellement simple que je me sent un peu honteux de ne pas y avoir pensé :unsure:

 

Je testerai également ce qui me correspond le mieux avec la variable FIEDEVAL mais la regen manuelle à lancer ne reste pas un problème en soit, tant que l'actualisation se fait.

 

Un grand merci à tous en tout cas, toujours aussi agréable d'avoir des bons conseils aussi rapidement :)

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é