(load "subs")

 

;A Dummy Command

(defun c:adc ()

(prompt "Testing A Dummy Command"))

 

;Block At 0,0 - New

(defun c:b0 ()

(um)(h0)(c1)

(ans)

(setq bname (ustr 0 "\nenter block name" bname nil))

(ssc)

(command "block" bname "0,0,0" ss1 ""))

 

;Block At 0,0

(defun c:b00  ()

(um)(h0)(c1)

(ans)

(setq bname (ustr 0 "\nenter block name" bname nil))

(ssc)

(command "block" bname "y" "0,0,0" ss1 ""))

 

;Move Crossing Nea Per - Alt

(defun c:mnp ()

(prompt "move crossing from near to perpendicular...\n")(princ)

(command "move" "c" pause pause "" "near" pause "perp" pause)(princ))

 

;Move "w" Nea Per - Alt

(defun c:mwnp ()

(prompt "move window from near to perpendicular...\n")(princ)

(command "move" "w" pause pause "" "near" pause "perp" pause)(princ))

 

;Move Crossing Nea Per

(defun c:mj ()

(prompt "move crossing from near to perpendicular...\n")(princ)

(command "move" "c" pause pause "" "near" pause "perp" pause)(princ))

 

;Move "w" Nea Per

(defun c:mn ()

(prompt "move window from near to perpendicular...\n")(princ)

(command "move" "w" pause pause "" "near" pause "perp" pause)(princ))

 

;Move Crossing Qua Per

(defun c:mqp ()

(prompt "move window from quadrant to perpendicular...\n")(princ)

(command "move" "c" pause pause "" "quad" pause "perp" pause)(princ))

 

;Move Crossing Cen Mid

(defun c:mcm ()

(prompt "move window from center to midpoint...\n")(princ)

(command "move" "c" pause pause "" "cen" pause "mid" pause)(princ))

 

;Move Crossing Cen End

(defun c:mce ()

(prompt "move window from center to endpoint...\n")(princ)

(command "move" "c" pause pause "" "cen" pause     "end" pause)(princ))

 

;Move Crossing Int End

(defun c:mie ()

(prompt "move window from intersection to endpoint...\n")(princ)

(command "move" "c" pause pause "" "int" pause      "end" pause)(princ))

 

;Move Crossing End Cen

(defun c:mec ()

(prompt "move window from endpoint to center...\n")(princ)

(command "move" "c" pause pause "" "end" pause    "cen" pause)(princ))

 

;Move Crossing Ins Ins

(defun c:mss ()

(prompt "move window from insert to insert...\n")(princ)

(command "move" "c" pause pause "" "ins" pause      "ins" pause)(princ))

 

;Move Crossing Qua End

(defun c:mqe ()

(prompt "move window from quadrant to endpoint...\n")(princ)

(command "move" "c" pause pause "" "qua" pause    "end" pause)(princ))

 

;Move Crossing Qua Qua

(defun c:mqq ()

(prompt "move window from quadrant to quadrant...\n")(princ)

(command "move" "c" pause pause "" "qua" pause    "qua" pause)(princ))

 

;Move Crossing Ins End

(defun c:mse ()

(prompt "move window from insert to endpoint...\n")(princ)

(command "move" "c" pause pause "" "ins" pause      "end" pause)(princ))

 

;Move Crossing Mid End

(defun c:mme ()

(prompt "move window from midpoint to endpoint...\n")(princ)

(command "move" "c" pause pause "" "mid" pause     "end" pause)(princ))

 

;Move Crossing Mid Mid

(defun c:mmm ()

(prompt "move window from midpoint to midpoint...\n")(princ)

(command "move" "c" pause pause "" "mid" pause     "mid" pause)(princ))

 

;Move Crossing Mid Per

(defun c:mmp ()

(prompt "move window from midpoint to perpendicular...\n")(princ)

(command "move" "c" pause pause "" "mid" pause     "per" pause)(princ))

 

;Move Crossing Mid Cen

(defun c:mmc ()

(prompt "move window from midpoint to center...\n")(princ)

(command "move" "c" pause pause "" "mid" pause     "cen" pause)(princ))

 

;Move Crossing End Mid

(defun c:mem ()

(prompt "move window from endpoint to midpoint...\n")(princ)

(command "move" "c" pause pause "" "end" pause    "mid" pause)(princ))

 

;Move Crossing End Per

(defun c:mep ()

(prompt "move window from endpoint to perpendicular...\n")(princ)

(command "move" "c" pause pause "" "end" pause    "per" pause)(princ))

 

;Move Crossing Ins Per

(defun c:msp ()

(prompt "move window from insert to perpendicular...\n")(princ)

(command "move" "c" pause pause "" "ins" pause      "per" pause)(princ))

 

;Move Crossing Cen Per

(defun c:mcp ()

(prompt "move window from center to perpendicular...\n")(princ)

(command "move" "c" pause pause "" "cen" pause     "per" pause)(princ))

 

;Move Crossing Cen Int

(defun c:mci ()

(prompt "move window from center to intersection...\n")(princ)

(command "move" "c" pause pause "" "cen" pause     "int" pause)(princ))

 

;Move Crossing Ins Cen

(defun c:msc ()

(prompt "move window from insert to center...\n")(princ)

(command "move" "c" pause pause "" "ins" pause      "cen" pause)(princ))

 

;Quit, No Save

(defun c:q1 ()

(command "quit" "y"))

 

;Last To Current Layer

(defun c:tcc ()

(oe)(um)(c0)

(prompt "change last to current layer...")(princ)

(setq cla (getvar "clayer"))

(command "chprop" "l" "" "la" cla "")

(c1))

 

;Change To Current Layer

(defun c:tc ()

(oe)(um)(c0)

(prompt "change to current layer...")(princ)

(ans)

(setq cla (getvar "clayer"))

(setq i 0)(while (< i 100)

(command "chprop" "c" pause pause "" "la" cla "")

(setq i (1+ i)))

(c1))

 

;Layer Make Layer 'lay'

