jalna Posté(e) le 5 février 2009 Partager Posté(e) le 5 février 2009 Bonjour, Suite à mon messagej'aimerais savoir si le lisp de Philphil fonctionne chez vous! Merci ; ------------------------------------------------------- ; MODIFICATION DE L EMPLACEMENT DU TEXTE DE COTE A DROITE ; ------------------------------------------------------- (defun C:CD () (setvar "cmdecho" 0) (setq OSM (getvar "osmode")) (setq DECATEXTECOTE (atof (getcfg "APPDATA/DECATEXTECOTE"))) (setq TMP (getdist (strcat "\nENTRER LE DECALAGE DE TEXTE DE COTE <" (rtos DECATEXTECOTE 2 8) ">: "))) (if TMP (setq DECATEXTECOTE TMP) ) (setvar "osmode" 0) (prompt "\nCLIQUER SUR LE(S) COTE(S) A MODIFIER :") (setq ENTX NIL) (while (null ENTX) (setq ENTX (ssget (list (cons -4 ""))))) (setq COMPT 0) (setq COM (sslength ENTX)) (while (< COMPT COM) (progn (setq SJ2 (entget (ssname ENTX COMPT))) (setq POINT10 (cdr (assoc 10 SJ2)) POINT13 (cdr (assoc 13 SJ2)) POINT14 (cdr (assoc 14 SJ2)) ANGCOTE (cdr (assoc 50 SJ2)) LONGCOTE (cdr (assoc 42 SJ2)) CODEMPLA (cdr (assoc 70 SJ2)) ) (command "scu" "z" POINT10 (polar POINT10 ANGCOTE 10)) (if (> (car (trans POINT13 0 1)) (car (trans POINT10 0 1))) (progn (setq DIST (+ LONGCOTE DECATEXTECOTE))) (progn (setq DIST DECATEXTECOTE)) ) (command "scu" "p") ) (if (or (= CODEMPLA 33) (= CODEMPLA 161)) (progn (setq ANGLECOTE2 (angle POINT13 POINT14)) (setq POINT11 (polar POINT10 ANGLECOTE2 DIST)) (setq SJ2 (subst (cons 70 160) (assoc 70 SJ2) SJ2)) (entmod SJ2) (setq SJ2 (subst (cons 11 POINT11) (assoc 11 SJ2) SJ2)) (entmod SJ2) ) ) (if (or (= CODEMPLA 32) (= CODEMPLA 160)) (progn (setq POINT11 (polar POINT10 ANGCOTE DIST)) (setq SJ2 (subst (cons 70 160) (assoc 70 SJ2) SJ2)) (entmod SJ2) (setq SJ2 (subst (cons 11 POINT11) (assoc 11 SJ2) SJ2)) (entmod SJ2) ) ) (entmod SJ2) (setq COMPT (1+ COMPT)) ) (setvar "osmode" OSM) (setcfg "APPDATA/DECATEXTECOTE" (rtos DECATEXTECOTE 2 8)) (princ) ) ; ------------------------------------------------------- ; MODIFICATION DE L EMPLACEMENT DU TEXTE DE COTE A GAUCHE ; ------------------------------------------------------- (defun C:CG () (setvar "cmdecho" 0) (setq OSM (getvar "osmode")) (setq DECATEXTECOTE (atof (getcfg "APPDATA/DECATEXTECOTE"))) (setq TMP (getdist (strcat "\nENTRER LE DECALAGE DE TEXTE DE COTE <" (rtos DECATEXTECOTE 2 8) ">: "))) (if TMP (setq DECATEXTECOTE TMP) ) (setvar "osmode" 0) (prompt "\nCLIQUER SUR LE(S) COTE(S) A MODIFIER :") (setq ENTX NIL) (while (null ENTX) (setq ENTX (ssget (list (cons -4 ""))))) (setq COMPT 0) (setq COM (sslength ENTX)) (while (< COMPT COM) (progn (setq SJ2 (entget (ssname ENTX COMPT))) (setq POINT10 (cdr (assoc 10 SJ2)) POINT13 (cdr (assoc 13 SJ2)) POINT14 (cdr (assoc 14 SJ2)) ANGCOTE (cdr (assoc 50 SJ2)) LONGCOTE (cdr (assoc 42 SJ2)) CODEMPLA (cdr (assoc 70 SJ2)) ) (command "scu" "z" POINT10 (polar POINT10 ANGCOTE 10)) (if (> (car (trans POINT13 0 1)) (car (trans POINT10 0 1))) (progn (setq DIST DECATEXTECOTE)) (progn (setq DIST (+ LONGCOTE DECATEXTECOTE))) ) (command "scu" "p") ) (if (or (= CODEMPLA 33) (= CODEMPLA 161)) (progn (setq ANGLECOTE2 (angle POINT13 POINT14)) (setq POINT11 (polar POINT10 ANGLECOTE2 (- DIST))) (setq SJ2 (subst (cons 70 160) (assoc 70 SJ2) SJ2)) (entmod SJ2) (setq SJ2 (subst (cons 11 POINT11) (assoc 11 SJ2) SJ2)) (entmod SJ2) ) ) (if (or (= CODEMPLA 32) (= CODEMPLA 160)) (progn (setq POINT11 (polar POINT10 ANGCOTE (- DIST))) (setq SJ2 (subst (cons 70 160) (assoc 70 SJ2) SJ2)) (entmod SJ2) (setq SJ2 (subst (cons 11 POINT11) (assoc 11 SJ2) SJ2)) (entmod SJ2) ) ) (entmod SJ2) (setq COMPT (1+ COMPT)) ) (setvar "osmode" OSM) (setcfg "APPDATA/DECATEXTECOTE" (rtos DECATEXTECOTE 2 8)) (princ) ) "Je suis fasciné par l'air. Si on enlevait l'air du ciel, tous les oiseaux tomberaient par terre... Et les avions aussi... En même temps l'air tu peux pas le toucher... Ca existe et ça existe pas... Ca nourrit l'homme sans qu'il ait faim... It's magic ! L'air c'est beau en même temps tu peux pas le voir, c'est doux et tu peux pas le toucher... L'air, c'est un peu comme mon cerveau..."J-C Van DammeMon forum : http://plexus.forumactif.org/ Lien vers le commentaire Partager sur d’autres sites More sharing options...
(gile) Posté(e) le 5 février 2009 Partager Posté(e) le 5 février 2009 Salut, L'erreur est (encore) due au problème de formatage des codes dans CADxp : le caractère "Voir ce sujet Tu peux remplacer, dans les 2 LISP, la ligne : (while (null ENTX) (setq ENTX (ssget (list (cons -4 ""))))) par :(while (null ENTX) (setq ENTX (ssget '((0 . "DIMENSION"))))) Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD Lien vers le commentaire Partager sur d’autres sites More sharing options...
jalna Posté(e) le 5 février 2009 Auteur Partager Posté(e) le 5 février 2009 Salut Gile et un grand merci! Ton souhait sera peut être exhaussé un jour et je le souhaite Donc essai du lisp ça fonctionne, mais le problème c'est qu'il me déplace la cote tout en la descendant sur l'axe des Y, alors qu'il faudrait seulement la déplacer sur l'axe des X!!Dommage, car très pratique sinon, il y aurait il un moyen de résoudre ce petit soucis?? "Je suis fasciné par l'air. Si on enlevait l'air du ciel, tous les oiseaux tomberaient par terre... Et les avions aussi... En même temps l'air tu peux pas le toucher... Ca existe et ça existe pas... Ca nourrit l'homme sans qu'il ait faim... It's magic ! L'air c'est beau en même temps tu peux pas le voir, c'est doux et tu peux pas le toucher... L'air, c'est un peu comme mon cerveau..."J-C Van DammeMon forum : http://plexus.forumactif.org/ Lien vers le commentaire Partager sur d’autres sites More sharing options...
jalna Posté(e) le 5 février 2009 Auteur Partager Posté(e) le 5 février 2009 De plus, il m'enlève tout mes accrochages objets prédéfinis!!! "Je suis fasciné par l'air. Si on enlevait l'air du ciel, tous les oiseaux tomberaient par terre... Et les avions aussi... En même temps l'air tu peux pas le toucher... Ca existe et ça existe pas... Ca nourrit l'homme sans qu'il ait faim... It's magic ! L'air c'est beau en même temps tu peux pas le voir, c'est doux et tu peux pas le toucher... L'air, c'est un peu comme mon cerveau..."J-C Van DammeMon forum : http://plexus.forumactif.org/ Lien vers le commentaire Partager sur d’autres sites More sharing options...
PHILPHIL Posté(e) le 5 février 2009 Partager Posté(e) le 5 février 2009 hello j'ai modifie le code dans le message originalenfin presque y'a une tite manip a faire sinon le decalage sur Y est du justement au fait que dans les propriétés des cotesdéplacement du texte tu dois avoir tes cotes avec "conserver la ligne de cote avec le texte"ou inversement j'ai pas trouver la solution en LISP pour forcer une ou l'autre des ses options pour regler le probleme une fois pour toute a+ phil [Edité le 5/2/2009 par PHILPHIL] FREELANCE Autodesk Architecture 2025 sous windows 11 64 REVIT 24 pouces vertical + 30 pouces horizontal + 27 pouces horizontal Lien vers le commentaire Partager sur d’autres sites More sharing options...
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