gyxzzza 发表于 2003-2-5 20:47:00

[求助]怎样制作自动分幅程序?

我们经常AUTOCAD2000作一些图纸,特别是做一些大一点的图纸。由于单位只有A4纸张的打印机所以在出图的时很不方便,把图全部打印在A4纸上显然不合适。只好分块打印,并操作很是麻烦。很想编辑一个能自动分幅,并且能对每一幅图纸进行单独存储的程序,却找不到有效的方法。在这里我向各位大虾求教?

EMAIL: GYXZZZA@PEOPLEMAIL.COM.CN

龙龙仔 发表于 2003-2-8 12:43:00

范例...

;       SOP_1.LSP
;
;       批次打印SOP数据使用的A4尺寸图形范围
;       Jan. 06. '98

; 错误捕捉函式
(defun *error* ()
      (princ "\n < 发生非预期的错误 ! ! >")
)

; 批次打印SOP数据使用的A4尺寸图形范围
;       plot_list                图纸范围串行
;       plot_id                出图指标
;       plot_l                出图范围的左下角点坐标
;       plot_r                出图范围的右上角点坐标
;
(defun c:SOP_1 (/ plot_list plot_id plot_l plot_r)        ; 指定函式名称
      (setvar "blipmode" 0)                                ; 重设系统变量的设定值
      (setvar "cmddia" 0)
      (setvar "cmdecho" 0)

      (setq plot_list '(((0   0) ( 200 285))                ; 第一张A4尺寸
                              ((210   0) ( 410 285))                ; 第一张A4右方
                              ((420   0) ( 620 285))
                              ((630   0) ( 830 285))
                              ((840   0) (1040 285))
                              ((0 297) ( 200 582))                ; 第一张A4尺寸上方
                              ((210 297) ( 410 582))
                              ((420 297) ( 620 582))
                              ((630 297) ( 830 582))
                              ((840 297) (1040 582))
      )); end of setq

      (foreach plot_id plot_list                ; 依次执行
            (setq plot_l (carplot_id)        ; 取得出图范围的左下角点坐标
                  plot_r (cadr plot_id)        ; 取得出图范围的右上角点坐标
            ); end of setq

            (command "plot" "w" plot_l plot_r "" "" "")        ; R14版适用
;         (command "plot" "w" plot_l plot_r "" )        ; R13版适用
;         (command "plot" "w" plot_l plot_r ";" )        ; R12版适用
      ); end of foreach

      (setvar "blipmode" 1)                ; 还原系统变量的设定值
      (setvar "cmddia" 1)
      (setvar "cmdecho" 1)
      (graphscr)                        ; 进入绘图屏幕
      (prin1)
);end of SOP_1.LSP

; 载入档案时的提示文句
      (prompt "\n.")
      (prompt "\n<功能> 批次打印A4尺寸的图形范围")
      (prompt "\n.")
      (prompt "\n<指令> SOP_1")
      (prompt "\n.")
      (prin1)

gyxzzza 发表于 2003-7-21 21:50:00

见到你的贴子非常感谢!最近我想只保存指定区域的图形内容请问有办法吗?

myfreemind 发表于 2003-7-21 23:50:00

分幅我是用MAP里面的地图工具!
页: [1]
查看完整版本: [求助]怎样制作自动分幅程序?