(defun c:mll ()

(oe)(um)(c0)

(prompt (strcat "making layer named " lay "..."))(princ)

(setq cno (uint 5 "" "enter color number for layer" cno))

(command "layer" "m" lay "")

(command "layer" "c" cno "" "")

(c1))

 

;Zoom Extents

(defun c:ze ()

(command "zoom" "e")(princ))

 

;Zoom Window

(defun c:zw ()

(command "zoom" "w")(princ))

 

;Zoom Previous

(defun c:zs ()

(command "zoom" "p")(princ))

 

;Line Angle A Length D

(defun c:dra ()

(oe)(um)(c0)(os0)

(prompt "line at ang a, length d...")

(ans)

(setq p1 (getpoint "point: "))

(setq aa a)

(dr)(setq ar a)

(setq a aa)

(setq p2 (polar p1 ar d))

(command "line" p1 p2 "")

(c1))

 

;Tablet

(defun c:tab ()

(c1)

(command "tablet")(princ))

 

;Copy Entlast From Insert

(defun c:cc ()

(um)(c0)(oe)

(prompt "copy last from insert point...")(princ)

(setq e1 (entlast))

(command "copy" e1 "" "0,0" "0,0")

(setq e2 (entlast))

(setq ed (entget e2))

(setq p1 (dxf 10 ed))

(setq p1 (trans p1 0 1))

(command "move" e2 "" p1 pause)(princ))

 

;Redo

(defun c:redo ()

(command "redo"))

 

;Rectangle with 'b' and 'd'

(defun c:rg ()

(um)(c0)

(ans)

(prompt "rectangle, enter two distances...")(princ)

(setq b (udist 0 "" "\nenter dist b" b nil))

(setq d (udist 0 "" "\nenter dist d" d nil))

(setq p1 (getpoint "select point to draw rectangle..."))

(setq d1 (/ b 2))

(setq d2 (/ d 2))

(setq p2 (polar p1 a1 d))

(setq p3 (polar p2 0 b))

(setq p4 (polar p3 a3 d))

(command "pline" p1 p2 p3 p4 "c" "")(princ)

(c1)(princ))

 

;Offset Last Line To Left

(defun c:jh ()

(oe)(c0)

(ans)

(prompt "offset last to left...")(princ)

(setq e1 (entlast))

(setq ed (entget e1))

(setq p1 (dxf 10 ed))

(setq p1 (trans p1 0 1))

(setq p2 (dxf 11 ed))

(setq p2 (trans p2 0 1))

(setq n1 (angle p1 p2))

(cond ((> n1 pi)

(entdel e1)(command "line" p2 p1 "")))

(cond ((= n1 pi)

(entdel e1)(command "line" p2 p1 "")))

(setq e1 (entlast))

(setq ed (entget e1))

(setq p1 (dxf 10 ed))

(setq p1 (trans p1 0 1))

(setq p2 (dxf 11 ed))

(setq p2 (trans p2 0 1))

(setq n1 (angle p1 p2))

(setq n19 (+ n1 a1))

(setq p3 (polar p1 n19 d))

(setq p3 (trans p3 0 1))

(setq p4 (polar p2 n19 d))

(setq p4 (trans p4 0 1))

(command "line" p3 p4 "")

(h1)(c1))

 

;Offset Last Line To Right

(defun c:hj ()

(oe)(c0)

(ans)

(prompt "offset last to right...")(princ)

(setq e1 (entlast))

(setq ed (entget e1))

(setq p1 (dxf 10 ed))

(setq p1 (trans p1 0 1))

(setq p2 (dxf 11 ed))

(setq p2 (trans p2 0 1))

(setq n1 (angle p1 p2))

(cond ((> n1 pi)

(entdel e1)

(command "line" p2 p1 "")))

(cond ((= n1 pi)

(entdel e1)

(command "line" p2 p1 "")))

(setq e1 (entlast))

(setq ed (entget e1))

(setq p1 (dxf 10 ed))

(setq p1 (trans p1 0 1))

(setq p2 (dxf 11 ed))

(setq p2 (trans p2 0 1))

(setq n1 (angle p1 p2))

(setq n19 (- n1 a1))

(setq p3 (polar p1 n19 d))

(setq p3 (trans p3 0 1))

(setq p4 (polar p2 n19 d))

(setq p4 (trans p4 0 1))

(command "line" p3 p4 "")

(h1)(c1))

 

;Set Crosshairs

(defun c:xh ()

(oe)(um)(c0)

(prompt "set crosshairs, pick line, pline...")(princ)

(near)

(setq t1 (getpoint))

(none)

(setq t2 (osnap t1 "end"))

(setq n1 (angle t1 t2))

(setvar "snapang" n1)

(o1))

 

;Set Scale Factor 'sf'

(defun c:ssf ()

(menucmd "s=sf")

(dc)

(setq sf (udist 0 "" "\nenter scale factor" sf nil))

(menucmd "s="))

 

;Stretch

(defun c:sr ()

(c1)

(command "stretch")(princ))

 

;Line D In Z Direction

(defun c:zdd ()

(oe)(um)(c0)

(prompt "line, distance d, z direction...")(princ)

(setq p1 (getpoint "pick point: "))

(setq x1 (car p1))

(setq y1 (cadr p1))

(setq p2 (list x1 y1 d))

(command "line" p1 p2 "")

(c1))

 

;Negative Angle A

(defun c:nga ()

(prompt "negative a...")(princ)

(setq a (- a (* a 2))))

 

;Negative D

(defun c:ng ()

(prompt "negative d...")(princ)

(setq d (- d (* d 2))))

 

;Scale To 'sf'

(defun c:scf ()

(oe)(um)(c0)

(prompt "scale to scale factor sf...")(princ)

(ssc)

(command "scale" ss1 "" pause sf)

(c1))

 

;Ddedit

(defun c:ddt ()

(command "ddedit"))

 

;Ddatte

(defun c:dda ()

(command "ddatte"))

 

;Romans Set

(defun c:rm ()

(oe)(um)(c0)

(prompt "textstyle, romans...")(princ)

(command "style" "romans" "romans" "" "" "" "" "" "" "")

(c1))

 

