Aller au contenu

aldo127

Membres
  • Compteur de contenus

    29
  • Inscription

  • Dernière visite

Tout ce qui a été posté par aldo127

  1. Bonjour, Y a-t-il un lisp qui permet de remettre à 0 la valeur Z de toutes les entités (ligne, polyligne, rectangle cercle textes....) d'un dessin. Merci
  2. Bonjour, J'utilisais ce lisp pour représenter un tube coupé. Sous Autocad 2009, il ne fonctionne plus! Quelqu'un peut m'aider en corrigeant le lisp pour qu'il fonctionne à nouveau. Merci ;************************** ROD-END.LSP *********************************** ; By Simon Jones Autodesk Ltd, London March 1987 ; This macro constructs a "broken shaft end" at the end of two ; specified lines. The "S" shaped curve starts at a point on the ; "nearest" line to the first pick-point. Both lines will be trimmed ; or extended to neatly intersect the "S" shape. ;******************* SYSTEM VARIABLE STORE ********************* ; Store system variables (defun MODES (a) (setq MLST '()) (repeat (length a) (setq MLST (append MLST (list (list (car a) (getvar (car a)))))) (setq a (cdr a))) ) ; Reset System variables (defun MODER () (repeat (length MLST) (setvar (caar MLST) (cadar MLST)) (setq MLST (cdr MLST)) ) ) ;****************** ANGLE CONVERTERS *************************** (defun DTR (a) (* pi (/ a 180.0)) ) (defun RTD (a) (/ (* a 180.0) pi) ) ;********************** CON-LST ******************************** ; Add new point to list of previous points (defun CON-LST (a d) (append l (list (polar pt1 a d))) ) ;******************* LINE SELECTION **************************** (defun PICK (prmpt / e) (setq e (entsel prmpt)) (if (null e) (pick prmpt) (cond ((/= (cdr (assoc 0 (entget (car e)))) "LINE") (prompt "\nError: Entity is a ") (princ (cdr (assoc 0 (entget (car e))))) (pick prmpt) ) (T (eval 'e) ) ) ) ) ;********************** MAIN PROGRAM **************************** (defun C:ROD-END (/ p1 p2 pt1 pt2 dist ang l) (modes '("BLIPMODE" "CMDECHO" "HIGHLIGHT" "ORTHOMODE")) (setvar "CMDECHO" 0) (setvar "HIGHLIGHT" 0) (setvar "ORTHOMODE" 0) (setq p1 (pick "\nSelect first line: ")) (setq p2 (pick "\nSelect second line: ")) (setvar "BLIPMODE" 0) (setq pt1 (osnap (cadr p1) "near")) (setq pt2 (inters (cdr (assoc 10 (entget (car p2)))) (cdr (assoc 11 (entget (car p2)))) pt1 (polar pt1 (+ (angle (cdr (assoc 10 (entget (car p1)))) (cdr (assoc 11 (entget (car p1)))) ) (dtr 90) ) 1 ) nil ) ) (command "CHANGE" (car p1) "" pt1) (command "CHANGE" (car p2) "" pt2) (setq dist (distance pt1 pt2) ang (angle pt1 pt2) l (list pt1) l (con-lst (- ang (dtr 31)) (* dist 0.29)) l (con-lst ang (* dist 0.5)) l (con-lst (+ ang (dtr 11.3)) (* dist 0.76)) l (append l (list pt2)) l (con-lst (- ang (dtr 11.3)) (* dist 0.76)) l (con-lst ang (* dist 0.5)) ) (command "PLINE") (foreach n l (command n)) (command "") (command "PEDIT" "L" "E" "T" (- (rtd ang) 90) "X" "F" "") (moder) (princ) )
  3. Merci bcp pour ta réponse super complète. J'avais essayé avec le underscore, mais pas devant les options...
  4. voici un lisp pour changer de calque en rentrant un nombre au clavier num. Il fonctionne super bien sur autocad UK mais pour la version française. Quelqu'un peut m'aider à le faire fonctionner en version française? (defun c:lay01 () (progn (setvar "cmdecho" 0) (command "layer" "s" "pe01" "") (setvar "cmdecho" 1) (princ))) (defun c:lay02 () (progn (setvar "cmdecho" 0) (command "layer" "s" "pe02" "") (setvar "cmdecho" 1) (princ))) (defun c:lay03 () (progn (setvar "cmdecho" 0) (command "layer" "s" "pe03" "") (setvar "cmdecho" 1) (princ))) (defun c:lay04 () (progn (setvar "cmdecho" 0) (command "layer" "s" "pe04" "") (setvar "cmdecho" 1) (princ))) (defun c:lay11 () (progn (setvar "cmdecho" 0) (command "layer" "s" "pe11" "") (setvar "cmdecho" 1) (princ))) (defun c:lay21 () (progn (setvar "cmdecho" 0) (command "layer" "s" "pe21" "") (setvar "cmdecho" 1) (princ))) (defun c:lay31 () (progn (setvar "cmdecho" 0) (command "layer" "s" "pe31" "") (setvar "cmdecho" 1) (princ))) (defun c:lay41 () (progn (setvar "cmdecho" 0) (command "layer" "s" "pe41" "") (setvar "cmdecho" 1) (princ))) (defun *ERROR* (msg) (if (/= msg "Function cancelled") (if (= msg "quit /exit abort") (princ) (princ (strcat "\nError: " msg)) ) (princ) ) );defun ERROR (princ)
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité