;圖塊批量打印程序 給你參考一下看看我用的 ;提示下這裡沒修改坐標 當打印時不再世界坐標系下要經過坐標轉換 (defun c:plp (/ a4l aa ll n p1 p2 plot_ss ww zhixing) ;(setvar "osmode" 16384) ;(setvar "cmdecho" 0) (initget 1 "A4 A3") (setq aa (strcase (getkword "\n指定要打印的紙型A4/A3:"))) (cond ((= aa "A4") (setq zhixing "A4(210 x 297mm)")) ((= aa "A3") (setq zhixing "A3(297 x 420mm)")) ) (prompt "\n選取需打印的對象<塊>:") (setq plot_ss (ssget (list (cons 2 "bom_frame,enregister_Q,A3,A4,set up type")))) ;指定要打印的塊 (setq n 0) (repeat (sslength plot_ss) (setq p1 (car (setq a4l (acet-ent-geomextents (ssname plot_ss n))))) (setq p2 (cadr a4l)) (setq ll (abs (- (car p2) (car p1)))) (setq ww (abs (- (cadr p2) (cadr p1)))) (if (> ll ww) (command "-plot" "y" "MODEL" "Previous PLOT" "\\\\Prnsrv\\\*****" zhixing "Millimeters" "Landscape" "n" "w" p1 p2 "f" "c" "y" "monochrome.ctb" "y" "w" "n" "n" "y" ) (command "-plot" "y" "MODEL" "Previous PLOT" "\\\\Prnsrv\\\*****" zhixing "Millimeters" "Portrait" "n" "w" p1 p2 "f" "c" "y" "monochrome.ctb" "y" "w" "n" "n" "y" ) ) ;if (setq n (1+ n)) ) ;repeat ) |