;Romand Set

(defun c:rmd ()

(oe)(um)(c0)

(prompt "textstyle, romand...")(princ)

(command "style" "romand" "romand" "" "" "" "" "" "" "")

(c1))

 

;Dist 'd' Set Inches 1/16ths

(defun c:cv ()

(if (= d1 nil) (setq d1 0))

(setq lu (getvar "lunits"))(setvar "lunits" 2)

(setq lp (getvar "luprec"))(setvar "luprec" 0)

(setq iin (udist 0 "" "\nenter inches" iin nil))

(setq six (udist 0 "" "\nenter 1/16ths" six nil))

(setvar "lunits" lu)

(setvar "luprec" lp)

(setq d4 (* six 0.0625))

(setq d (+ iin d4))

(setq dd (rtos d))

(setq ddis (rtos d 4 4))

(prompt (strcat dd " inches" "\tdist: " ddis))(princ))

 

;Offset Meters

(defun c:om ()

(dc)

(setq dm (udist 0 "" "\nEnter distance in meters" dm nil))

(ah)(setq d (* dm 3.2808 12))

(command "offset" d pause pause))

 

;Dist 'd' Set Meters

(defun c:sm ()

(dc)

(setq dm (udist 0 "" "\nEnter distance in meters" dm nil))

(setq d (* dm 3.2808 12)))

 

;Offset Millimeters

(defun c:omm ()

(dc)

(setq dmm (udist 0 "" "\nEnter distance in mm" dmm nil))

(ah)

(setq d (* dmm 0.0032808 12))

(command "offset" d pause pause))

 

;Dist 'd' Set Millimeters

(defun c:smm ()

(dc)

(setq dmm (udist 0 "" "\nEnter distance in mm" dmm nil))

(ah)

(setq d (* dmm 0.0032808 12)))

 

;Dist 'd' Set Feet

(defun c:ft ()

(setq lu (getvar "lunits"))(setvar "lunits" 2)

(setq lp (getvar "luprec"))(setvar "luprec" 0)

(setq feet (udist 0 "" "\nenter distance" feet nil))

(setvar "lunits" lu)

(setvar "luprec" lp)

(setq d (* feet 12))

(setq dd (rtos d))

(print d))

 

;Dist 'd' Set Feet Inches

(defun c:fi ()

(setq olderr *error* *error* err)

(if (= ftt nil) (setq ftt 0))

(if (= iin nil) (setq iin 0))

(setq lu (getvar "lunits"))(setvar "lunits" 2)

(setq lp (getvar "luprec"))(setvar "luprec" 0)

(setq ftt (udist 0 "" "\nenter feet" ftt nil))

(setq iin (udist 0 "" "\nenter inches" iin nil))

(setvar "lunits" lu)

(setvar "luprec" lp)

(setq d (* ftt 12))

(setq d (+ d iin))

(setq dd (rtos d))

(setq ddis (rtos d 4 4))

(prompt (strcat dd " inches" "\tdist: " ddis))(princ))

 

;Dist 'd' Set Feet Inches 1/16ths

(defun c:sdd ()

(setq olderr *error* *error* err)

(prompt "set distance d: feet, inches, sixteenths...")(princ)

(if (= d1 nil) (setq d1 0))

(setq lu (getvar "lunits"))(setvar "lunits" 2)

(setq pc (getvar "luprec"))(setvar "luprec" 0)

(setq d1 (udist 0 "" "\nenter feet" d1 nil))

(setq d2 (udist 0 "" "\nenter inches" d2 nil))

(setq d3 (udist 0 "" "\nenter 1/16ths" d3 nil))

(setvar "lunits" lu)

(setvar "luprec" pc)

(setq d (* d1 12))

(setq d (+ d d2))

(setq d4 (* d3 0.0625))

(setq d (+ d d4))

(setq dd (rtos d))

(setq ddis (rtos d 4 4))

(prompt (strcat dd " inches" "\tdist: " ddis))(princ))

 

;Set Block Name 'bname'

(defun c:nm ()

(oe)(um)(h0)(c0)

(setq bname (ustr1 0 "\nenter block name" bname nil))

(h1)(c1))

 

;Go From 10 While

(defun c:gi ()

(o0)

(while

(setq e1 (car (entsel)))

(setq ed (entget e1))

(setq t1 (dxf 10 ed))

(command "move" e1 "" t1 pause "")))

 

;Go From 11 While

(defun c:gw ()

(o0)

(while

(setq e1 (car (entsel)))

(setq ed (entget e1))

(setq t1 (dxf 11 ed))

(command "move" e1 "" t1 pause "")))

 

;Insert Bname

(defun c:ii ()

(setq olderr *error* *error* err)

(setq bname (ustr1 0 "\nenter block name" bname nil))

(command "osnap" "end,ins,cen")

(setq ip9 (getpoint "point: "))

(command "insert" bname ip9 "" "" "")

(none))

 

;Zoom 0.2x

(defun c:z2 ()

(setvar "regenmode" 1)

(command "zoom" "0.2x")(princ))

 

;Zoom 0.8x

(defun c:z8 ()

(setvar "regenmode" 1)

(command "zoom" "0.8x")(princ))

 

;Pick Insert for 'bname'

(defun c:pi ()

(oe)(um)(c0)

(prompt "pick insert name...")(princ)

(setq e1 (car (entsel)))

(setq ed (entget e1))

(setq bname (dxf 2 ed))

(setq sf (dxf 41 ed))

(setq ds (getvar "dimscale"))

(setq dbn (strcat "\n  insert name = " bname))

(setq dsf (strcat "  scale factor = " (rtos sf 2 pc)))

(setq dds (strcat "    dimscale = " (rtos ds 2 pc)))

(prompt dbn)(princ)

(prompt dsf)(princ)

(prompt dds)(princ)

(c1))

 

;Pick Insert for 'sf'

(defun c:psf()

(setq e1 (car (entsel)))

(setq ed (entget e1))

(setq asf (dxf 41 ed))

(setq sf (abs asf))

(print asf)

(print sf))

 

