ADN Club > AutoLisp / VisualLISP и DCL

LISP программа в AccoreConsole

(1/2) > >>

dolar18:
Уважаемые профи, скажите пожалуйста как в консольной версии AutoCAD AccoreConsole можно загрузить Lisp программу, запустить ее (построение 3D модели), а потом сохранить  файл?
Я пробовал, как в простом автокаде:
(load "C:/3d.lsp")
(program)
Ничего не получается(((

Вот сама программа:


--- Код - Auto/Visual Lisp [Выбрать] ---(DEFUN asin (X)(ATAN X (SQRT (- 1 (* X X))))) (defun kor (lp dp dsp) (setq dw 20.0 dsw 35.0 bsw 30.0 bsp 20.0 bk 14.0)(setq rw (/ dw 2.0)  rsw (/ dsw 2.)  rp (/ dp 2.)  rsp (/ dsp 2.) hbk (/ bk 2.) bfs (/ (- bsp bk) 2.0) )(setq alfa (asin (/ (- rsw rsp) lp))p1 (polar '(0 0 0) (- (* 0.5 pi) alfa) rsw)p2 (polar (list lp 0 0) (- (* 0.5 pi) alfa) rsp)p3 (polar '(0 0 0) (+ (* 1.5 pi) alfa) rsw)p4 (polar (list lp 0 0) (+ (* 1.5 pi) alfa) rsp))(command "_Pline" '(0 0 0) p1 p2 (list lp 0 0) p4 p3 "_c")(command "_extrude" (entlast) ""  bk "") (setq o1 (entlast))(command "_Cylinder" '(0 0 0) rsw bsw)(command "_Union" o1 (entlast) "")(command "_Cylinder" (list lp 0 0) rsp bsp)(command "_Union" o1 (entlast) "")(command "_Cylinder" '(0 0 0) rw bsw)(setq o2 (entlast))(command "_Cylinder" (list (+ 0 lp) 0 0) rp bsp)(command "_Subtract" o1 "" o2 (entlast) "")) (defun pov (lp dp ds bs)(setq  hpw 22. spw 12.)(setq rp (/ dp 2.)  rs (/ ds 2.) )(command "_Cylinder" '(0 0 0) rs bs)(setq o1 (entlast))(command "_Cylinder" (list lp 0 0) rs bs)(setq o2 (entlast))(command "_Box" (list 0 (/ spw -2.) (/ (- bs hpw) 2.)) "_l" lp spw hpw)(command "_Union" o1 o2 (entlast) "")(command "_Cylinder" '(0 0 0) rp bs)(setq o3 (entlast))(command "_Cylinder" (list lp 0 0) rp bs) (command "_subtract" o1 "" o3 (entlast) "") ) (defun C:MechanismUAD()(command "_undo" 1000)(setvar "osmode" 16384)(setvar "CmdEcho" 0)(setvar "BlipMode" 0)(setvar "UcsIcon" 3) ; Êðèâîøèï (setq LA 200fi 45.0000012522391Xb -70.7106830355541Yb -70.7106732017551Y 364.649143089735A 760B 560HP 50 )(command "_Cylinder" '(0 0 -30) 25. (/ B  -2.))(setq Val (entlast))(command "_Cylinder" '(0 0 0) 10. -30)(command "_Union" Val  (entlast) "")(command "_Ucs" "_n" (list Xb  Yb  -30.) )(command "_Ucs" "_n" "_z" fi )(pov LA  20. 35. 30.)(command "_Union" Val  (entlast) "")(command "_Ucs" "_n" "_z" (- 0 fi ))(command "_Ucs" "_n" (list (- 0 Xb ) (- 0 Yb )  30.))(command "_Ucs" "_n" (list  0 0 (- (/ B  -2.) 30.)))(command "_Ucs" "_n" "_x" 270.)(command "_MIRROR" Val"" (list 0 0  (/ B  -2.)) (list 50 0 (/ B  2.)) "_n" )(command "_Union" Val  (entlast) "")(command "_Ucs" "_n" "_x" -270.)(command "_Ucs" "_n" (list  0 0 (+ (/ B  2.) 30.)))(command "_Box" (list (/ A  -2.) (+ Y  40) -30) "_l" A   HP  (- 0 B ))  ; Ãðóïà Àññóðà 2 (setq L2 400Fi2 -10.1820676280677XB2 464.411069996247YB2 -1.80411241501588E-15XA2 70.7106765732237YA2 70.7106796640857 ) (command "_Ucs" "_n" (list XA2  YA2   0) )(command "_Ucs" "_n" "_z" Fi2 )(kor L2  16. 28.)(setq 2A   (entlast))(command "_Cylinder" '(0 0 30) 10. -60)(setq 2B   (entlast))(command "_Cylinder" '(0 0 30) 17.5 15)(command "_Union" 2B  (entlast) "")(command "_Ucs" "_n" "_z" (- 0 Fi2 ))(command "_Ucs" "_n" (list (- 0 XA2 ) (- 0 YA2 ) 0))(command "_Ucs" "_n" (list XB2  YB2   0) )(command "_Box" (list -100 -55 0) "_l" 200. 30. -60.)(setq 2C   (entlast))(command "_Box" (list -100 -40 -15) "_l" 200. 40. -30.)(setq 2D   (entlast))(command "_subtract" 2C  "" 2D  (entlast) "")(command "_Cylinder" '(0 0 -15) 40 -30)(setq 2E   (entlast))(command "_Cylinder" '(0 0 -15) 8 -30)(setq 2F   (entlast))(command "_subtract" 2E  "" 2F  (entlast) "")(command "_Cylinder" '(0 0 20) 14. 20)(setq 2G   (entlast))(command "_Cylinder" '(0 0 20) 8. -80)(command "_Union" 2G (entlast) "")(command "_Cylinder" '(0 0 0) 14. -15.)(setq 2H   (entlast))(command "_Ucs" "_n" (list (- 0 XB2 ) (- 0 YB2 )  0) )(command "_Ucs" "_n" (list  0 0 (- (/ B  -2.) 30.)))(command "_Ucs" "_n" "_x" 270.)(command "_MIRROR" 2A 2B 2C 2E 2G 2H "" (list 0 0  (/ B  -2.)) (list 50 0 (/ B  2.)) "_n" )(command "_Ucs" "_n" "_x" -270.)(command "_Ucs" "_n" (list  0 0 (+ (/ B  2.) 30.)))  ; Ãðóïà Àññóðà 2 (setq L3 400Fi3 -190.182066687595XB3 -464.411077619246YB3 -1.28508315100362E-14XA3 -70.7106830355541YA3 -70.7106732017551 ) (command "_Ucs" "_n" (list XA3  YA3   0) )(command "_Ucs" "_n" "_z" Fi3 )(kor L3  16. 28.)(setq 3A   (entlast))(command "_Cylinder" '(0 0 30) 10. -60)(setq 3B   (entlast))(command "_Cylinder" '(0 0 30) 17.5 15)(command "_Union" 3B  (entlast) "")(command "_Ucs" "_n" "_z" (- 0 Fi3 ))(command "_Ucs" "_n" (list (- 0 XA3 ) (- 0 YA3 ) 0))(command "_Ucs" "_n" (list XB3  YB3   0) )(command "_Box" (list -100 -55 0) "_l" 200. 30. -60.)(setq 3C   (entlast))(command "_Box" (list -100 -40 -15) "_l" 200. 40. -30.)(setq 3D   (entlast))(command "_subtract" 3C  "" 3D  (entlast) "")(command "_Cylinder" '(0 0 -15) 40 -30)(setq 3E   (entlast))(command "_Cylinder" '(0 0 -15) 8 -30)(setq 3F   (entlast))(command "_subtract" 3E  "" 3F  (entlast) "")(command "_Cylinder" '(0 0 20) 14. 20)(setq 3G   (entlast))(command "_Cylinder" '(0 0 20) 8. -80)(command "_Union" 3G (entlast) "")(command "_Cylinder" '(0 0 0) 14. -15.)(setq 3H   (entlast))(command "_Ucs" "_n" (list (- 0 XB3 ) (- 0 YB3 )  0) )(command "_Ucs" "_n" (list  0 0 (- (/ B  -2.) 30.)))(command "_Ucs" "_n" "_x" 270.)(command "_MIRROR" 3A 3B 3C 3E 3G 3H "" (list 0 0  (/ B  -2.)) (list 50 0 (/ B  2.)) "_n" )(command "_Ucs" "_n" "_x" -270.)(command "_Ucs" "_n" (list  0 0 (+ (/ B  2.) 30.)))  ; Ãðóïà Àññóðà 2 (setq L4 400Fi4 65.7305907018736XB4 -300YB4 364.649143089735XA4 -464.411077619246YA4 -1.28508315100362E-14 ) (command "_Ucs" "_n" (list XA4  YA4   -55) )(command "_Ucs" "_n" "_z" Fi4 )(pov L4  16. 28. 24.)(setq 4A   (entlast))(command "_Ucs" "_n" "_z" (- 0 Fi4 ))(command "_Ucs" "_n" (list (- 0 XA4 ) (- 0 YA4 ) 55))(command "_Ucs" "_n" (list XB4  YB4   0) )(command "_Cylinder" '(0 0 -15) 17.5 -15)(setq 4B   (entlast))(command "_Cylinder" '(0 0 -30) 8. -45)(command "_Union" 4B   (entlast) "")(command "_Box" (list -15 -20 -60) "_l" 30. 60. -15.)(setq 4C   (entlast))(command "_Ucs" "_n" (list (- 0 XB4 ) (- 0 YB4 )  0) )(command "_Ucs" "_n" (list  0 0 (- (/ B  -2.) 30.)))(command "_Ucs" "_n" "_x" 270.)(command "_MIRROR" 4A  4B  4C "" (list 0 0  (/ B  -2.)) (list 50 0 (/ B  2.)) "_n" )(command "_Ucs" "_n" "_x" -270.)(command "_Ucs" "_n" (list  0 0 (+ (/ B  2.) 30.))) ; Ãðóïà Àññóðà 2 (setq L5 400Fi5 114.269408100357XB5 300YB5 364.649146526753XA5 464.411069996247YA5 -1.80411241501588E-15 ) (command "_Ucs" "_n" (list XA5  YA5   -55) )(command "_Ucs" "_n" "_z" Fi5 )(pov L5  16. 28. 24.)(setq 5A   (entlast))(command "_Ucs" "_n" "_z" (- 0 Fi5 ))(command "_Ucs" "_n" (list (- 0 XA5 ) (- 0 YA5 ) 55))(command "_Ucs" "_n" (list XB5  YB5   0) )(command "_Cylinder" '(0 0 -15) 17.5 -15)(setq 5B   (entlast))(command "_Cylinder" '(0 0 -30) 8. -45)(command "_Union" 5B   (entlast) "")(command "_Box" (list -15 -20 -60) "_l" 30. 60. -15.)(setq 5C   (entlast))(command "_Ucs" "_n" (list (- 0 XB5 ) (- 0 YB5 )  0) )(command "_Ucs" "_n" (list  0 0 (- (/ B  -2.) 30.)))(command "_Ucs" "_n" "_x" 270.)(command "_MIRROR" 5A  5B  5C "" (list 0 0  (/ B  -2.)) (list 50 0 (/ B  2.)) "_n" )(command "_Ucs" "_n" "_x" -270.)(command "_Ucs" "_n" (list  0 0 (+ (/ B  2.) 30.)))(command "_Shademode" "_G")(command "_zoom" "_e") ) 

Александр Ривилис:
dolar18
Приветствую на форуме!
Как минимум нужно знать что это за код и может ли он работать в AcCoreConsole, так как далеко не всё, что работает в AutoCAD будет работать в AcCoreConsole.

dolar18:
Александр Ривилис, код добавил в описание

Александр Ривилис:

--- Цитата: dolar18 от 13-09-2015, 20:21:53 ---Александр Ривилис, код добавил в описание
--- Конец цитаты ---
1. Прочитай у меня в подписи как форматировать код
2. Версия AutoCAD?

dolar18:
Александр Ривилис, AutoCAD 2016

Навигация

[0] Главная страница сообщений

[#] Следующая страница

Перейти к полной версии