Đến nội dung


Hình ảnh
- - - - -

Lệnh in ấn bằng lisp


  • Please log in to reply
9 replies to this topic

#1 hautrungnguyen8x

hautrungnguyen8x

    biết zoom

  • Members
  • Pip
  • 13 Bài viết
Điểm đánh giá: 2 (bình thường)

Đã gửi 25 March 2009 - 10:14 PM

Tôi lập đoạn lisp sử dụng để in nhiều trang trong autocad với khoảng cách giwũa các trang in bằng nhau nhưng đến đoạn khai báo nhập khoảng cách giữa các trang in thì báo lỗi "NIL" lỗi này là gì
Mong các bác kiểm tra giùm và chỉ bảo
code:
(defun c:in()
(setq ortho (getvar "orthomode"))
(setvar "orthomode" 1)
(setq a (getint " \nSo Trang in : " ))
(setq DL (getpoint " \nGoc duoi ben trai " ))
(setq UR (getcorner dl " \nGoc tren ben phai " ))
(setq cl (getdist UR "\nCu ly giua 2 trang "))
(setq x1 (car DL ))
(setq y1 (cadr DL ))
(setq x2 (car UR ))
(setq y2 (cadr UR ))
(setq r ( - x2 x1))
(repeat a
(setq D1 (list x1 y1))
(setq D2 (list (+ r x1) y2 ))
(command "plot" "W" D1 D2 "" )
(setq x1 (+ r cl x1 ))
)
(setvar "orthomode" ortho)
(setq a nil dl nil ur nil cl nil x1 nil x2 nil y1 nil y2 nil r nil d1 nil d2 nil )
)
( Defun C:LCR()
(setq path (getstring "\n Duong dan den file chua cac file trac ngang (*.lsp) " ))
(setq number (getint "\n So cap trac ngang: " ))
(setq Dist (getreal "\n Khoang cach giua 2 cot: " ))
(setq so 0)
(setq ma 1)
(command "CMDECHO" "0")
(repeat number
(setq so (+ so 2 ))
(setq File (strcat path "\\" (itoa (- so 1)) ".lsp"))
(if (findfile (strcat path "\\" (itoa (- so 1)) ".lsp") ) (load file "") (setq ma 1) )
(setq File (strcat path "\\" (itoa so) ".lsp"))
(if (findfile (strcat path "\\" (itoa so) ".lsp") ) (load file "") (setq ma 0))
(if (= ma 1) (command "move" "all" "" (list 0 0) (list (* -1 Dist) 0)))
(setq ma 1)
)
(princ)
)
  • 0
Nickname: hautrungnguyen8x
status: Hoà nhập không hoà tan..
Đổi mới không đổi mầu ...

#2 gia_bach

gia_bach

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 1431 Bài viết
Điểm đánh giá: 1425 (rất tốt)

Đã gửi 26 March 2009 - 07:41 AM

Tôi lập đoạn lisp sử dụng để in nhiều trang trong autocad với khoảng cách giwũa các trang in bằng nhau nhưng đến đoạn khai báo nhập khoảng cách giữa các trang in thì báo lỗi "NIL" lỗi này là gì
Mong các bác kiểm tra giùm và chỉ bảo
code:
(defun c:in()
...................................
(command "plot" "W" D1 D2 "" )
..........................
)
( Defun C:LCR()
.............

Chào bạn hautrungnguyen8x.
Bạn cần xem lại cú pháp lệnh in : PLOT.
tại dấu nhắc lệnh, gõ -plot .
Chúc thành công.
  • 1

#3 hautrungnguyen8x

hautrungnguyen8x

    biết zoom

  • Members
  • Pip
  • 13 Bài viết
Điểm đánh giá: 2 (bình thường)

Đã gửi 04 April 2009 - 09:37 AM

Chào bạn hautrungnguyen8x.
Bạn cần xem lại cú pháp lệnh in : PLOT.
tại dấu nhắc lệnh, gõ -plot .
Chúc thành công.



Cảm on ban hi vong la` duoc
chuc ban 1 ngay` le~ vui ve va` hanh phuc
  • 0
Nickname: hautrungnguyen8x
status: Hoà nhập không hoà tan..
Đổi mới không đổi mầu ...

#4 hautrungnguyen8x

hautrungnguyen8x

    biết zoom

  • Members
  • Pip
  • 13 Bài viết
Điểm đánh giá: 2 (bình thường)

Đã gửi 04 April 2009 - 09:39 AM

Chào bạn hautrungnguyen8x.
Bạn cần xem lại cú pháp lệnh in : PLOT.
tại dấu nhắc lệnh, gõ -plot .
Chúc thành công.



a` nhưng bạn ơi mình thêm ở cuối lệnh có đúng không bạn nhỉ

)
(princ)
)