;Prompt Variables

(defun c:1 ()

(um)

(c0)

(setvar "highlight" 1)

(setvar "osmode" 0)

(setvar "snapang" 0)(princ)

(setq ds (getvar "dimscale"))

(setq th (getvar "textsize"))

(command "style" "" "" th "" "" "" "" "")

(setq td (* th 1.61905))

(setq dd (rtos d 2 pc))

(setq dds (rtos ds 2 pc))

(setq dth (rtos th 2 pc))

(setq dsf (rtos sf 2 pc))

(setq dmm (* d 25.4))

(setq ddmm (rtos dmm 2 pc))

(setq stra (rtos a 2 pc))

(setq dda (rtos d 4 pc))

(prompt (strcat "\n  textsize = " dth "\"" "  d = " dd ", " dda

", " ddmm "mm" "  angle = " stra "  bname: " bname "  sf = " dsf

"  dimscale = " dds))

(c1)(princ))

 

;Erase All

(defun c:ew ()

(command "undo" "m")

(ans)

(setq ss1 (ssget "x"))

(command "erase" ss1 ""))

 

;Erase Last

(defun c:er ()

(c0)

(prompt "erase last.")(princ)

(command "erase" "l" "")(princ))

 

;Type D In Decimal Units

(defun c:tyd ()

(oe)(um)(c0)

(setq th (getvar "textsize"))

(command "style" "" "" th "" "" "" "" "")

(ans)

(prompt "type d, decimals.")

(setq p1 (getvar "viewctr"))

(setq p1 (polar p1 a3 td))

(setq dd (rtos d 2 pc))

(command "text" "j" "m" p1 "" dd)(princ)

(c1))

 

;Type D In Architectural Units

(defun c:tya ()

(oe)(um)(c0)

(setq th (getvar "textsize"))

(command "style" "" "" th "" "" "" "" "")

(ans)

(prompt "type d, architectural.")

(setq p1 (getvar "viewctr"))

(setq dd (rtos d 4 pc))

(command "text" "j" "m" p1 "" dd)(princ)

(c1))

 

;Make Last

(defun c:k ()

(prompt "make last...")

(setq e1 (car (entsel)))

(command "copy" e1 "" "0,0" "0,0")

(setq e2 (entlast))

(entdel e1)

(redraw e2 1))

 

;Move Last Ortho Off

(defun c:n ()

(c0)

(prompt "move last, ortho off...")

(o0)

(command "move" "l" "")(princ))

 

;Move Last Ortho On

(defun c:j ()

(c0)

(prompt "move last, ortho on...")

(o1)

(command "move" "l" "")(princ))

 

;Angle Set Angle 'a' Degrees

(defun c:de ()

(setq olderr *error* *error* err)

(prompt "set degrees..")

(dc)

(setq a (udist 0 "" "\nangle in degrees.." a nil))

(setq ad a)

(dr)

(setq ar a)

(setq a ad)

(setq sa (sin ar))

(setq ca (cos ar))

(setq sbc (/ sa ca))

(setq tn (* sbc ar))

(ah))

 

;Circle Diameter D Pick Point

(defun c:cd ()

(prompt "circle, dia d...")(princ)

(command "circle" "end,ins,cen" pause "d" d))

 

;Dist 'd' Set Enter Value

(defun c:sd ()

(setq olderr *error* *error* err)

(command "osnap" "end,ins,cen,qua,int")

(setq d (udist 0 "" "\n\nenter distance d, inches" d nil))

(none)

(setq dd (rtos d 2 pc))

(setq dmm (* d 25.4))

(setq ddmm (rtos dmm 2 pc))

(setq stra (rtos a 2 pc))

(setq dda (rtos d 4 pc))

(setq tx1 (strcat "  d = " dd "\""  "  " dda "  " ddmm "mm"))

(prompt tx1)(princ))

 

;Copy

(defun c:c ()

(command "copy")(princ))

 

;Circle

(defun c:cr ()

(command "circle")(princ))

 

;Circle On Line As Diameter

(defun c:cdd ()

(oe)(um)(h0)(c0)

(ans)

(near)

(setq t1 (getpoint "point: "))

(none)

(setq t2 (osnap t1 "end"))

(setq t3 (osnap t1 "mid"))

(setq d1 (distance t2 t3))

(setq d2 (* d1 2))

(setq n1 (angle t1 t2))

(setq n2 (angle t2 t1))

(setq t5 (polar t2 n2 d2))

(setq p1 t2)

(setq p2 t5)

(setq n1 (angle p1 p2))

(setq d1 (distance p1 p2))

(setq n1 (angle p1 p2))

(setq d2 (/ d1 2.0))

(setq p3 (polar p1 n1 d2))

(command "circle" p3 d2))

 

;Dim Horizontal

(defun c:dh ()

(command "dim" "hor" "qua,end,int" pause "qua,end,int" pause pause "" "exit")(princ))

 

;Dim Vertical

(defun c:dv ()

(command "dim" "ver" "qua,end,int" pause "qua,end,int" pause pause "" "exit")(princ))

 

;Dtext Mid Just

(defun c:dtt ()

(command "dtext" "j" "m" pause ""))

 

;Dtext Left

(defun c:dx ()

(command "dtext" pause ""))

 

;Dimscale Command

(defun c:dm ()

(setq ds (getvar "dimscale"))

(dc)

(setq ds (udist 0 "" "\nenter new value for dimscale" ds nil))

(ah)

(setvar "dimscale" ds)(princ))

 

;Clipboard Restore From Memory

(defun c:3e ()

(oe)(um)(c0)

(prompt "restore entities from memory.")(princ)

(foreach en enlist

(entdel en))(princ)

(c1))

 

;Clipboard Send Entities To Memory

(defun c:e3 ()

(oe)(um)(c0)

(setq enlist nil)

(prompt "send entities to memory...")(princ)

(ssc)

(setq i 0)

(while (< i n)

(setq en (ssname ss1 i))

(setq enlist (append enlist (list en)))

(setq i (+ 1 i)))

(foreach en enlist

(entdel en))

(c1))

 

