请求帮忙,工作需求可否达到
因为每天都要用到此图 希望将此实体转变成代码 要用时输代码转出实体。也同时能学到方法。恳求帮忙(defun c:aa ( / lst lst1 lst2 name pt x)
(setq lst1 '(((0 . "LINE") (8 . "图层2")
(62 . 1)
(10 0.0 -63.8801 0.0)
(11 0.0 63.8801 0.0)
)
((0 . "LINE") (8 . "图层2")
(62 . 1)
(10 -63.8801 0.0)
(11 63.8801 0.0)
)
((0 . "LWPOLYLINE") (100 . "AcDbEntity")
(67 . 0)
(8 . "01")
(100 . "AcDbPolyline")
(90 . 10)
(70 . 1)
(43 . 0.0)
(38 . 0.0)
(39 . 0.0)
(10 36.4558 16.6569)
(10 25.4558 5.65685)
(10 25.4558 -5.65685)
(10 36.4558 -16.6569)
(10 42.1127 -19.0)
(10 45.6946 -19.0)
(10 53.4724 -12.8723)
(10 53.4724 12.8723)
(10 45.6946 19.0)
(10 42.1127 19.0)
)
((0 . "LWPOLYLINE") (100 . "AcDbEntity")
(8 . "01")
(100 . "AcDbPolyline")
(90 . 8)
(70 . 1)
(43 . 0.0)
(38 . 0.0)
(39 . 0.0)
(10 -8.37158 14.5)
(10 -1.44338 10.5)
(10 1.44338 10.5)
(10 8.37158 14.5)
(10 18.4752 32.0)
(10 11.547 44.0)
(10 -11.547 44.0)
(10 -18.4752 32.0)
)
((0 . "LWPOLYLINE") (100 . "AcDbEntity")
(8 . "01")
(62 . 3)
(6 . "DASHED")
(48 . 5.0)
(100 . "AcDbPolyline")
(90 . 3)
(70 . 0)
(43 . 0.0)
(38 . 0.0)
(39 . 0.0)
(10 19.0526 0.0)
(10 29.7176 18.4724)
(10 40.078 21.6988)
)
((0 . "LWPOLYLINE") (100 . "AcDbEntity")
(8 . "01")
(62 . 3)
(6 . "DASHED")
(48 . 5.0)
(100 . "AcDbPolyline")
(90 . 2)
(70 . 0)
(43 . 0.0)
(38 . 0.0)
(39 . 0.0)
(10 47.9778 18.6673)
(10 18.1664 40.4927)
)
((0 . "LINE") (100 . "AcDbEntity")
(8 . "01")
(62 . 3)
(6 . "DASHED")
(48 . 5.0)
(100 . "AcDbLine")
(10 14.4338 0.0)
(11 27.0525 21.8563 0.0)
(210 0.0 0.0 1.0)
)
((0 . "ARC") (100 . "AcDbEntity")
(8 . "01")
(62 . 3)
(6 . "DASHED")
(48 . 5.0)
(100 . "AcDbCircle")
(10 20.1243 25.8563 0.0)
(40 . 8.0)
(210 0.0 0.0 1.0)
(100 . "AcDbArc")
(50 . 5.75959)
(51 . 0.80755)
)
)
)
(setq lst2 '(((0 . "LINE") (8 . "图层2")
(62 . 1)
(10 0.0 -63.8801 0.0)
(11 0.0 63.8801 0.0)
)
((0 . "LINE") (8 . "图层2")
(62 . 1)
(10 -63.8801 0.0 0.0)
(11 63.8801 0.0 0.0)
)
((0 . "LINE") (8 . "0")
(62 . 1)
(10 0.0 0.0 0.0)
(11 40.1871 40.1871 0.0)
)
((0 . "LWPOLYLINE") (100 . "AcDbEntity")
(8 . "01")
(100 . "AcDbPolyline")
(90 . 10)
(70 . 1)
(43 . 0.0)
(38 . 0.0)
(39 . 0.0)
(10 -12.0 52.0)
(10 12.0 52.0)
(10 20.0 44.0)
(10 20.0 37.4558)
(10 17.6569 31.799)
(10 5.65685 19.799)
(10 -5.65685 19.799)
(10 -17.6569 31.799)
(10 -20.0 37.4558)
(10 -20.0 44.0)
)
((0 . "LWPOLYLINE") (100 . "AcDbEntity")
(8 . "01")
(100 . "AcDbPolyline")
(90 . 10)
(70 . 1)
(43 . 0.0)
(38 . 0.0)
(39 . 0.0)
(10 52.0 -12.0)
(10 52.0 12.0)
(10 44.0 20.0)
(10 37.4558 20.0)
(10 31.799 17.6569)
(10 19.799 5.65685)
(10 19.799 -5.65685)
(10 31.799 -17.6569)
(10 37.4558 -20.0)
(10 44.0 -20.0)
)
((0 . "LWPOLYLINE") (100 . "AcDbEntity")
(8 . "01")
(62 . 3)
(6 . "DASHED")
(48 . 5.0)
(100 . "AcDbPolyline")
(90 . 3)
(70 . 0)
(43 . 0.0)
(38 . 0.0)
(39 . 0.0)
(10 36.8789 25.5316)
(10 27.1379 24.3095)
(10 2.82843 0.0)
)
((0 . "LWPOLYLINE") (100 . "AcDbEntity")
(8 . "01")
(62 . 3)
(6 . "DASHED")
(48 . 5.0)
(100 . "AcDbPolyline")
(90 . 4)
(70 . 0)
(43 . 0.0)
(38 . 0.0)
(39 . 0.0)
(10 18.879 48.0841)
(10 28.7177 31.5125)
(10 31.5125 28.7177)
(10 48.0841 18.879)
)
((0 . "LWPOLYLINE") (100 . "AcDbEntity")
(8 . "01")
(62 . 3)
(6 . "DASHED")
(48 . 5.0)
(100 . "AcDbPolyline")
(90 . 3)
(70 . 0)
(43 . 0.0)
(38 . 0.0)
(39 . 0.0)
(10 0.0 2.82843)
(10 24.3095 27.1379)
(10 25.5316 36.8789)
)
)
)
(setq lst (if (= (getint "\n请输入;1(方案一),其它(方案二)") 1) lst1lst2 )
pt (getpoint "\n指定插入点:")
)
(entmake (list '(0 . "block") '(2 . "*U") '(70 . 1) (cons 10 '(0.0 0.0))))
(foreach x lst
(entmake x)
)
(setq name (entmake '((0 . "ENDBLK"))))
(entmake (list '(0 . "INSERT") (cons 2 name) (cons 10 pt)))
(command "explode" (entlast))
(princ)
)
还有一个方法把图纸存储在搜索路径,用插入块的方式插入 langjs 发表于 2014-9-4 09:48 static/image/common/back.gif
还有一个方法把图纸存储在搜索路径,用插入块的方式插入
相对路径怎么写啊?
我想在放lsp的那个文件夹里建一个文件夹留着专门放块 伪书虫86 发表于 2014-9-4 09:59 static/image/common/back.gif
相对路径怎么写啊?
我想在放lsp的那个文件夹里建一个文件夹留着专门放块
(initget 7 "1 2 3 4")
(setq kd (getkword "\n 输入:\n:"))
(Command "_.-INSERT" kd pt "" "" "") 做成块,插入。
这个方法简单一点 (defun c:tt () (command "insert" "实体转换" pause 1 1 0))
页:
[1]