Xin chỉ giáo
  • 0
Nickname: hautrungnguyen8x
status: Hoà nhập không hoà tan..
Đổi mới không đổi mầu ...

#5 tdvn

tdvn

    biết lệnh rotate

  • Members
  • PipPipPip
  • 134 Bài viết
Điểm đánh giá: 53 (tàm tạm)

Đã gửi 04 April 2009 - 06:18 PM

Xin chỉ giáo

Theo tôi biết, lệnh PLOT theo mỗi bản cad và máy in khác nhau sẽ có những tham số khác nhau. Bạn phải in thành công bằng cách ðánh lệnh -PLOT trên dòng lệnh command sau ðó trả lời ðúng các tham số của lệnh này mới ðýợc. Khi khi ðã in ðýợc rồi bạn mới copy vào lisp và viết thành
một hàm in. Ví dụ, khi bạn ðánh -PLOT, nó ra thế này :

"Mình không post ðýợc ðoạn này lên cho bạn, nó báo lỗi, mình tạm ðýa vào code cho bạn tham khảo"

Command: -plot
Detailed plot configuration? [Yes/No] : y
Enter a layout name or [?] :
Enter an output device name or [?] :
Enter paper size or [?] :
Enter paper units [Inches/Millimeters] : m
Enter drawing orientation [Portrait/Landscape] : l
Plot upside down? [Yes/No] : n
Enter plot area [Display/Extents/Limits/View/Window] : w
Enter lower left corner of window <592902.686865,1180091.664567>:
Enter upper right corner of window <593036.305900,1180186.149225>:
Enter plot scale (Plotted Millimeters=Drawing Units) or [Fit] <2=1>:
Enter plot offset (x,y) or [Center] <20.00,0.00>:
Plot with plot styles? [Yes/No] :
Enter plot style table name or [?] (enter . for none) assignments.ctb>:
Plot with lineweights? [Yes/No] :
Remove hidden lines? [Yes/No] :
Write the plot to a file [Yes/No] :
Save changes to model tab [Yes/No]?
Proceed with plot [Yes/No] :
Effective plotting area: 188.97 wide by 266.24 high
Plotting viewport 2.
Sau ðó bạn copy vào lisp và chỉnh lại thế này
(SETQ P1 '(592902.7 1180091.7))
(SETQ P2 '(593036.3 1180186.1))
(Command "-plot" "y" "" "HP LaserJet 5000 Series PCL6" "A4" "m" "l" "n" "w" P1 P2 "2=1" "25.00,5.00" "Yes" "monochrome.ctb" "Yes" "N" "N" "N" "Y")

Máy của bạn có thể nó sẽ ra khác. Bạn tham khảo xem có ðýợc không?
  • 1

#6 phamthanhbinh

phamthanhbinh

    biết lệnh adcenter

  • Moderator
  • PipPipPipPipPipPipPip
  • 6007 Bài viết
Điểm đánh giá: 3113 (tuyệt vời)

Đã gửi 05 April 2009 - 12:41 PM

a` nhưng bạn ơi mình thêm ở cuối lệnh có đúng không bạn nhỉ

)
(princ)
)
Xin chỉ giáo

Chào bạn hautrungnguyen8x,
Cái thêm này không sai. Bạn nên kiểm tra lại việc khai báo biến a của bạn.
Chúc thành công.
  • 1
Chúc các quý Anh trên diễn đàn luôn khỏe, đẻ thêm được nhiều thứ để mót.

#7 hautrungnguyen8x

hautrungnguyen8x

    biết zoom

  • Members
  • Pip
  • 13 Bài viết
Điểm đánh giá: 2 (bình thường)

Đã gửi 05 April 2009 - 09:41 PM

Theo tôi biết, lệnh PLOT theo mỗi bản cad và máy in khác nhau sẽ có những tham số khác nhau. Bạn phải in thành công bằng cách ðánh lệnh -PLOT trên dòng lệnh command sau ðó trả lời ðúng các tham số của lệnh này mới ðýợc. Khi khi ðã in ðýợc rồi bạn mới copy vào lisp và viết thành
một hàm in. Ví dụ, khi bạn ðánh -PLOT, nó ra thế này :

"Mình không post ðýợc ðoạn này lên cho bạn, nó báo lỗi, mình tạm ðýa vào code cho bạn tham khảo"

Command: -plot
Detailed plot configuration? [Yes/No] : y
Enter a layout name or [?] :
Enter an output device name or [?] :
Enter paper size or [?] :
Enter paper units [Inches/Millimeters] : m
Enter drawing orientation [Portrait/Landscape] : l
Plot upside down? [Yes/No] : n
Enter plot area [Display/Extents/Limits/View/Window] : w
Enter lower left corner of window <592902.686865,1180091.664567>:
Enter upper right corner of window <593036.305900,1180186.149225>:
Enter plot scale (Plotted Millimeters=Drawing Units) or [Fit] <2=1>:
Enter plot offset (x,y) or [Center] <20.00,0.00>:
Plot with plot styles? [Yes/No] :
Enter plot style table name or [?] (enter . for none) assignments.ctb>:
Plot with lineweights? [Yes/No] :
Remove hidden lines? [Yes/No] :
Write the plot to a file [Yes/No] :
Save changes to model tab [Yes/No]?
Proceed with plot [Yes/No] :
Effective plotting area: 188.97 wide by 266.24 high
Plotting viewport 2.
Sau ðó bạn copy vào lisp và chỉnh lại thế này
(SETQ P1 '(592902.7 1180091.7))
(SETQ P2 '(593036.3 1180186.1))
(Command "-plot" "y" "" "HP LaserJet 5000 Series PCL6" "A4" "m" "l" "n" "w" P1 P2 "2=1" "25.00,5.00" "Yes" "monochrome.ctb" "Yes" "N" "N" "N" "Y")

Máy của bạn có thể nó sẽ ra khác. Bạn tham khảo xem có ðýợc không?




Cảm ơn bạn rất nhiều quả là rất khó nếu không được các bạn hướng dẫn tận tình thế này.
1 lần nua~ xin cám ơn
  • 0
Nickname: hautrungnguyen8x
status: Hoà nhập không hoà tan..
Đổi mới không đổi mầu ...

#8 hautrungnguyen8x

hautrungnguyen8x

    biết zoom

  • Members
  • Pip
  • 13 Bài viết
Điểm đánh giá: 2 (bình thường)

Đã gửi 05 April 2009 - 09:45 PM

Chào bạn hautrungnguyen8x,
Cái thêm này không sai. Bạn nên kiểm tra lại việc khai báo biến a của bạn.
Chúc thành công.



Cảm ơn bạn thanhbinh đã nhiệt tình chỉ bảo và cảnh cáo 1 lần nữa mong các bác thông cảm vì là thành viên mới của diễn đàn nhưng được cái nhiệt tình vì điều này mong được ân xá. hì hì
  • 0
Nickname: hautrungnguyen8x
status: Hoà nhập không hoà tan..
Đổi mới không đổi mầu ...

#9 archhnm

archhnm

    biết zoom

  • Members
  • Pip
  • 18 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 31 May 2009 - 04:05 PM

Cảm ơn bạn thanhbinh đã nhiệt tình chỉ bảo và cảnh cáo 1 lần nữa mong các bác thông cảm vì là thành viên mới của diễn đàn nhưng được cái nhiệt tình vì điều này mong được ân xá. hì hì


Trên mạng anh em đã có rồi mà , chuyên dùng để in ấn hàng loạt , mình đang sử dụng , rất tuyệt vời , chỉ cần khai báo một lần , sau này cứ thế load lại mà in thôi
  • 0

#10 anngomanh

anngomanh

    Chưa sử dụng CAD

  • Members
  • Pip
  • 1 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 07 December 2010 - 11:00 AM

Xin chào các Anh, em có 1 đoạn lisp in hàng loạt tự động đánh tên file (in ra file pdf- CAD 2007). Nhưng nó vẫn bị lỗi do chưa tự động save tên file được. Mong các Anh giúp đỡ.

(DEFUN C:Inhl()
(setvar "cmdecho" 1)
(setvar "luprec" 0)
(setq mayin "Adobe PDF")
(setq mayin (getstring "\nNhap ten may in "))
(setq soluong (getint "\nNhap so luong ban ve:"))
(setq khoangcach (getreal "\nNhap cach giua 2 ban ve:"))
(setq duoitrai (getpoint "\nNhap diem duoi trai khung ban ve dau tien:"))
(setq xdt (car duoitrai) ydt (cadr duoitrai))
(setq trenphai (getpoint "\nNhap diem tren phai khung ban ve dau tien:"))
(setq xtp (car trenphai) ytp (cadr trenphai))
(setq ten_file (getstring "\nNhap ten file ban ve:"))
(setq STT_file (getint "\nSo thu tu cua file ban ve:"))
(setq i 0)
(While (< i soluong)
(setq Name (strcat ten_file "[" (rtos STT_file) "]"))
(command "-plot" "Y" "" "Adobe PDF" "A3" "m" "l" "" "w" duoitrai trenphai "f" "c" "y" "monochrome.15.ctb" "y" "W" "N" "Y" "Y" "" Name "" "y" "y" d:\i)
(setq xdt (+ xdt khoangcach) xtp (+ xtp khoangcach))
(setq duoitrai (list xdt ydt 0) trenphai (list xtp ytp 0))
(setq i (+ i 1))
(setq STT_file (+ STT_file 1))
)
(princ)
)
  • 0