;Text Height To Zero Set

(defun c:ht0 ()

(command "style" "" "" "0" "" "" "" "" ""))

 

;Set New Text Height

(defun c:ht ()

(setq th (getvar "textsize"))

(setq th (udist 0 "" "\nenter new text height" th nil))

(setvar "textsize" th)

(command "style" "" "" th "" "" "" "" "")(sdt))

 

;Units Set Decimal

(defun c:dec ()

(prompt "decimal units.")(princ)

(setvar "lunits" 2)(princ))

 

;Units Set Architectural

(defun c:ah ()

(prompt "architectural units.")(princ)

(setvar "lunits" 4)(princ))

 

;Set B To D

(defun c:sbd ()

(setq olderr *error* *error* err)

(setq b d))

 

;Line From End End

(defun c:ee ()

(prompt "line from end to end...")(princ)

(command "line" "end" pause "end" pause "")(princ))

 

;View Restore

(defun c:vr ()

(setvar "regenmode" 1)

(setq vi (ustr1 0 "\nenter view name" vi nil))

(command "view" "r" vi))

 

;View Save

(defun c:vs ()

(setq vi (ustr1 0 "\nenter view name" vi nil))

(command "view" "s" vi))

 

;File Save

(defun c:fs ()

(command "save")(princ))

 

;Drawing Name

(defun c:gn ()

(setq dw (getvar "dwgname"))

(setq dww (getvar "dwgprefix"))

(setq ttx (strcat dww dw))

(prompt (strcat "current drawing name: " ttx))(princ))

 

;Undo

(defun c:u ()

(command "undo"))

 

;Undo Back

(defun c:ub ()

(command "undo" "b")(princ))

 

;Move Entlast From Insert

(defun c:nn ()

(setq olderr *error* *error* err)

(command "undo" "m")

(o0)

(uw)

(setq e1 (entlast))

(setq ed (entget e1))

(setq p1 (dxf 10 ed))

(command "move" e1 "" p1 "end,ins,cen" pause)

(none))

 

;Make Layers 1-9 With Colors 1-9

(defun c:mla ()

(command "undo" "m")

(setq i 1)

(setq n 10)

(command "layer" "t" "*" "" "")

(command "layer" "on" "*" "")

(while (< i n)

(setq ena i)

(setq namelist (append namelist (list ena)))

(setq i (+ 1 i)))

(foreach ena namelist

(command "layer" "m" ena "")

(command "layer" "c" ena "" "")))

 

;Make Layers 1-9 With Lines

(defun c:mlal ()

(command "undo" "m")

(ans)

(setq i 1)

(setq n 10)

(command "layer" "t" "*" "" "")

(command "layer" "on" "*" "")

(while (< i n)

(setq ena i)

(setq namelist (append namelist (list ena)))

(setq i (+ 1 i)))

(foreach ena namelist

(command "layer" "m" ena "")

(command "layer" "c" ena "" ""))

(setq p1 (getvar "viewctr"))

(setq i 0)

(while (< i n)

(setq ena i)

(command "layer" "s" ena "")

(setq p2 (polar p1 0 1.0))

(command "line" p1 p2 "")

(setq p1 (polar p1 a3 0.25))

(setq i (+ 1 i))))

 

;Set Layer Variable 'lay'

(defun c:2 ()

(um)

(setq lay (ustr1 0 "set layer variable 'lay'" lay nil)))

 

;Set Layer 1

(defun c:21 ()

(command "layer" "t" "1" "")

(command "layer" "set" "1" ""))

 

;Set Layer 2

(defun c:32 ()

(command "layer" "t" "2" "")

(command "layer" "set" "2" ""))

 

;Set Layer 3

(defun c:43 ()

(command "layer" "t" "3" "")

(command "layer" "set" "3" ""))

 

;Set Layer 4

(defun c:54 ()

(command "layer" "t" "4" "")

(command "layer" "set" "4" ""))

 

;Set Layer 5

(defun c:65 ()

(command "layer" "t" "5" "")

(command "layer" "set" "5" ""))

 

;Set Layer 6

(defun c:76 ()

(command "layer" "t" "6" "")

(command "layer" "set" "6" ""))

 

;Set Layer 7

(defun c:87 ()

(command "layer" "t" "7" "")

(command "layer" "set" "7" ""))

 

;Set Layer 8

(defun c:98 ()

(command "layer" "t" "8" "")

(command "layer" "set" "8" ""))

 

;Set Layer 9

(defun c:09 ()

(command "layer" "t" "9" "")

(command "layer" "set" "9" ""))

 

;Change To Layer 1

(defun c:12 ()

(setq p1 (getpoint "change to lay 1..."))

(setq lay "1")

(command "chprop" "c" p1 pause "" "la" lay ""))

 

;Change To Layer 2

(defun c:23 ()

(setq p1 (getpoint "change to lay 2..."))

(setq lay "2")

(command "chprop" "c" p1 pause "" "la" lay ""))

 

;Change To Layer 3

(defun c:34 ()

(setq p1 (getpoint "change to lay 3..."))

(setq lay "3")

(command "chprop" "c" p1 pause "" "la" lay ""))

 

;Change To Layer 4

(defun c:45 ()

(setq p1 (getpoint "change to lay 4..."))

(setq lay "4")

(command "chprop" "c" p1 pause "" "la" lay ""))

 

;Change To Layer 5

(defun c:56 ()

(setq p1 (getpoint "change to lay 5..."))

(setq lay "5")

(command "chprop" "c" p1 pause "" "la" lay ""))

 

;Change To Layer 6

(defun c:67 ()

(setq p1 (getpoint "change to lay 6..."))

(setq lay "6")

(command "chprop" "c" p1 pause "" "la" lay ""))

 

;Change To Layer 7

(defun c:78 ()

(setq p1 (getpoint "change to lay 7..."))

(setq lay "7")

(command "chprop" "c" p1 pause "" "la" lay ""))

 

;Change To Layer 8

