-
Compteur de contenus
6 374 -
Inscription
-
Dernière visite
-
Jours gagnés
30
Type de contenu
Profils
Forums
Calendrier
Blogs
Tout ce qui a été posté par Patrick_35
-
[Résolu] Petit lisp qui fait correspondre une liste de calques
Patrick_35 a répondu à un(e) sujet de DenisHen dans Routines LISP
Je te laisse méditer (vlax-ldata-put "DenisH" "EtiqPTRL_Cste" (atof (nth 7 *ConfigPTRL@))) avec (rtos (vlax-ldata-get "DenisH" "EtiqPTRL_Prof_Cste") 2 2) Et plus tard, tu auras une autre erreur avec (setq Edit1$ (vlax-ldata-get "DenisH" "EtiqPTRL_Cste")) ... (set_tile "Edit1" Edit1$) @+ -
[Résolu] Petit lisp qui fait correspondre une liste de calques
Patrick_35 a répondu à un(e) sujet de DenisHen dans Routines LISP
Salut Maintenant que tu as gouté au DCL, je pense que tu vas persévérer dans cette voie :D @+ -
[Résolu] Fonction LAYOUTLIST
Patrick_35 a répondu à un(e) sujet de rebcao dans Pour aller plus loin en LISP
Salut Une autre manière de faire (defun onglets(/ lst) (vlax-for lay (vla-get-layouts (vla-get-activedocument (vlax-get-acad-object))) (or (eq (vla-get-name lay) "Model") (setq lst (cons (cons (vla-get-taborder lay) (vla-get-name lay)) lst)) ) ) (mapcar 'cdr (vl-sort lst '(lambda(a B)(< (car a)(car B))))) ) @+ -
[Résolu] Petit lisp qui fait correspondre une liste de calques
Patrick_35 a répondu à un(e) sujet de DenisHen dans Routines LISP
Je viens de voir ta réponse après avec posté mon code. L'erreur vient que tu ne remplis pas la liste avec add_list Continue d'abord avec ton dcl avant de regarder ce que j'ai fait. @+ -
[Résolu] Petit lisp qui fait correspondre une liste de calques
Patrick_35 a répondu à un(e) sujet de DenisHen dans Routines LISP
Allez, c'est mon jour La routine (defun bda(titre / dcl ele fil lay lst nom pos tmp res txt val) (vlax-for ele (vla-get-layers doc) (or (wcmatch (setq nom (vla-get-name ele)) "*|*") (setq lay (cons nom lay)) ) ) (setq tmp (vl-filename-mktemp "bda" nil ".dcl") fil (open tmp "w") lay (acad_strlsort lay) ) (foreach txt '( "bda : dialog {" " key = \"titre\";" " alignment = centered;" " is_cancel = true;" " allow_accept = true;" " : list_box {label = \"Calques\"; key=\"lay\"; height = 30; width = 100; multiple_select=true;}" " spacer;" " ok_cancel;" "}" ) (write-line txt fil) ) (close fil) (setq dcl (load_dialog tmp) pos "0" ) (new_dialog "bda" dcl "") (start_list "lay") (mapcar 'add_list lay) (end_list) (set_tile "titre" titre) (set_tile "lay" "0") (action_tile "lay" "(setq pos $value)") (action_tile "cancel" "(done_dialog 0)") (action_tile "accept" "(done_dialog 1)") (setq res (start_dialog)) (unload_dialog dcl) (vl-file-delete tmp) (and (eq res 1) (while (not (eq pos "")) (setq val (read pos) lst (cons (nth val lay) lst) pos (substr pos (+ 2 (strlen (itoa val))) (strlen pos)) ) ) ) (reverse lst) ) Et pour appeler la fonction (setq doc (vla-get-activedocument (vlax-get-acad-object))) (setq mes_calques (bda "Ma liste de calques by DenisH")) @+ -
[Résolu] Petit lisp qui fait correspondre une liste de calques
Patrick_35 a répondu à un(e) sujet de DenisHen dans Routines LISP
Ben, le problème est la structure de ton fichier .lst C'est toi qui l'a fait, donc le copier/coller est facile pour toi. Avec une liste et sélection multiple comme dans ONG, GEF, SYN, EXL, etc... Un exemple avec MyMultiLists @+ -
[Résolu] Petit lisp qui fait correspondre une liste de calques
Patrick_35 a répondu à un(e) sujet de DenisHen dans Routines LISP
Salut Merci pour le partage :D Tu pourrais aussi avoir un lisp qui créé le fichier .lst un dessin existant (avec une sélection des calques). @+ -
Créer un hyperlien dynamique à partir d'un numéro qui change
Patrick_35 a répondu à un(e) sujet de vins13007 dans AutoCAD 2013
Salut J'ai du mal à comprendre ton besoin Un exemple qui renvoi sur ce sujet avec un navigateur (startapp "explorer" "http://cadxp.com/topic/42804-creer-un-hyperlien-dynamique-a-partir-dun-numero-qui-change/page__pid__243388#entry243388") Pour récupérer la valeur d'un texte (setq ent (entget (car (entsel)))) (cdr (assoc 1 ent)) Ou (setq ent (vlax-ename->vla-object (car (entsel)))) (vla-get-textstring ent) @+ -
Changement de présentation
Patrick_35 a répondu à un(e) sujet de PhilBat dans ObjectARX/DBX, C++, .NET, RealDWG
Salut En "ObjectARX/DBX, C++, .NET, RealDWG" je ne saurais te répondre, mais en vlisp, tu peux surveiller les variables (CTAB en l'occurence) pour indiquer le changement de présentation avec les réacteurs (vlr-sysvar-reactor) @+ -
Comment utiliser les raccourcis clavier AutoCAD?
Patrick_35 a répondu à un(e) sujet de LucasRAPP dans Tutoriaux AutoCAD
Salut Tu peux voir cette réponse. @+ -
[Résolu] Personnalisation de SOMPOLY de (gile)
Patrick_35 a répondu à un(e) sujet de DenisHen dans Pour aller plus loin en LISP
Salut Je pense comme (gile), c'est dommage. Mais je ne m'inquiète pas trop car on a des moments professionnels plus calmes et c'est là qu'on se perfectionne et qu'on développe des outils qui étaient en attente. Au plaisir de te relire. @+ -
reprendre les derniers objets copiés
Patrick_35 a répondu à un(e) sujet de x_all dans Débuter en LISP
Salut Tu fais un (setq der (entlast)) avant la commande copier afin de connaitre le dernier objet. Tu fais tes commandes et ensuite, les entnext depuis la variable mémorisé (der) indiquent les objets ajoutés @+ -
[résolu] Texte auto dans cartouche
Patrick_35 a répondu à un(e) sujet de La Lozère dans AutoCAD 2015
Salut +1 avec Goldorak44. Tu peux aussi le faire avec le nom des présentations (variable ctab) si tu as plusieurs plans par fichier. @+ -
[Résolu] Comment changer le style de texte d'un texte ?
Patrick_35 a répondu à un(e) sujet de DenisHen dans Débuter en LISP
Salut Pour le filtre (ssget "_X" (list (cons 0 "TEXT,MTEXT") (cons 7 "MONOTXT"))) La boucle sur un jeu de sélection, tu sais faire. Pour changer le style de texte en Arial (entmod (subst (cons 7 "Arial") (assoc 7 ent) ent)) @+ -
mapcar sur un nombre indéfinis de listes
Patrick_35 a répondu à un(e) sujet de Caleb dans Pour aller plus loin en LISP
Salut J'ai du mal à comprendre. Tu indiques que (gile) à répondu à ta demande (ce qui est le principal), mais ni Tramber et moi. Pourtant, si tu regardes les réponses, les résultats sont les mêmes que ceux de (gile) ? @+ -
mapcar sur un nombre indéfinis de listes
Patrick_35 a répondu à un(e) sujet de Caleb dans Pour aller plus loin en LISP
Salut Pour regrouper les listes (apply 'append (list '(1 0 7) '(2 8 3) '(5 9 6))) Reste plus qu'a sortir la valeur max (apply 'max (apply 'append (list '(1 0 7) '(2 8 3) '(5 9 6)))) Ou pour répondre comme Tramber (mapcar '(lambda(x)(apply 'max x)) (list '(1 0 7) '(2 8 3) '(5 9 6))) @+ -
Salut Tout est là (vlax-dump-object (vla-get-files (vla-get-preferences (vlax-get-acad-object)))) Par exemple, pour ajouter un répertoire dans les chemins de recherche. (setq pref (vla-get-files (vla-get-preferences (vlax-get-acad-object))) supp (vla-get-supportpath pref) ) (or (vl-string-search (strcase "Mon_répertoire") (strcase supp)) (vla-put-supportpath pref (strcat "Mon_répertoire;" supp) ) @+
-
Problème pour relancer boîte de dialogue
Patrick_35 a répondu à un(e) sujet de Neophyte dans LISP et Visual LISP
Salut Des pros, pas forcement mais des passionnés, sûrement. Je pense que tu dois avoir un variable qui récupère le résultat de la boite de dialogue (type done_dialog 0) et qui n'a pas été déclarée en local. Mets cette variable à nil pour voir @+ -
Gestionnaire de la communauté francophone Autodesk
Patrick_35 a répondu à un sujet dans CAO, généralités
Salut patrick Bonne chance pour tes nouvelles fonctions. @+ -
[Résolu] Suppression de calques "numériques"
Patrick_35 a répondu à un(e) sujet de DenisHen dans Débuter en LISP
Salut Remplace le foreach par while car un foreach parcours une liste. Pour tester si un calque existe, et bien dans la table des calques (tblsearch "layer" ...) Pour la boucle tu es à l'amende d'une bière ;) @+ Edit : Olivier a été le plus rapide -
Salut Tu recopies un bloc avec des attributs liés. Ensuite, tu lances LATT, tu tapes R pour retirer et tu choisis l'attribut à enlever de la chaine. @+
-
Changer le chemin d'une image
Patrick_35 a répondu à un(e) sujet de lerom88 dans LISP et Visual LISP
Salut Xrefs transforme les chemins absolue des xrefs et des images en chemin relatif. Si le dessin est sur le réseau et ton image sur ton disque dur, cela ne fonctionnera pas. Si tu souhaites donner un nouveau chemin, tu peux utiliser la commande xref et attribuer un nouveau chemin ou en lisp (command "_.xref" "_path" "Mon_Xref" "Mon_Nouveau_Chemin\\Mon_Xref") @+ -
Changer le chemin d'une image
Patrick_35 a répondu à un(e) sujet de lerom88 dans LISP et Visual LISP
J'ai testé sur plusieurs dessins et je n'ai pas ce message. Si tu pouvais donner un exemple qui reproduit le problème @+ -
Changer le chemin d'une image
Patrick_35 a répondu à un(e) sujet de lerom88 dans LISP et Visual LISP
Rien, tu fermes la fenêtre et tu télécharges @+ -
Changer le chemin d'une image
Patrick_35 a répondu à un(e) sujet de lerom88 dans LISP et Visual LISP
Salut Avec Rxef @+
