-
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
-
Sauvegarde de variables et global error trap
Patrick_35 a répondu à un(e) sujet de x13 dans Débuter en LISP
Bonjour, C'est une manière, il ne reste plus qu'à le lancer via un startup @+ -
Bonjour, Si j'ai bien compris, avec la variable coords @+
-
Comment vérifier que la valeur que l\'on rentre dans une edit_box est bien une réel ?
Patrick_35 a répondu à un(e) sujet de GGB dans Pour aller plus loin en LISP
Humm... je reviens sur ce que je viens de dire, un (atof "abc") retourne 0.0, ce qui peut être une valeur @+ -
Comment vérifier que la valeur que l\'on rentre dans une edit_box est bien une réel ?
Patrick_35 a répondu à un(e) sujet de GGB dans Pour aller plus loin en LISP
Salut, didier, oh toi l'ancêtre de l'info http://smileys.smileycentral.com/cat/4/4_17_209.gif Je suis d'accord avec toi, un atof ou un distof @+ -
Comment vérifier que la valeur que l\'on rentre dans une edit_box est bien une réel ?
Patrick_35 a répondu à un(e) sujet de GGB dans Pour aller plus loin en LISP
Salut Tramber La valeur retournée par un edit_box est en alphanumérique (c'est du dcl) @+ -
Salut, j'ai eu le même problème sur une LT, la solution est là @+
-
Salut le Doc Tout à fait, par un startup en lisp, mais il me semblait que tu avais compris cette discutions @+
-
Comment vérifier que la valeur que l\'on rentre dans une edit_box est bien une réel ?
Patrick_35 a répondu à un(e) sujet de GGB dans Pour aller plus loin en LISP
Salut, Il y a aussi la fonction distof qui renverra nil si ce n'est pas une chaine numérique @+ -
Salut Tu n'as pas essayé l'exemple que je t'ai donné ? Si tu n'as qu'un cliché qui s'affiche, à tous les coups, c'est que tu n'es pas passé par slidelib Il te regroupe tous tes clichés dans un seul fichier auquel tu fais appel dans ton menu Pour créer ton fichier principal 1) tu copie le programme slidelib.exe (dans le répertoire support d'autocad) dans le répertoire de tes clichés 2) tu lances une session ms-dos 3) tu te place dans le répertoire de tes clichés 4) tu fais dir *.sld /on /b > toto 5) tu fais slidelib liste < toto Ton fichier liste.slb est maintenant crée. Pour ta deuxième question, c'est la boite de dialogue pour les attributs ? @+
-
Bonjour à tous Perso, je suis sur tiscali, et je n'ai pas à m'en plaindre et en ce moment, ils font une offre de 20€/mois pour un 512K ou de 30€ pour un 1024K en illimité @+
-
police de caractères masquantes
Patrick_35 a répondu à un(e) sujet de fabcad dans AutoCAD, liste de souhaits
Salut, Je ne comprends pas ton souhait, il existe les attributs invisibles ou si tu veux un texte invisible, pourquoi en faire un ? http://smileys.smileycentral.com/cat/4/4_6_2v.gif @+ -
Salut Voici un extrait d'acad.mns légèrement modifié ***MENUGROUP=3D ***POP1 [&3D] ID_3dsurface [&Surfaces 3D...]$I=ACAD.image_3dobjects $I=ACAD.* ***IMAGE **IMAGE_3DOBJECTS [Objets 3D] [acad(Box3d,Boîte3d)]^C^C_ai_box [acad(Pyramid,Pyramide)]^C^C_ai_pyramid [acad(Wedge,Biseau)]^C^C_ai_wedge [acad(Dome,Dôme)]^C^C_ai_dome [acad(Sphere,Sphère)]^C^C_ai_sphere [acad(Cone,Cône)]^C^C_ai_cone [acad(Torus,Tore)]^C^C_ai_torus [acad(Dish,Cuvette)]^C^C_ai_dish [acad(Mesh,Maille)]^C^C_ai_mesh @+
-
Bonjour Kermit Si tu regardes dans l’aide d’autocad dans le guide de personnalisation, Chapitre 4 -- Menus personnalisés, Menus d'images, tu trouveras ton bonheur avec des exemples Il existe aussi un programme lisp (bibles pour ne pas le citer) dans la zone de téléchargement membres qui permet de gérer toutes tes bibliothèques avec leurs clichées Pour répondre à un message, tu cliques sur le bouton « réponse » en bas à droite du post @+
-
Avec un clic droit sur la barre des boutons puis personnaliser ou encore avec un autoload @+
-
Attribut de bloc variable et modification
Patrick_35 a répondu à un(e) sujet de augure dans AutoCAD LT 2004
Oups... mauvais forum pour le post précédent, désolé Bonjour à tous je suis sur une 2000 avec les express tools et je ne connais pas la commande battman et la commande attredef bug en en disant une fois mes blocs sélectionnées qu'il est sans attributs alors qu'il en possède ou alors je m'y prend mal. @+ -
Salut Tramber Exact, j’ai oublié le (vl-load-com) Mais en ce qui concerne le forum, il me semble avoir répondu à la question de notre ami augure C’est juste pour montrer le principe et qu’on peut accéder d’une autre manière aux propriétés d’un objet avec en plus des fonctionnalités qu’il n’y a pas dans autolisp @+
-
Attribut de bloc variable et modification
Patrick_35 a répondu à un(e) sujet de augure dans AutoCAD LT 2004
Salut Tramber Exact, j’ai oublié le (vl-load-com) Mais en ce qui concerne le forum, il me semble avoir répondu à la question de notre ami augure C’est juste pour montrer le principe et qu’on peut accéder d’une autre manière aux propriétés d’un objet avec en plus des fonctionnalités qu’il n’y a pas dans autolisp @+ -
Bonjour à tous, Il est possible de trouver par exemple la longueur d'un arc de cercle en passant par le visual lisp L'exemple ci-dessous détermine la longueur d'un arc de cercle sans faire de grands calculs ainsi que sa couleur et tant qu'à faire, je liste toutes ses propriétés (if (setq sel (ssget)) (progn (setq sel (entget (ssname sel 0))) (if (= (cdr (assoc 0 sel)) "ARC") (progn (setq sel (vlax-ename->vla-object (cdr (assoc -1 sel)))) (setq deb (vlax-curve-getStartParam sel)) (setq fin (vlax-curve-getEndParam sel)) (princ (strcat "\nLa longueur de l'arc est de : " (rtos (vlax-curve-getDistAtParam sel fin)))) (princ (strcat "\nLa couleur de l'arc est : " (itoa (vlax-get-property sel 'color)))) (princ "\nVoici les propriétés de l'arc") (terpri) (vlax-dump-object sel) ) (Princ "\nCe n'est pas un arc qui à été choisit") ) ) ) (princ) @+
-
Attribut de bloc variable et modification
Patrick_35 a répondu à un(e) sujet de augure dans AutoCAD LT 2004
En réponse à CDL Un bloc qui est redéfinit ne l ‘est que pour la partie graphique. Il ne touche absolument pas aux attributs. Il est possible de modifier ses attributs avec –attedit ou encore avec les grips. Si maintenant j’insère un bloc avec des attributs qui a été redéfinit, il sera différent de ceux que je peux voir à l’écran pour ses attributs. Pour tester, il suffit juste de décomposer un bloc, de changer la couleur des attributs, de le recrée, puis de l’insérer et de voir le résultat. @+ -
Comment creer une liste des blocs d\'un fichier
Patrick_35 a répondu à un(e) sujet de Drizzt dans Débuter en LISP
Salut, Tu peux toujours proposer au webmaster en téléchargement membres, mais pour huit pages, je doute qu’il y ait beaucoup de réponses. Si tu trouve que ton prog est une usine à gaz, ce n’est pas grave, le principal est qu’il fonctionne. C’est à force de faire des lisps et en regardant ce que d’autres ont fait qu’on s’améliore. Il faut savoir être patient et progresser doucement, mais sûrement @+ -
Attribut de bloc variable et modification
Patrick_35 a répondu à un(e) sujet de augure dans AutoCAD LT 2004
J’ai bien vu que c’était sous LT mais je me suis dit que cela pouvait aussi intéresser d’autres personnes vu que le sujet était lancé. Je viens de penser que pour t’aider, il est possible de programmer tout simplement un bouton avec les options de la commande –attedit. Il suffirait juste de sélectionner les attributs, puis de cliquer autant de fois que nécessaire @+ -
Comment creer une liste des blocs d\'un fichier
Patrick_35 a répondu à un(e) sujet de Drizzt dans Débuter en LISP
Salut Pour faire la sélection de tous tes blocs, tu fais un (setq ls (ssget "x" '((0 . "INSERT")))) Si c'est pour un bloc dont tu connais le nom (setq ls (ssget "x" '((2 . "NOM_BLOC")))) Les or, and, ou, etc... fonctionnent comme des filtres @+ -
Attribut de bloc variable et modification
Patrick_35 a répondu à un(e) sujet de augure dans AutoCAD LT 2004
Bonjour Il y a bien la commande -attedit, mais c'est un peu lourd La solution est de le faire sur une version pleine ou avec un add-on comme drcauto Voici un lisp qui répond à ce problème, il n'est pas parfait à cause d’un bug qui est le calcul de la position et l'angle des attributs existants affairant à l’angle d'un bloc qui a été tourné, mais il répond à 90% des cas. Il reste encore à le finaliser. Si j'ai un peu de temps ou si quelqu'un veut bien le finir. (defun c:rat (/ att_bloc_ref att_bloc_sel bloc_ref cmd nom_bloc nxang nxpt nxpt1 p ptx1 pty1 ptz1 selection tbl_bloc_ref tbl_bloc_sel) (defun chg (code_groupe) (setq att_bloc_sel (subst (assoc code_groupe att_bloc_ref) (assoc code_groupe att_bloc_sel) att_bloc_sel)) ) (setq cmd (getvar "cmdecho")) ; Ne pas voir les commandes (setvar "cmdecho" 0) (command "_.undo" "_group") ; Pour faire un undo unique (setq p (getvar "pickadd")) ; Sélection unique (setvar "pickadd" 0) (princ "\nChoisissez le type de bloc pour modifier les attributs.") (setq selection (ssget)) ; Sélection du bloc de réference (setvar "pickadd" p) (if (= (cdr (assoc 0 (entget (ssname selection 0)))) "INSERT") ; Vérification que le choix est un bloc (progn (setq nom_bloc (cdr (assoc 2 (entget (ssname selection 0))))) (setq selection (ssget "_x" (list (cons 2 nom_bloc)))) ; Rechercher tous les blocs selon la réference dans le dessin (setq bloc_ref (tblsearch "block" nom_bloc)) ; Récuperer les valeurs du bloc de réference (if (and selection bloc_ref) (if (cdr (assoc 66 (entget (ssname selection 0)))) ; Vérification si le bloc à des attributs (progn (setq n 0) (while (/= (ssname selection n) nil) ; Début de la boucle (setq tbl_bloc_ref (entget (cdr (assoc -2 bloc_ref)))) ; Table du bloc de réference (setq tbl_bloc_sel (entget (ssname selection n))) ; Table du bloc du dessin (setq att_bloc_sel (entget (entnext (cdr (assoc -1 tbl_bloc_sel))))) (setq ptx1 (car (cdr (assoc 10 tbl_bloc_sel)))) ; Point d'insertion x du bloc (setq pty1 (cadr (cdr (assoc 10 tbl_bloc_sel)))) ; Point d'insertion y du bloc (setq ptz1 (caddr (cdr (assoc 10 tbl_bloc_sel)))) ; Point d'insertion z du bloc (setq att_bloc_ref tbl_bloc_ref) (while (/= (cdr (assoc 0 att_bloc_sel)) "SEQEND") ; Vérification que l'on n'à pas atteint le dernier attribut (while (/= (cdr (assoc 0 att_bloc_ref)) "ATTDEF") ; Vérification que l'entité est un attribut , sinon suivant (setq att_bloc_ref (entget (entnext (cdr (assoc -1 att_bloc_ref))))) ) (chg 2)(chg 7)(chg 8) ; Mettre à jour la table des attibuts du bloc de dessin, les chiffres correspondent aux codes de groupe communs aux entités (setq nxpt (list (+ ptx1 (* (car (cdr (assoc 10 att_bloc_ref)))(cdr (assoc 41 tbl_bloc_sel)))) (+ pty1 (* (cadr (cdr (assoc 10 att_bloc_ref)))(cdr (assoc 42 tbl_bloc_sel)))) (+ ptz1 (* (caddr (cdr (assoc 10 att_bloc_ref)))(cdr (assoc 43 tbl_bloc_sel)))))) (setq att_bloc_sel (subst (cons 10 nxpt) (assoc 10 att_bloc_sel) att_bloc_sel)) (setq nxpt (list (+ ptx1 (* (car (cdr (assoc 11 att_bloc_ref)))(cdr (assoc 41 tbl_bloc_sel)))) (+ pty1 (* (cadr (cdr (assoc 11 att_bloc_ref)))(cdr (assoc 42 tbl_bloc_sel)))) (+ ptz1 (* (caddr (cdr (assoc 11 att_bloc_ref)))(cdr (assoc 43 tbl_bloc_sel)))))) (setq att_bloc_sel (subst (cons 11 nxpt) (assoc 11 att_bloc_sel) att_bloc_sel)) (setq att_bloc_sel (subst (cons 40 (* (cdr (assoc 40 att_bloc_ref)) (cdr (assoc 41 tbl_bloc_sel)))) (assoc 40 att_bloc_sel) att_bloc_sel)) ; Mise à jour de la table de l'attribut (chg 41)(chg 50)(chg 51) (if (cdr (assoc 62 att_bloc_ref)) (if (cdr (assoc 62 att_bloc_sel)) (chg 62) (setq att_bloc_sel (append att_bloc_sel (list (assoc 62 att_bloc_ref)))) ) ) (chg 67)(chg 70)(chg 73)(chg 74) (entmod att_bloc_sel) ; Mettre à jour la table de l'attribut dans la base (entupd (cdr (assoc -1 att_bloc_sel))) ; Mettre à jour l'attibut dans le dessin (if (entnext (cdr (assoc -1 att_bloc_ref))) (setq att_bloc_ref (entget (entnext (cdr (assoc -1 att_bloc_ref))))) ) (setq att_bloc_sel (entget (entnext (cdr (assoc -1 att_bloc_sel))))) ) (setq n (1+ n)) ) (princ (strcat "\n" (itoa n) " bloc(s) modifié(s).")) ) (alert (strcat "Bloc " nom_bloc " sans attibuts")) ) (alert (strcat "Pas de Bloc " nom_bloc " dans le dessin.")) ) ) (alert "Veuillez sélectionner un bloc.") ) (command "_.undo" "_end") (setvar "cmdecho" cmd) (princ) ) (terpri) (princ "\nATTENTION") (princ "\nCette commande peut se relever dangereuse. Lors de la décomposition du bloc, puis des modifications, il faut absolument que les attributs, lors de la re-création du bloc, soit au même nombre, et re-sélectionnés dans le même ordre qu'à l'origine !!!") (princ "\nPour lancer la commande, tapez RAT") (princ) @+ -
Aide pour impression-mise en page
Patrick_35 a répondu à un(e) sujet de Ju2 dans AutoCAD 2000 à 2002
Salut Pour faire tes présentations à l'échelle, je te propose de suivre la procédure suivante 1) Connaître la valeur de l'unité de son dessin, par exemple, une unité dessin est égale à 1cm 2) Cliquer sur l'onglet de présentation 3) Si une fenêtre n'est pas crée, faire la commande fmult 4) se mettre en espace objet 5) Pour une échelle au 1/50, faire la commande zoom .2xp (soit 2cm/m) Les unités de l'espace de présentation pour un tracé de 1=1 sont en mm Les différentes valeurs pour le zoom xp sont pour le cm dans l'espace objet 1/10 --> 1 1/20 --> 0.5 1/50 --> 0.2 1/100 --> 0.1 Si les unités de dessin sont par exemple en mètres, il faut multiplier par 100, donc pour du 1/50 un facteur d'échelle de 20 La formule est unité papier / echelle soit 100/20 (pour 1/20) ce qui donne 5 et entre les mm et les cm il y a un ratio de 10, ce qui donne 0.5 @+