(defun c:89 ()

(setq p1 (getpoint "change to lay 8..."))

(setq lay "8")

(command "chprop" "c" p1 pause "" "la" lay ""))

 

;Change To Layer 9

(defun c:90 ()

(setq p1 (getpoint "change to lay 9..."))

(setq lay "9")

(command "chprop" "c" p1 pause "" "la" lay ""))

 

;Erase Crossing

(defun c:5 ()

(command "undo" "m")

(prompt "  erase crossing...\n")(princ)

(setq i 0)(while (< i 100)

(command "erase" "c" pause pause "")

(setq i (1+ i))))

 

;Change To 'lay' Crossing

(defun c:3 ()

(command "undo" "m")

(prompt (strcat "\n   change to layer " lay " with repeating crossing windows...\n"))(princ)

(setq i 0)(while (< i 100)

(command "chprop" "c" pause pause "" "la" lay "")

(setq i (1+ i))))

 

;Layer On *

(defun c:7 ()

(command "layer" "on" "*" "")(princ))

 

;Layer Off *

(defun c:9 ()

(command "layer" "off" "*" "" "")(princ))

 

;Layer Set Layer Pick

(defun c:8 ()

(prompt "   set layer by picking an object...\n")(princ)

(setq ed (entget (car (nentsel))))

(setq lay (dxf 8 ed))(command "layer" "s" lay ""))

 

 

;Layer Change To 'lay' Single

(defun c:tl ()

(command "undo" "m")

(prompt (strcat "\n   change to layer " lay " one at a time...\n"))(princ)

(while

(setq e1 (car (entsel)))

(command "chprop" e1 "" "la" lay "")))

 

;Copy To Layer 'lay' Single

(defun c:tll ()

(command "undo" "m")

(prompt (strcat "\n   copy and change to layer " lay " one at a time...\n"))(princ)

(while

(setq e1 (car (entsel)))

(command "copy" e1 "" "0,0" "0,0")

(setq e1 (entlast))

(command "chprop" e1 "" "la" lay "")))

 

;Copy To Layer 'lay' Crossing

(defun c:ttl ()

(command "undo" "m")

(prompt (strcat "\n   copy and change to layer " lay))(princ)

(ssc)

(command "copy" "p" "" "0,0" "0,0")

(command "chprop" "p" "" "la" lay ""))

 

;Set Layer 0

(defun c:0 ()

(command "layer" "t" "0" "")

(command "layer" "set" "0" ""))

 

;Layer Off Pick

(defun c:- ()

(prompt "   turn a layer off by picking an object...\n")(princ)

(setq ed (entget (car (nentsel))))

(setq lla (dxf 8 ed))

(setq cla (getvar "clayer"))

(cond ((= lla cla)

(command "layer" "t" "0" "" "")

(command "layer" "on" "0" "" "")

(command "layer" "s" "0" "" "")))

(command "layer" "off" lla ""))

 

;Turn Layer 'lay' Off

(defun c:-- ()

(setq cla (getvar "clayer"))

(cond ((= lay cla)

(command "layer" "t" "0" "" "")

(command "layer" "on" "0" "" "")

(command "layer" "s" "0" "" "")))

(command "layer" "off" lay "" ""))

 

;Change To Layer 0

(defun c:0- ()

(setq p1 (getpoint "change to lay 0..."))

(setq lay "0")

(command "chprop" "c" p1 pause "" "la" lay ""))

 

;Set Layer 0 - Alt

(defun c:-0 ()

(command "layer" "t" "0" "")

(command "layer" "set" "0" ""))

 

;Layer On 'lay' Only

(defun c:= ()

(prompt "   keep only one layer on by selecting an object...\n")(princ)

(setq ed (entget (car (nentsel))))

(setq lay (dxf 8 ed))(command "layer" "s" lay "")

(command "layer" "off" "*" "" ""))

 

;Keep Layer 'lay' Only

(defun c:== ()

(command "layer" "t" lay "" "")

(command "layer" "on" lay "" "")

(command "layer" "s" lay "")

(command "layer" "off" "*" "" ""))

 

;Line Ortho Off

(defun c:\ ()

(c0)

(prompt "line, ortho off...")

(o0)(command "line")(c1)(princ))

 

;Line Ortho On

(defun c:] ()

(c0)

(prompt "line, ortho on...")

(o1)

(command "line")(c1)(princ))

 

;Explode One

