-
Compteur de contenus
4 029 -
Inscription
-
Dernière visite
-
Jours gagnés
21
Type de contenu
Profils
Forums
Calendrier
Blogs
Tout ce qui a été posté par DenisHen
-
[Résolu] Comment changer le style de texte d'un texte ?
DenisHen a répondu à un(e) sujet de DenisHen dans Débuter en LISP
J'ai commencé à écrire ça : ;;;**************************************************************** ;;;Changement du style de texte des textes et MTextes en ARIAL***** (if (setq Select (ssget "_X" (list (cons 0 "TEXT,MTEXT"))) ) ;_ Fin de setq (while Select (entmod (subst (cons 7 "ARIAL") (assoc 62 a) a))) ) ;_ Fin de if Mais je n'ose même pas le lancer... :huh: -
[Résolu] Comment changer le style de texte d'un texte ?
DenisHen a répondu à un(e) sujet de DenisHen dans Débuter en LISP
Merci nosset de ton aide. On ne peut pas dire que je "sais" programmer en lisp, mais j'arrive à faire certain truc. Pour le ssget, pas de problème, mais c'est pour le entmod que je vais ramer... Enfin, je vais fouiller dans l'aide pour voir s'il y a des truc qui m'aideraient... Merci encore. -
[Résolu] Comment changer le style de texte d'un texte ?
DenisHen a posté un sujet dans Débuter en LISP
Bonjour à la communauté. Voilà, j'ai un petit problème que je n'arrive pas à résoudre. En fait, je ne sais pas par où commencer. J'aimerai changer le style de texte (ex:MONOTXT) et de hauteur (ex:0.4) de plusieurs entités par un autre style qui existe déjà dans mon dwg (ex:Arial) avec une autre hauteur de (ex:0.6). Si quelqu'un a une astuce, un conseil ou une idée, je suis preneur... Denis... -
Nuage de points - Format du fichier importé
DenisHen a répondu à un(e) sujet de OverSeaS dans AutoCAD 2011
Avec des points en XYZ ou des points en XY avec le Z écrit à coté ? Sur LT... Ça va être coton... Et je rejoins Fundream, de la 3D sur LT ? Et ces points représentes quoi ? Un maillage ? Des polylignes ? un terrain naturel ? -
[Résolu] Comment savoir si un fichier existe ?
DenisHen a répondu à un(e) sujet de DenisHen dans Débuter en LISP
Salut, Merci (gile)... -
Bonjour à la communauté. Voilà, je travail sur une suite de plusieurs chartes graphiques construites dans un tableau Excel... Depuis ce dernier, je créé des fichiers ASCII pour un "import/création" dans AutoCAD via un petit LISP. Mon problème est de savoir si un fichier existe avant de l'ouvrir depuis ce LISP. Existe-t-il un équivalent à "FileExist" (de VB) ou un truc dans ce genre que je pourrais placer dans mon LISP ? Si quelqu'un a une astuce, un conseil ou une idée, je suis preneur. Denis...
-
Mille mercis à toi (gile)... Et aussi pour tout ce que tu fais pour nous... En particulier et en général... Denis...
-
Bonjour (gile) et merci de ton attention. Voici le fichier qui pose problème... Denis...
-
Bonjour à tous. Voilà, j'ai un petit souci avec la super commande RPurge, que j'utilise tous les jours... Mais aujourd'hui, petit problème sur un dessin client. J'ai fais un controle du dessin et pas d'erreurs détectées... Je remonte donc au grand (gile) cette information au cas où ça l'intéresserait. Tout est dans l'image... Denis...
-
Gestionnaire de la communauté francophone Autodesk
DenisHen a répondu à un sujet dans CAO, généralités
Bonjour Patrick... Et félicitations... -
Bonjour à la communauté. Voilà, j'ai écris, il y a quelques temps, un petit bout de code dont je me sers tout le temps. Je me dis aujourd'hui : Ben pourquoi tu ne l'as jamais partagé ? Je corrige donc cet oubli... Ce code enregistre dans le dessin une échelle saisie. Pas celle de Covadis ou autre, mais bien une échelle qui me sert lorsque j'écris un texte ou insert un bloc... Le voici : (setq ech (vlax-ldata-get "DenisH" "Ech")) (if ech (princ (strcat "\t\tEchelle : 1/" (rtos ech 2 0))) (progn (setq ech (getreal "\t\tÉchelle du dessin 1/")) (vlax-ldata-put "DenisH" "Ech" ech) ) ;_ Fin de progn ) ;_ Fin:if Lorsque je lance un Lisp qui écrit un texte, ou qui insert un bloc, je place ce code en début de Lisp... J'utilise ensuite l'échelle stockée pour définir la taille de ce texte, ou l'échelle d'insertion d'un bloc... J'ai aussi cette commande qui demande de saisir l'échelle. Pratique lorsqu'on veut la changer : (defun c:ChangEchelle (/ ech) (setq ech (vlax-ldata-get "DenisH" "Ech")) (if ech (princ (strcat "\n\tÉchelle : 1/" (rtos ech 2 0))) ) ;_ Fin de if (setq ech (getreal "\tÉchelle du dessin 1/")) (if (= ech "") (princ "\nÉchelle inchangée...") (vlax-ldata-put "DenisH" "Ech" ech) ) ;_ Fin de if (princ) ) ;_ Fin de defun Voilà, j'espère que ça profitera à d'autre... Denis...
-
[Résolu] Peut-on utiliser EDIT_BLOC en mode ligne de commande.
DenisHen a répondu à un(e) sujet de DenisHen dans Routines LISP
Merci zza427, c'est exactement ce que je cherchais.... -
[Résolu] Peut-on utiliser EDIT_BLOC en mode ligne de commande.
DenisHen a répondu à un(e) sujet de DenisHen dans Routines LISP
De plus, je suis sûre que ça se joue la-dedans : ;; Modification des propriétés des entités composant le bloc (defun edit_prop (ent / acc) (if lay-p (vla-put-Layer ent (nth lay l_lst)) ) (if col-p (if (< (atoi (substr (getvar "ACADVER") 1 2)) 16) (vla-put-Color ent (cdar col)) (progn (setq acc (vla-getInterfaceObject (vlax-get-acad-object) (strcat "AutoCAD.AcCmColor." (substr (getvar "acadver") 1 2) ) ) ) (cond ((assoc 430 col) (vla-setNames acc (substr cnm (+ 2 (vl-string-position 36 cnm))) (substr cnm 1 (vl-string-position 36 cnm)) ) (vla-setRGB acc (lsh rgb -16) (lsh (lsh rgb 16) -24) (lsh (lsh rgb 24) -24) ) ) ((assoc 420 col) (vla-setRGB acc (lsh rgb -16) (lsh (lsh rgb 16) -24) (lsh (lsh rgb 24) -24) ) ) (T (vla-put-ColorIndex acc ind) ) ) (vla-put-TrueColor ent acc) ) ) ) (if tl-p (vla-put-LineType ent (nth tl (subst "ByLayer" "DuCalque" (subst "ByBlock" "DuBloc" lt_lst) ) ) ) ) (if el-p (vla-put-LineWeight ent (nth el '(-1 -2 -3 0 5 9 13 15 18 20 25 30 35 40 45 50 53 60 70 80 90 100 106 120 140 158 200 211 ) ) ) ) (if plt (if (= 1 plt_n) (vla-put-PlotStyleName ent "ByBlock") (vla-put-PlotStyleName ent "ByLayer") ) ) ) En faisant un ssget au début et en laissant tomber les couleurs RGB et les épaisseurs de lignes, ça devrait pouvoir se raccourcir... Je cherche mais je nage là ou je n'ai pas pied... -
[Résolu] Peut-on utiliser EDIT_BLOC en mode ligne de commande.
DenisHen a posté un sujet dans Routines LISP
Bonjour à la communauté. Je pense que tout est dans le titre, peut-on utiliser EDIT_BLOC de (gile) en ligne de commande ? Car j'ai un souci, j'ai des blocs qui ne sont ni définis dans le calque 0 ni dans la couleur du calque. Ces blocs sont simples (des traits et des cercles, pas d’attributs, pas de textes). J'aimerais juste que tous mes blocs soient définis dans le calque 0 et en couleur DuCalque et peut-être le type de ligne DuCalque... J'ai regarder le Lisp de (gile) pour en récupérer ce que je veux faire mais il est vraiment trop complexe pour mon piètre niveau... Si quelqu'un a une astuce, une idée ou un conseil, je suis preneur... -
[Résolu] Suppression de calques "numériques"
DenisHen a répondu à un(e) sujet de DenisHen dans Débuter en LISP
Bonjour à vous... Et merci pour votre aide... Je vais partir sur un (while... Patrick_35 : aucun problème, mais ça risque d'être long... :unsure: -
Bonjour à tous. Voilà, aujourd'hui, je cherche à supprimer tous les calques nommés numériquement : de 1 à 64 issus d'un vieux DGN. J'ai écris ceci : (setq n 1) (foreach (< n 70) (if (not (tblsearch "layer" (rtos n 2 0))) (command "-supcalque" "n" (rtos n 2 0) "") ) ;_ Fin de if (setq (+ n 1)) ) ;_ Fin de foreach Mais quand je charge mon Lisp, AutoCAD me répond : Si quelqu'un a une astuce, une idée ou un conseil, je suis preneur... Denis... EDIT : En plus, je cherche si le calque n'existe pas avec le not... Quel âne je fais... (setq n 1) (foreach (< n 70) (if (tblsearch "layer" (rtos n 2 0)) (command "-supcalque" "n" (rtos n 2 0) "") ) ;_ Fin de if (setq (+ n 1)) ) ;_ Fin de foreach
-
[Résolu] Petit souci dans une routine
DenisHen a répondu à un(e) sujet de DenisHen dans Débuter en LISP
Bonjour Patrick_35. J'ai rebooter et ça marche...!?! D'où ça venait, aucune idée...? Merci pour ton aide. Denis... -
Bonjour à la communauté. Voilà, j'ai un souci mais je ne sais pas exactement lequel, raison pour laquelle le titre est un peu "flou"... J'ai écris ce code : (princ "\nDébut du remplacement des blocs") (setq LstBlk '(("EAU12*" . "EAU12") ("EAU22*" . "EAU22") ("EAU32*" . "EAU32") ("EAU42*" . "EAU42") ;Et patati ;Et patata ) ) ;_ Fin de setq ;;;Début de la boucle (foreach PosLstBlk LstBlk (setq n 0) (if (setq Select (ssget "_X" (list (cons 0 "INSERT") (cons 2 (car PosLstBlk))))) (while (setq ent (ssname Select n)) (setq elst (entget ent) Coord (cdr (assoc 10 elst)) EchX (cdr (assoc 41 elst)) EchY (cdr (assoc 42 elst)) Rot (cdr (assoc 50 elst)) n (1+ n) ) ;_ Fin de setq (setvar "clayer" (cdr (assoc 8 elst))) (command "_erase" ent "") (setq Coord (strcat (rtos (car Coord) 2 3) "," (rtos (cadr Coord) 2 3))) (setq Rot (+ Rot (/ pi 2))) (command "-inserer" (cdr PosLstBlk) "_non" Coord EchX EchY (angtos Rot 2 3)) ) ;_ Fin de while ) ;_ Fin de if ) ;_ Fin de foreach AutoCAD me répond : Je sais, grace à la console, que, quand ça plante, n = 0 Mais je ne sais pas quoi faire avec ça. Si quelqu'un a une astuce, un conseil ou une idée, je suis preneur... Denis...
-
Coupure de polyligne selon des blocs
DenisHen a répondu à un(e) sujet de DenisHen dans LISP et Visual LISP
Merci, Je propose de rester sur l'autre post, vu qu'il y a déjà plus de réponses qu'ici... -
Bonjour et merci à tous... rimbo : Covadis me découpe le polyligne selon les entités du bloc, et non son point d'insertion. neptune38 : Je n'arrive pas à le faire fonctionner correctement. En tous cas, merci à vous deux...
-
Bonjour à la communauté, Voilà, un collègue me demande si on peut couper une polyligne dès qu'il y a un bloc. Je m'explique, on a un réseau de plusieurs kilomètre d'éclairage public avec des lampadaires tout les 50 voir 100 mètres. Il aimerait couper cette polyligne entre chaque lampadaire. Si quelqu'un a une astuce ou un conseil... Nous sommes preneur. Denis... PS : Ce post fait doublon dans le thème "Covadis".
-
Bonjour à la communauté, Voilà, un collègue me demande si, dans Covadis, on peut couper une polyligne dès qu'il y a un bloc. Je m'explique, on a un réseau de plusieurs kilomètre d'éclairage public avec des lampadaires tout les 50 voir 100 mètres. Il aimerait couper cette polyligne entre chaque lampadaire. Si quelqu'un a une astuce ou un conseil... Nous sommes preneur. Denis... PS : Ce post fait doublon dans le thème "Lisp et Visual Lisp".
-
[Résolu] Pourquoi est-ce différent
DenisHen a répondu à un(e) sujet de DenisHen dans Débuter en LISP
Bonjour à vous... Ok, je comprend mieux, bien que celà me semble tout de même "curieux" que "l'argument derrière un quote n'est pas évalué" En tous cas, merci à vous. Denis... -
Bonjour à la communauté. Voilà, j'avais écris un petit bout de code comme cà : (foreach PosLst LstCalq (if (setq Select (ssget "_X" '((0 . "INSERT") (8 . (car PosLst)) ) ) ;_ Fin de ssget ) ;_ Fin de setq (command "chprop" Select "" "ca" (cdr (assoc (car PosLst) LstCalq )) "" ) ) ;_ Fin de if ) Mais AutoCAD me sortait un mauvais argument sur le ssget... J'ai donc repris mon code pour en faire ceci : (foreach PosLst LstCalq (if (setq Select (ssget "_X" (list (cons 0 "INSERT") (cons 8 (car PosLst)) ) ) ;_ Fin de ssget ) ;_ Fin de setq (command "chprop" Select "" "ca" (cdr (assoc (car PosLst) LstCalq)) "") ) ;_ Fin de if ) Le truc bizzare, c'est que le deuxième code fonctionne... Si quelqu'un pouvait m'aider à comprendre... Denis...
-
[Résolu] Petit problème de chargement de type de ligne
DenisHen a répondu à un(e) sujet de DenisHen dans Débuter en LISP
A ce sujet, j'ai trouvé, dans un autre post, un lisp hyper intéressant : Steal de Lee Mac
