-
Compteur de contenus
213 -
Inscription
-
Dernière visite
Type de contenu
Profils
Forums
Calendrier
Blogs
Tout ce qui a été posté par CoolM@n
-
Petite boite de dialogue
CoolM@n a répondu à un(e) sujet de mitnix dans Pour aller plus loin en LISP
Encore plus simple. Utilise le message d'alerte d'Acad. Ex: (defun c:user () (setvar "cmdecho" 0) (setvar "dimzin" 0) (alert (strcat "Variables Utilisateurs AutoCad.\n" "\nUser Integer 1 :" (itoa (getvar "useri1") ) "\nUser Integer 2 :" (itoa (getvar "useri2") ) "\nUser Integer 3 :" (itoa (getvar "useri3") ) "\nUser Integer 4 :" (itoa (getvar "useri4") ) "\nUser Integer 5 :" (itoa (getvar "useri5") ) "\n_______________________________" "\nUser Real 1 :" (Rtos (getvar "Userr1") 2 5) "\nUser Real 2 :" (Rtos (getvar "Userr2") 2 5) "\nUser Real 3 :" (Rtos (getvar "Userr3") 2 5) "\nUser Real 4 :" (Rtos (getvar "Userr4") 2 5) "\nUser Real 5 :" (Rtos (getvar "Userr5") 2 5) "\n_______________________________" "\nUser String 1 :" (getvar "Users1") "\nUser String 2 :" (getvar "Users2") "\nUser String 3 :" (getvar "Users3") "\nUser String 4 :" (getvar "Users4") "\nUser String 5 :" (getvar "Users5") ) ) (setvar "dimzin" 8) (setvar "cmdecho" 1) (princ) ) -
Pas eu le temps. Du moins pas comme j'avais prévu! Le rv a lieu dans un bistrot/auberge/restaurant. J'avais prevu de prendre le plat du jour apres le Rv. He bien, finalement les tartines à la maison elles sont pas mauvaises. :P
-
Y a une astuce ici aussi: http://www.zebulon.fr/astuces/astuce-windows-152-0.html
-
Ca evite bien des problèmes.... Ce matin un confrêre m'envoie un dessin pour impression, afin de le porter chez un architecte lors d'un rendez-vous prévu à 12h30. J'ouvre le dessin, pour adapter les écritures, style de cotes et autres "garnitures". Par tél. ce collègue me dit qu'il a 'rescalé' le dessin. Sortie impression au '1/100' d'un dessin prevu pour être imprimé au '1/150' Du coup, les distances ne réflètent pas la réalité.! Là, saurait du faire 'TILT'..... mais pas bol. J'ai rien vu venir. :( J'imprime les plans. Je part au rendez-vous. L'architecte regarde..... et malheur, les cotes ne sont pas bonnes. :mad: Ex: La cote est de 400cm alors qu'elle devrait être de 600cm.! L'architecte a rendez-vous aves ses client à 14h00. Il me faut 25' pour rentrer chez moi. Faire les corrections, envoyer le fichier par mail. Lui doit imprimer les copies, en couleur sur A3, pas des plus rapides. L'e-mail est parti à 13h42. Que c'est'il passé? Et bien le collègue a coter son dessin avec un Facteur d'échelle de 1.5 400 * 1.5 =600 ! En utilisant mon style de cote, le facteur est repassé à 1. Tout ca aurait pu etre eviter si le dessin etait resté a l'echelle 1/1. :casstet:
-
Le salon Cad-Cam ( http://www.cad-cam.be/ ) ouvre ses portes les 29 & 30 / 09 / 2004 . A Courtrai. Avec chaque fois "le village autodesk"
-
conversion hexadecimal -> base 10
CoolM@n a répondu à un(e) sujet de bruno_l dans Pour aller plus loin en LISP
Le principe de la transformation ici: http://membres.lycos.fr/villemingerard/Numerati/ConHexa.htm -
L'idéal serait de l'avoir aussi dans un menu déroulant. Ca permet de l'appeler a partir d'une routine lisp. Voila mon boutton: Pour les hachures: [$(eval,Point d'insertion Hachure = )$(getvar,SnapBase)]'_Snapbase; et pour la 2005, Activation/Désactivation de l'accrochage aux hachures: [$(if,$(getvar,OSNAPHATCH),!.)Accrochage aux hachures Actif]'_OSNAPHATCH $M=$(if,$(getvar,OSNAPHATCH),0,1) Variable non documentée. [Edité le 18/8/2004 par CoolMan]
-
Sans doute , mais les écrits restent... ;)
-
Salut, regarde du cote de la commande _dragmode. "Controls the way AutoCAD displays dragged objects You can draw new objects dynamically and drag them into position on the screen. You can also drag existing objects with many editing commands. With some computer configurations, dragging can be time consuming. Use DRAGMODE to suppress dragging. Command line: dragmode (or 'dragmode for transparent use) Enter new value [ON/OFF/Auto] : Enter an option or press ENTER "
-
Il faut controler la variable _SNAPBASE pour modifier l'origine des hachures.
-
Voici la liste de pgms dont le comportement est "pertubé' par le service pack 2 (SP2) d'XP. http://support.microsoft.com/default.aspx?kbid=884130&product=windowsxpsp2#appliesto Autocad 2004 est dans cette liste. Dixit la sagesse populaire:"Le mieux est l'ennemi du bien"!
-
Probleme de superposition de plans scanés
CoolM@n a répondu à un(e) sujet de mathilde dans AutoCAD 2004
Salut, ;) L'ideal est d'avoir des plans scannés en noir et blanc, en general je sauve mes images en tiff. Puis click droit sur une image insérée, propriété et tu as un option pour activer la transparance. -
Ou peut etre demander une version d'essai d'acad 2005, utilisable 30 jours. En meme temps vous découvrez la nouvelle version.
-
J'ai fait le teste. Ca arrive aussi, lorsque le clavier n'est pas bloqué en majuscule. ;)
-
Ctrl + F6, fonctionne a chaque fois. Je dis 'a chaque fois', parce-que, je ne sais pour quelle raison, mais Ctrl+Tab ne fonctionne pas, je dois cliquez dans le dessin, ensuite ce la fonctionne.
-
Aligner des Hach. definies par l\'utilisateur
CoolM@n a répondu à un(e) sujet de Azerty dans AutoCAD 2004
Juste une petite mise au point. L'origine des hachures dépend aussi de la variable _SNAPBASE -
Ou se faire un menu personalise qui permet de basculer les variables http://home.scarlet.be/~dessins/menuvariable.jpg
-
Tout le code lisp doit être dans le fichier Layout_set.lsp Ensuite il faut que les deux fichiers *.lsp et *.dcl soient dans un des chemins de recherche d'Autocad. Habituellement dans ..\SUPPORT. Personnellement je te conseille de créer ton propre répertoire où installer tes routines, et de l'ajouter dans le chemin de recherche d'autocad. Pour charger l'application, soit tu passes par le menu "outil" "Charger application", soit tu utilise l'explorateur de fichiers pour faire glisser le fichier dans autocad. Demarrer la commande par layout_set.
-
OOPS Mega OOPS 2 (DEFUN ListeBox (_action_ _active_) (IF (NOT (NEW_DIALOG "Plan_set" Fichier)) (EXIT) ) ;_ Fin de if (SET_TILE "action" an_action) (SET_TILE "_active_" (STRCAT "Confirmation " _active_)) (START_LIST "Listebloc" 3) (MAPCAR 'ADD_LIST Bliste) (END_LIST) (SET_TILE "Listebloc" "0") (ACTION_TILE "Listebloc" "(setq Bl (nth (atoi $value) Bliste))") (ACTION_TILE "accept" "(done_dialog 1)") (ACTION_TILE "cancel" "(done_dialog 0)") (SETQ Ok (START_DIALOG)) ) ;_ Fin de defun Dangereux le copier/coller des routines pas bien documentée!!! :casstet:
-
OOPS Mega OOPS il manque la fonction suivante: (DEFUN Ins (Ele Lis) (COND ((NULL Lis) (LIST Ele)) ((< Ele (CAR Lis)) (CONS Ele Lis)) (T (CONS (CAR Lis) (Ins Ele (CDR Lis)))) ) ;_ Fin de cond ) ;_ Fin de defun
-
Une routine qui permet de chosir une présenation et de la rendre active: copier le code qui suit dand une fichier LAYOUT_SET.DCL Plan_set : dialog { value = ""; key = "action"; width = 50; : list_box { label = "- Plans - "; mnemonic = "P"; allow_accept = true; // multiple_select = true; // value = "0"; key = "Listebloc"; height = 25; } spacer_1; ok_cancel; } Copier le code qui suit dans un fichier LAYOUT_SET.LSP (DEFUN c:Layout_set (/ Bliste Bl b BB I Ok X a Fichier an_action a_confirmer _active ) (SETQ BL nil) (SETQ olderr *error* *error* myerror ) ;_ Fin de setq (SETVAR "cmdecho" 0) ;desactive l'affichage des opérations (SETQ _active "[sans effet!]") (SETQ a (LAYOUTLIST)) (WHILE (/= nil a) (PROGN (SETQ b (CAR a)) (SETQ Bliste (ins (STRCASE b) bliste)) (SETQ a (CDR a)) ) ;_ Fin de progn ) ;_ Fin de while (IF (/= Bliste nil) (PROGN (SETQ Bliste (ins "@_ Model / Modèle _@" bliste)) (SETQ Fichier (LOAD_DIALOG "LAYOUT_SET.DCL")) (SETQ an_action "Choix du Layout Courant.") (ListeBox "SET" _active) (IF (= OK 1) (IF (/= bl nil) (PROGN (IF (= bl "@_ Model _@") (COMMAND "_tilemode" "1") (COMMAND "_Layout" "_set" Bl) ) ;_ Fin de if ) ;_ Fin de progn (COMMAND "_tilemode" "1") ) ;_ Fin de if ) ;_ Fin de if (UNLOAD_DIALOG Fichier) ) ;_ Fin de progn (ALERT "Pas de Choix possible!") ) ;_ Fin de if (SETQ *error* olderr) ; Restore old *error* handler (SETVAR "cmdecho" ) ;reactive l'affichage des opérations (PRINC) ) ;_ Fin de defun La routine affiche une liste des Présentation triées. J'ai force le "model" car il ne se trouve pas dans 'layoulist', en mettant l'@, il se trouve en première place. Double click sur un nom pour activée la présentation. Y a plus qu'a ajouter le reste. ;)
-
création d\'un objet sur un calque précis
CoolM@n a répondu à un(e) sujet de chrchat dans Pour aller plus loin en LISP
essaie ceci: (DEFUN c:rr (/ ent1 p1 p2 dist ang p3 demidist calq) (SETVAR "cmdecho" 0) ;;;Sauve le layer actuel ;;;**************************** (SETQ anc_layer (GETVAR "clayer")) ;;;**************************** ;;;Sauve l'accrochage actuel ;;;**************************** (SETQ anc_osmode (GETVAR "osmode")) (SETQ ent1 (ENTSEL)) (SETQ p1 (CADR ent1)) (SETQ ent1 (ENTGET (CAR ent1))) ; <<- changement pout trouver l'entite du layer----- (SETQ calq (CDR (ASSOC 8 ent1))) ;;;force le mode Perpendiculaire (SETVAR "osmode" 128) ;;;; *******(command "accrobj" "per") **** (SETQ p2 (GETPOINT p1 "\nCliquer le second point")) (SETVAR "osmode" 0) (SETQ dist (DISTANCE p1 p2)) (SETQ demidist (/ dist 2)) (SETQ ang (ANGLE p1 p2)) (SETQ p3 (POLAR p1 ang demidist)) ;;; Rend actif le layer de reference ;;;*************************** (SETVAR "clayer" calq) ;;;*************************** ;;;tes dessins se font dans le bon layer (COMMAND "arc" p1 "_e" p3 "_a" 90) (COMMAND "arc" p3 "_e" p2 "_a" 90) (COMMAND "arc" p2 "_e" p3 "_a" 90) ;;;;Restore le layer de départ (SETVAR "clayer" anc_layer) ;;;;Restore l'accrochage de départ (SETVAR "osmode" anc_osmode) (PRINC) ) -
création d\'un objet sur un calque précis
CoolM@n a répondu à un(e) sujet de chrchat dans Pour aller plus loin en LISP
Ma routine selectionne un objet, détermine son calque et transfert les entités choisies dans ce layer. Tu peux t'en inspirer. (defun c:ENT_Layer ( / co pl lt) ;;(defun c:ENT_Layer () (setvar "cmdecho" 0) ;;desactive l'affichage des op‚rations (setq ent(entsel "\nCliquez l'entite pour le LAYER de reference. ")) (while (= ent Nil) (progn (c:beep) (alert "Selectionnez une entite...!") (setq ent(entsel "\nCliquez l'entite pour le LAYER de reference. ")) ) ) (setq an (car ent)) (redraw an 3) (Prompt "\nSelectionnez les entites a changer ...") (setq sel (ssget)) (redraw an) (if (/= ent nil) (progn (setq ent(entget (car ent))) (setq pl (assoc 8 ent)) ;; <<<< --------- Layer sélectionné (setq pl (cdr pl)) (setq co (assoc 62 ent)) ;; Color (setq co (cdr co)) (if (= co nil) (setq co "Bylayer") (Setq co (rtos co)) ) (setq lt (assoc 6 ent)) ;; Ltype (setq lt (cdr lt)) (if (= lt nil) (setq lt "Bylayer")) (setq ha (assoc 39 ent)) ;; Thickness (setq ha (cdr ha)) (if (= ha nil) (setq ha 0.0)) (if (/= sel nil) (command "chprop" "si" sel "layer" pl "" ) ) ) ) (setvar "cmdecho" 1) ;;reactive l'affichage des op‚rations (princ (Strcat "Nouveaux parametres: " "Layer " pl ) ) (princ) -
Nbre de caractères dans la fenêtre de commande ??
CoolM@n a répondu à un(e) sujet de dr.loveless dans AutoCAD 2004
un petit exemple au je me sert d'une boite laerte pour afficher les variables USER*** Au départ je les affichais a l'ecran Texte. (defun c:user () ;(command "TextScr") ;(terpri) (setvar "cmdecho" 0) (setvar "dimzin" 0) ;(prompt "\n\n\tVariables Utilisateurs AutoCad.\n") ;(prompt (strcat "\n User Integer 1 \t" (itoa (getvar "useri1") )) ) ;(prompt (strcat "\n User Integer 2 \t" (itoa (getvar "useri2") )) ) ;(prompt (strcat "\n User Integer 3 \t" (itoa (getvar "useri3") )) ) ;(prompt (strcat "\n User Integer 4 \t" (itoa (getvar "useri4") )) ) ;(prompt (strcat "\n User Integer 5 \t" (itoa (getvar "useri5") )) ) ;(prompt (strcat "\n User Real 1 \t" (Rtos (getvar "Userr1") 2 5)) ) ;(prompt (strcat "\n User Real 2 \t" (Rtos (getvar "Userr2") 2 5)) ) ;(prompt (strcat "\n User Real 3 \t" (Rtos (getvar "Userr3") 2 5)) ) ;(prompt (strcat "\n User Real 4 \t" (Rtos (getvar "Userr4") 2 5)) ) ;(prompt (strcat "\n User Real 5 \t" (Rtos (getvar "Userr5") 2 5)) ) ;(prompt (strcat "\n User String 1 \t" (getvar "Users1") ) ) ;(prompt (strcat "\n User String 2 \t" (getvar "Users2") ) ) ;(prompt (strcat "\n User String 3 \t" (getvar "Users3") ) ) ;(prompt (strcat "\n User String 4 \t" (getvar "Users4") ) ) ;(prompt (strcat "\n User String 5 \t" (getvar "Users5") ) ) (alert (strcat "Variables Utilisateurs AutoCad.\n" "\nUser Integer 1 :" (itoa (getvar "useri1") ) "\nUser Integer 2 :" (itoa (getvar "useri2") ) "\nUser Integer 3 :" (itoa (getvar "useri3") ) "\nUser Integer 4 :" (itoa (getvar "useri4") ) "\nUser Integer 5 :" (itoa (getvar "useri5") ) "\n_______________________________" "\nUser Real 1 :" (Rtos (getvar "Userr1") 2 5) "\nUser Real 2 :" (Rtos (getvar "Userr2") 2 5) "\nUser Real 3 :" (Rtos (getvar "Userr3") 2 5) "\nUser Real 4 :" (Rtos (getvar "Userr4") 2 5) "\nUser Real 5 :" (Rtos (getvar "Userr5") 2 5) "\n_______________________________" "\nUser String 1 :" (getvar "Users1") "\nUser String 2 :" (getvar "Users2") "\nUser String 3 :" (getvar "Users3") "\nUser String 4 :" (getvar "Users4") "\nUser String 5 :" (getvar "Users5") ) ) (setvar "dimzin" 8) (setvar "cmdecho" 1) (princ) )