(defun c:[ ()

(prompt "explode one...")(princ)

(command "explode" pause "")(princ))

 

;Explode Last

(defun c:[[ ()

(oe)(um)(c0)

(prompt "explode last...")(princ)

(command "explode" "l" "")(princ)

(c1))

 

;Align Crossing

(defun c:ac ()

(oe)(um)(h0)(c0)

(prompt "..align crossing..")

(setq sva a)

(ans)

(near)

(setq t1 (getpoint "point: "))

(none)

(setq t2 (osnap t1 "end"))

(setq tm (osnap t1 "mid"))

(setq n1 (angle t1 t2))

(setq t3 (polar t1 0 0.1))

(setq ss1 (ssget "c" t1 t3))

(setq s1 (ssname ss1 0))

(near)

(setq t4 (getpoint "point: "))

(none)

(setq t5 (osnap t4 "end"))

(setq n2 (angle t4 t5))

(setq n2 (- n2 n1))

(setq a n2)

(rd)

(setq t0 t5)

(setq e 1)

(while e

(ssc)

(command "rotate" ss1 "" t2 a)

(command "move" ss1 "" t2 t5))

(h1)(c1))

 

;Align Text Horizontally Left Just

(defun c:y6 ()

(um)(h0)(c0)

(command "osnap" "ins,cen")

(setq p1 (getpoint "point: "))

(none)

(ssc)

(setq i 0)(while (< i n)

(setq s1 (ssname ss1 i))

(setq p2 (dxf 10 (entget s1)))

(setq p3 (list (car p2) (cadr p1) 0.0))

(command "move" s1 "" p2 p3)

(setq i (1+ i)))

(h1)(c1))

 

;Align Text Horizontally Mid Just

(defun c:y6m ()

(um)(h0)(c0)

(ans)

(command "osnap" "insert")

(setq p1 (getpoint "point: "))

(none)

(ssc)

(setq i 0)(while (< i n)

(setq s1 (ssname ss1 i))

(setq p2 (dxf 11 (entget s1)))

(setq p3 (list (car p2) (cadr p1) 0.0))

(command "move" s1 "" p2 p3)

(setq i (1+ i)))

(h1)(c1))

 

;Layer Off 1

(defun c:-1 ()

(command "layer" "s" "0" "")

(command "layer" "off" "1" "" ""))

 

;Layer Off 2

(defun c:-2 ()

(command "layer" "s" "0" "")

(command "layer" "off" "2" "" ""))

 

;Layer Off 3

(defun c:-3 ()

(command "layer" "s" "0" "")

(command "layer" "off" "3" "" ""))

 

;Layer Off 4

(defun c:-4 ()

(command "layer" "s" "0" "")

(command "layer" "off" "4" "" ""))

 

;Layer Off 5

(defun c:-5 ()

(command "layer" "s" "0" "")

(command "layer" "off" "5" "" ""))

 

;Layer Off 6

(defun c:-6 ()

(command "layer" "s" "0" "")

(command "layer" "off" "6" "" ""))

 

;Layer Off 7

(defun c:-7 ()

(command "layer" "s" "0" "")

(command "layer" "off" "7" "" ""))

 

;Layer Off 8

(defun c:-8 ()

(command "layer" "s" "0" "")

(command "layer" "off" "8" "" ""))

 

;Layer Off 9

(defun c:-9 ()

(command "layer" "s" "0" "")

(command "layer" "off" "9" "" ""))

 

;Layer Off 0

(defun c:-00 ()

(command "undo" "m")

(command "layer" "u" "defpoints" "" "")

(command "layer" "t" "defpoints" "" "")

(command "layer" "on" "defpoints" "")

(command "layer" "s" "defpoints" "" "")

(command "layer" "off" "0" "" ""))

 

;Layer Off Hidden

(defun c:-hi ()

(command "layer" "s" "0" "")

(command "layer" "off" "hidden" "" ""))

 

;Layer Off Hatch

(defun c:-h ()

(command "layer" "off" "hatch" "" ""))

 

;Layer Off Center

(defun c:-ce ()

(command "layer" "off" "center" "" ""))

 

;Keep Layer 1 Only

(defun c:=1 ()

(command "layer" "t" "1" "" "")

(command "layer" "s" "1" "" "")

(command "layer" "off" "*" "" ""))

 

;Keep Layer 2 Only

(defun c:=2 ()

(command "layer" "t" "2" "" "")

(command "layer" "s" "2" "" "")

(command "layer" "off" "*" "" ""))

 

;Keep Layer 3 Only

(defun c:=3 ()

(command "layer" "t" "3" "" "")

(command "layer" "s" "3" "" "")

(command "layer" "off" "*" "" ""))

 

;Keep Layer 4 Only

(defun c:=4 ()

(command "layer" "t" "4" "" "")

(command "layer" "s" "4" "" "")

(command "layer" "off" "*" "" ""))

 

;Keep Layer 5 Only

(defun c:=5 ()

(command "layer" "t" "5" "" "")

(command "layer" "s" "5" "" "")

(command "layer" "off" "*" "" ""))

 

;Keep Layer 6 Only

(defun c:=6 ()

(command "layer" "t" "6" "" "")

(command "layer" "s" "6" "" "")

(command "layer" "off" "*" "" ""))

 

;Keep Layer 7 Only

(defun c:=7 ()

(command "layer" "t" "7" "" "")

(command "layer" "s" "7" "" "")

(command "layer" "off" "*" "" ""))

 

;Keep Layer 8 Only

(defun c:=8 ()

(command "layer" "t" "8" "" "")

(command "layer" "s" "8" "" "")

(command "layer" "off" "*" "" ""))

 

;Keep Layer 9 Only

(defun c:=9 ()

(command "layer" "t" "9" "" "")

(command "layer" "s" "9" "" "")

(command "layer" "off" "*" "" ""))

 

;Keep 0 Layer Only

(defun c:=0 ()

(command "layer" "t" "0" "" "")

(command "layer" "s" "0" "" "")

(command "layer" "off" "*" "" ""))

 

;Keep Center Layer Only

(defun c:=ce ()

(command "layer" "t" "center" "" "")

(command "layer" "s" "center" "" "")

(command "layer" "off" "*" "" ""))

 

;Move Window End End 8o

(defun c:zc ()

(command "move" "w" pause pause "" "end" pause "end" pause))

 

;Copy Window End End 8o

(defun c:cz ()

(command "copy" "w" pause pause "" "end" pause "end" pause))

 

;pan d

(defun c:pn ()

(command "undo" "m")

(ans)

(setq p1 (list 0 0 0))

(setq p2 (polar p1 0 d))

(command "pan" p1 p2))

 

;3d Ready Command

(defun c:3s ()

(setq olderr *error* *error* err)

(os0)

(command "undo" "m")

(um)

(command "ucs" "d" "*")

(uw)

(command "vpoint" "-1,-1,1")

(command "view" "s" "i")

(command "ucs" "3" "" "1,0,0" "0,0,1" "ucs" "s" "front")

(command "plan" "")

(command "zoom" "0.7x")

(command "view" "s" "f")

(uw)

(command "ucs" "3" "" "0,-1,0" "0,0,1" "ucs" "s" "left")

(command "plan" "")

(command "zoom" "0.7x")

(command "view" "s" "l")

(uw)

(command "ucs" "3" "" "1,0,0" "0,1,0" "ucs" "s" "top")

(command "plan" "")

(command "zoom" "0.7x")

(command "view" "s" "r")

(command "vpoint" "r" "45" "15")

(command "zoom" "0.7x")

(command "view" "s" "4")

(command "vpoint" "r" "135" "15")

(command "zoom" "0.7x")

(command "view" "s" "3")

(command "vpoint" "r" "225" "15")

(command "zoom" "0.7x")

(command "view" "s" "w")

(uw))

 

;pline rect, gl.lsp

(defun c:gt ()

(setq p1 (getpoint "First corner: "))

(setq p3 (getpoint "Other corner: "))

(setq p2 (list (car p1) (cadr p3) 0))

(setq p4 (list (car p3) (cadr p1) 0))

(command "pline" p1 p2 p3 p4 "c" ""))

 

;Dist Pick Line, sets d

(defun c:p ()

(setq olderr *error* *error* err)

(um)(h0)(c0)

(ans)

(graphscr)

(near)

(setq t1 (getpoint "Point: "))

(none)

(setq p1 (osnap t1 "end"))

(setq t3 (osnap t1 "mid"))

(setq d1 (distance p1 t3))

(setq d2 (* d1 2))

(setq n1 (angle t1 p1))

(setq b (bangle t1 p1))

(setq a b)(rd)

(setq bd a)

(setq n2 (angle p1 t1))

(setq a n1)

(setq p2 (polar p1 n2 d2))

(setq d (distance p1 p2))

(grdraw p1 p2 col)

(prompt (strcat "\n\t " (rtos d 2 4) "\""))(princ)

(prompt (strcat "   " (rtos d 4 pc)))(princ)

(setq dm (* d 25.4))

(prompt (strcat "   " (rtos dm 2 4) "mm"))(princ)

(setq ar a)(rd)               ;ar, ad angles..

(setq ad a)

(setq dad (rtos a 2 4))

(prompt (strcat "   Angle: " dad))(princ)

(setq n1 (- 90.0 a))

(setq dn1 (rtos n1 2 2))

(prompt (strcat "   90 - Angle: " dn1))(princ)

(prompt (strcat "   " (rtos bd 2 pc)))(princ))

 

;Extrude d using last pline or region

(defun c:ex ()

(setq olderr *error* *error* err)

(um)(h0)(c1)

(ans)

(prompt "..extrude last..")

(setq e1 (entlast))

(command "extrude" e1 "" d ""))

 

;Elevation Pick

(defun c:evv ()

(setq olderr *error* *error* err)

(um)(h0)(c1)

(ans)

(command "osnap" "cen,end,ins")

(setq p1 (getpoint "End,cen,ins  point: \n"))

(none)

(setq n1 (caddr p1))

(setq n1m (* n1 25.4))

(setq dev (caddr p1))

(setq x1 (car p1))

(setq y1 (cadr p1))

(setq z1 (caddr p1))

(setq x3 (* x1 0.0254))

(setq y3 (* y1 0.0254))

(setq z3 (* z1 0.0254))

(setq ddev (rtos dev 2 2))

(setq evh (rtos dev 4 4))

(setq devh (strcat evh ", " ddev))

(c0)

(prompt (strcat "\n" devh))(princ)

(c1)

(setq d dev)

(prompt (strcat "\n  Elevation current ucs evh = " (rtos dev 2 pc)))(princ)

(prompt (strcat "\n  Elevation current ucs evh = " (rtos dev 4 pc)))(princ)

(princ))

 

;Ucs left

(defun c:ul ()

(command "ucs" "r" "left"))

 

;Ucs top

(defun c:ut ()

(command "ucs" "r" "top"))

 

 

;Ucs front

(defun c:uf ()

(command "ucs" "r" "front"))

 

;Hide

(defun c:hg ()

(setq olderr *error* *error* err)

(command "hide"))

 

;Ucs View

(defun c:uv ()

(setq olderr *error* *error* err)

(command "ucs" "v"))

 

;List Views

(defun c:vu ()

(setq olderr *error* *error* err)

(command "view" "?" ""))

 

;Views List

(defun c:vu ()

(setq olderr *error* *error* err)

(command "view" "?" ""))

 

;Ucs Restore

(defun c:ur ()

(setq olderr *error* *error* err)

(setvar "regenmode" 1)

(setq uc (ustr 0 "\nRestore ucs name" uc nil))

(command "ucs" "r" uc))

 

;Ucs Save

(defun c:us ()

(setq olderr *error* *error* err)

(setq uc (ustr 0 "\nSave ucs name" uc nil))

(command "ucs" "s" uc))

 

;horizontal at view center

(defun c:hv ()

(um)

(ans)

(none)

(setq ar 0)

(setq br (+ ar pi))

(setq p3 (getvar "viewctr"))

(setq d2 (/ d 2))

(setq p1 (polar p3 br d2))

(setq p2 (polar p3 ar d2))

(command "line" p1 p2 ""))

 

 

;read file,  rf.lsp

(defun c:rf ()

(um)(princ)

(htt)

(sdt)(ans)

(prompt "\n..mid just..")

(setq fln (ustr 0 "\nFile name" fln nil))

(setq p1 (getpoint "Enter point: "))

(setq f (open fln "r"))

  (setq e 1)

  (while e

    (setq s (read-line f))

    (if (= s nil) (setq e nil))

  (command "text" "j" "m" p1 "" s)

  (setq p1 (polar p1 a3 td)))

  (close f))

 

;rotate last from ins

(defun c:kll ()

(command "undo" "m")

(o0)

(setq e1 (entlast))

(setq ed (entget e1))

(command "ucs" "e" e1)

(command "line" "0,0,0" "*0,0,0" "")

(setq e2 (entlast))

(setq ed2 (entget e2))

(setq p2 (dxf 10 ed2))

(entdel e2)

(up)

(setq p2 (trans p2 0 1))

(command "rotate" e1 "" p2 -90)

(h1)(c1))

 

;rotate last from 10

(defun c:kl ()

(setq e1 (entlast))

(setq ed (entget e1))

(setq p2 (dxf 10 ed))

(setq p2 (trans p2 0 1))

(command "rotate" e1 "" p2 "-90"))

 

;rotate last from 11

(defun c:df ()

(setq e1 (entlast))

(setq ed (entget e1))

(setq p2 (dxf 11 ed))

(setq p2 (trans p2 0 1))

(command "rotate" e1 "" p2 "-90"))

 

(princ "...basic...")(princ)