rafael7776 Posté(e) le 29 février 2008 Posté(e) le 29 février 2008 Bonjour a tous, Voila j'utilise ce lisp pour calculer mais surfaces : (defun c:SURF () (setvar "cmdecho" 0); (command "aire" "e" pause) (setq pd (getpoint "\n point d'insertion:")) (command "texte" "c" pd "0.5" "0" (strcat "(" (rtos (getvar "AREA") 2 2) ")"))) Je recherche a le rendre meilleurs mais je connais rien en lips je voudrais quand je modifie un objet exemple rectangle que la surface se modifie authenmatiquement. Merci a vous.
(gile) Posté(e) le 29 février 2008 Posté(e) le 29 février 2008 Salut, Si tu veux que ton texte (aire) soit lié à l'objet, le plus simple est d'utiliser les champs. Voici un exemple en LISP, pour modifier le format des champs, tu peux voir le PDF joint avec le LISP pline_block sur cette page. (defun c:surf (/ ent ins) (vl-load-com) (or *acdoc* (setq *acdoc* (vla-get-activeDocument (vlax-get-acad-object))) ) (setq sp (if (= 1 (getvar "CVPORT")) (vla-get-PaperSpace *acdoc*) (vla-get-ModelSpace *acdoc*) ) ) (if (and (setq ent (car (entsel))) (setq ent (vlax-ename->vla-object ent)) (not (vl-catch-all-error-p (vl-catch-all-apply 'vla-get-area (list ent) ) ) ) ) (progn (initget 1) (setq ins (getpoint "\nPoint d'insertion: ")) (vla-addMtext sp (vlax-3d-point (trans ins 1 0)) 0.0 (strcat "% (itoa (vla-get-ObjectID ent)) ">%).Area \\f \"%lu2%pr2\">%" ) ) ) (princ "\nEntité non valide") ) (princ) ) Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
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