cfleury Posté(e) le 25 janvier 2011 Posté(e) le 25 janvier 2011 Bonjour a tous, Je veux insérer un champ dans la catégorie "objets" afin de mettre une étiquette indiquant la surface d'une pièce sur mon plan donc je sélectionne le type d'objet en question -> une Polyligne... et j'indique la propriété que je veux lui attribuer -> Aire.Ensuite après avoir défini le format -> Décimal, je veux personnaliser mon champ en cliquant sur le bouton Format supplémentaire -> voir l'image jointe ci dessous... Mon problème c'est que je dois refaire toute la config pour chaque étiquette que qui ne représente pas un gain de temps surtout vu le nombre de pièces que j'ai à dimensionner. comment copier les propriétés présentes dans la syntaxe Expression de champs:%<\AcObjProp.16.2 Object(%<\_ObjId 2099657048>%) .Area \f "%lu2%pr1%ps[, m²]%ct8[0.0001]">% sachant que la partie en italic correspond à l'objet et que la partie en gras au format supplémentaire. si vous avez un réponse, je suis prenneur par avance merci, et @ bientôt http://img248.imageshack.us/i/champci.jpg/
bryce Posté(e) le 25 janvier 2011 Posté(e) le 25 janvier 2011 Bonjour, Le plus pratique je pense serait d'utiliser un LISP pour automatiser l'opération... Le champ en question est-il inséré dans un texte (multiligne, sur une ligne ?), un attribut de bloc ? Brice, formateur AutoCAD - Inventor - SolidWorks - ZWCad - DraftSight - SketchUp indépendant
rebcao Posté(e) le 25 janvier 2011 Posté(e) le 25 janvier 2011 Bonjour, AH, si seulement la commande CHAMPS était "MACROTABLE" !!!!!!!!!!!!!!!!!!!!!!!! ce serait tellement simple ! et PROPRIETES DU DESSIN par la même occasion !!! Pour la version 2012 Monsieur STODESK !!! Faut pas rêver je pense... Surtout que le Père Noël est passé y a pas longtemps.... 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 @)
cfleury Posté(e) le 25 janvier 2011 Auteur Posté(e) le 25 janvier 2011 oui Brice le champ est un texte multiligne
bryce Posté(e) le 25 janvier 2011 Posté(e) le 25 janvier 2011 Voici un LISP trouvé sur le web : ;;; AreaText.LSP ver 3.0 ;;; Command name is SURF ;;; Select a polyline and where to place the text ;;; Sample result: 2888.89 SQ. FT. ;;; As this is a FIELD it is updated based on the FIELDEVAL ;;; or the settings found in the OPTIONS dialog box ;;; By Jimmy Bergmark ;;; Copyright (C) 2007-2010 JTB World, All Rights Reserved ;;; Website: www.jtbworld.com ;;; E-mail: info@jtbworld.com ;;; 2007-09-05 - First release ;;; 2009-08-02 - Updated to work in both modelspace and paperspace ;;; 2010-10-29 - Updated to work also on 64-bit AutoCAD ;;; Uses TEXTSIZE for the text height (defun Get-ObjectIDx64 (obj / util) (setq util (vla-get-Utility (vla-get-activedocument (vlax-get-acad-object)))) (if (= (type obj) 'ENAME)(setq obj (vlax-ename->vla-object obj))) (if (= (type obj) 'VLA-OBJECT) (if (> (vl-string-search "x64" (getvar "platform")) 0) (vlax-invoke-method util "GetObjectIdString" obj :vlax-False) (rtos (vla-get-objectid obj) 2 0) ) ) ) (defun c:SURF (/ entObject entObjectID InsertionPoint ad) (vl-load-com) (setq entObject (vlax-ename->vla-object(car (entsel))) entObjectID (Get-ObjectIDx64 entObject) InsertionPoint (vlax-3D-Point (getpoint "Select point: ")) ad (vla-get-ActiveDocument (vlax-get-acad-object)) ) (vla-addMText (if (= 1 (vla-get-activespace ad)) (vla-get-modelspace ad) (if (= (vla-get-mspace ad) :vlax-true) (vla-get-modelspace ad) (vla-get-paperspace ad) ) ) InsertionPoint 0.0 (strcat "%<\\AcObjProp Object(%<\\_ObjId " entObjectID ">%).Area \\f \"%pr2%lu2%ct4%qf1 SQ. FT.\">%" )) ) Il suffit de l'adapter un peu pour le formatage que tu souhaites avoir, ce qui donnerait quelque chose comme ça : ;;; AreaText.LSP ver 3.0 ;;; Command name is SURF ;;; Select a polyline and where to place the text ;;; Sample result: 2888.89 SQ. FT. ;;; As this is a FIELD it is updated based on the FIELDEVAL ;;; or the settings found in the OPTIONS dialog box ;;; By Jimmy Bergmark ;;; Copyright (C) 2007-2010 JTB World, All Rights Reserved ;;; Website: www.jtbworld.com ;;; E-mail: info@jtbworld.com ;;; 2007-09-05 - First release ;;; 2009-08-02 - Updated to work in both modelspace and paperspace ;;; 2010-10-29 - Updated to work also on 64-bit AutoCAD ;;; Uses TEXTSIZE for the text height (defun Get-ObjectIDx64 (obj / util) (setq util (vla-get-Utility (vla-get-activedocument (vlax-get-acad-object)))) (if (= (type obj) 'ENAME)(setq obj (vlax-ename->vla-object obj))) (if (= (type obj) 'VLA-OBJECT) (if (> (vl-string-search "x64" (getvar "platform")) 0) (vlax-invoke-method util "GetObjectIdString" obj :vlax-False) (rtos (vla-get-objectid obj) 2 0) ) ) ) (defun c:SURF (/ entObject entObjectID InsertionPoint ad) (vl-load-com) (setq entObject (vlax-ename->vla-object(car (entsel))) entObjectID (Get-ObjectIDx64 entObject) InsertionPoint (vlax-3D-Point (getpoint "Select point: ")) ad (vla-get-ActiveDocument (vlax-get-acad-object)) ) (vla-addMText (if (= 1 (vla-get-activespace ad)) (vla-get-modelspace ad) (if (= (vla-get-mspace ad) :vlax-true) (vla-get-modelspace ad) (vla-get-paperspace ad) ) ) InsertionPoint 0.0 (strcat "%<\\AcObjProp Object(%<\\_ObjId " entObjectID ">%).Area \\f \"%lu2%pr1%ps[, m²]%ct8[0.0001]\">%" )) ) Brice, formateur AutoCAD - Inventor - SolidWorks - ZWCad - DraftSight - SketchUp indépendant
cfleury Posté(e) le 26 janvier 2011 Auteur Posté(e) le 26 janvier 2011 Yesssssss!!! ça fonctionne d'enfer merciiiiiiiiii Brice trop fort ta trouvaille et ta modifexcellent, c'est ça que je voulais... le temps que je vais gagner car je viens de me taper mes 3 niveaux de plan en configurant chaque champ a la main pffff... Génial merci beaucoup Mr Brice, longue vie au forum, ciao a tous [Edité le 26/1/2011 par cfleury]
Messages recommandés
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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant