;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;幕匠LISP实验室;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;程序功能：设置线宽（输入）   [备注：]
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(DEFUN c:ww    ()            (xxx3)(XXX4))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun scale1(a) 
(IF(= a nil)
 (progn(if (= c nil)(setq  c   100.0))
       (setq rr1 c )
       (setq rr (rtos c 2 2 )) 
       (setq c (getreal (strcat "\n请输入比例<" rr ">:"))) 
       (if (= c  nil)(setq c  rr1))
       )
       (setq b c)
))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun scale()(scale1 t)                             
(prompt "\n比例1:b=1:")(prin1 b)(prompt " "))        
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun xxx3()
           (if (=  r1   nil) (setq  r1   2.0))
           (setq rr1 r1 )
           (setq rr (rtos r1 2 2 ))
           (setq r1 (getreal (strcat "请输入线宽<" rr ">:")))
           (if (= r1  nil)(setq r1  rr1))
           )
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(DEFUN XXX4()
         (command "undo" "g")
         (SETVAR "CMDECHO" 0)
         (SETQ ENT1 (SSGET))
         (setq i 0)
         (repeat (sslength ENT1)
          (setq ent(cdr(assoc 0(entget(setq entn(SSNAME ENT1 i))))))
          (if (= ent "LWPOLYLINE")(COMMAND "PEDIT"  entn  "W" r1  "")) 
          (if (or (= ent "ARC") (= ent "LINE")) (COMMAND "PEDIT" entn "Y" "W" r1  ""))
          (if (= ent "CIRCLE")
              (progn
              (SETQ m(entget(SSNAME ENT1 i)))
              (SETQ a1 (cdr(assoc '8 m )))
              (SETQ a2 (cdr(assoc '10 m)))
              (SETQ a3 (cdr(assoc '40 m)))
              (SETQ r2(+ (* a3 2) r1 ))
              (SETQ r3(- (* a3 2) r1 ))
              (command "erase" entn "")
              (COMMAND  "-layer" "set" a1 "" "color""Bylayer" "-LINETYPE""SET""Bylayer""" "donut"  r2  r3  a2  "")))  
          (setq i(+ i 1))
          );END-REPEAT
          )
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(DEFUN xxx6(xx)
  (command "undo" "g")
  (SETVAR "CMDECHO" 0)
  (SETQ T(* xx b))
  (SETQ ENT1 (SSGET))
  (setq i 0)
  (repeat (sslength ENT1)
          (setq ent(cdr(assoc 0(entget(setq entn(SSNAME ENT1 i))))))
          (if (= ent "LWPOLYLINE")(COMMAND "PEDIT"  entn  "W" T "")) 
          (if (or (= ent "ARC") (= ent "LINE")) (COMMAND "PEDIT" entn "Y" "W" T ""))
          (if (= ent "CIRCLE")
              (progn
              (SETQ m(entget(SSNAME ENT1 i)))
              (SETQ a1 (cdr(assoc '8  m   )))
              (SETQ a2 (cdr(assoc '10 m   )))
              (SETQ a3 (cdr(assoc '40 m   )))
              (SETQ r1(+ (* a3 2) t))
              (SETQ r2(- (* a3 2) t))
              (command "erase" entn "")
              (COMMAND  "-layer" "set" a1 "" "color""Bylayer" "-LINETYPE""SET""Bylayer""" "donut"  r1  r2  "non" a2  "")))  
              (setq i(+ i 1))))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(DEFUN xxx13()
       (prompt "\n自动设置层,字体,线形,标注样式;比例为 1:")(prin1 b)(prompt "。")
       (setq vvv(getstring"确认比例<YES>:"))
  (if (= vvv "")
  (progn
    (setq d (/ b 3.0))
    (command "-layer" "new" "1STRUCTURE"      "color" "4"   "1structure"   "" 
             "-layer" "new" "2COMPART"        "color" "2"   "2COMpart"     "" 
             "-layer" "new" "3FILL"           "color" "33"   "3FILL"      "" 
             "-layer" "new" "4DIM"            "color" "3"   "4DIM"       "" 
             "-layer" "new" "5TEXT"           "color" "221"   "5TEXT"      "" 
             "-layer" "new" "6AXES"           "color" "1"   "6AXES"      "" 
             "-layer" "new" "7ymj"            "color" "11"  "7ymj"       ""
             "-style" "dim"      "romans.shx,hztxt.shx"  0   "0.50" "0" "n" "n" "n"
             "-style" "font"     "txt.shx,ctxt.shx" 0   "0.60" "0" "n" "n" "n" 
             "-style" "standard" "simplex.shx,ctxt.shx" 0   "0.70" "0" "n" "n" "n" 
             "-style" "汉字"     "simplex.shx,hztxt2.shx" 0   "0.80" "0" "n" "n" "n" 
             "-style" "双实"     "romand.shx,st.shx"     0   "0.70" "0" "n" "n" "n" 
             "-style" "双空"     "complex.shx,st64f.shx"  0   "0.70" "0" "n" "n" "n"  
             "-linetype" "load" "acad_iso02w100" "" "" 
             "-linetype" "load" "acad_iso04w100" "" "" 
             "LTSCALE" d
             "-layer" "L" "acad_iso04w100"   "6AXES"      "" 
             "units" "2"  "0" "1" "0" "0" "n"
             "limits" "0,0"  "100000,80000"
             "zoom" "e"
             "-osnap" "end,int,mid"

             "COORDS" "2"
             "mirrtext"  "0" 
             "UCSICON" "OFF"
             "edgemode" "1"
             "fillmode" "1"
             "gripcolor" "2" "griphot" "1" "grips" "1"
             "chamfera" "0"  "chamferb" "0"

     )
;;;;Geometry
            (setvar "dimsd1"    0)
            (setvar "dimsd2"    0)
            (setvar "dimdle"    0)
            (setvar "dimdli"    9)
            (setvar "dimclrd"   3)

            (setvar "dimse1"    0)
            (setvar "dimse2"    0)
            (setvar "dimexe"    1)
            (setvar "dimexo"    3)
            (setvar "dimclre"   3)

            (setvar "dimsah"    1)
            (setvar "dimblk"   "_archtick")
            (setvar "dimblk1"  "_archtick")
            (setvar "dimblk2"  "_archtick")
            (setvar "dimasz"   1)
            (setvar "dimscale" b)

;;;;;;;format
            (setvar "dimupt"  0)
            (setvar "dimtofl" 1)
            (setvar "dimfit"  5)

            (setvar "dimtih"  0)
            (setvar "dimtoh"  0)
            (setvar "dimjust" 0)
            (setvar "dimtad"  1)

;;;;;;;Annotation
            (setvar "dimunit"  2)
            (setvar "dimaunit" 0)
            (setvar "dimadec" -1)
            (setvar "dimdec"   0)
            (setvar "dimaltd"  0)
            (setvar "dimlfac"  1)
            (setvar "dimtxsty" "dim")
            (setvar "dimtxt"  3.0)
            (setvar "dimgap"  0.7)
            (setvar "dimclrt"   3)
;;;;;;savestyle
            (command "dimstyle" "s" "line")

            (setvar "dimfit"    3)
            (setvar "dimsah"    1)
            (setvar "dimblk"   "_closed")
            (setvar "dimblk1"  "_closed")
            (setvar "dimblk2"  "_closed")
            (command "dimstyle" "s" "angler")
   (prompt "\n^_^祝你开心!加油哦!^_^")
);end-progn
   (prompt "\n请加载ACAD.LSP                     ")
   
);end-if
);end
