Đến nội dung


Hình ảnh
- - - - -

[Nhờ viết lisp] vẽ, chỉnh sửa đường 3D Polyline theo độ dốc


  • Please log in to reply
19 replies to this topic

#1 levanhuong1989

levanhuong1989

    biết vẽ circle

  • Members
  • PipPip
  • 32 Bài viết
Điểm đánh giá: 49 (tàm tạm)

Đã gửi 13 March 2015 - 09:31 PM

  Như tiêu đề, em nhờ các bác trong diễn đàn viết hộ em lisp để phục vụ tạo lưới thiết kế theo độ dốc. Lisp vẽ đường 3D polyline theo dộ dốc khi nhập cao độ của 1 điểm như sau:

  1. Dùng lệnh, nhập cao độ tại điểm đầu pick chuột
  2. Nhập độ dốc tính toán, pick chuột vào điểm tiếp theo khi đó sẽ tạo được đường 3D polyline với 2 cao độ 2 đỉnh có độ dốc mình vừa nhập. tiếp tục hỏi độ dốc và vẽ các đỉnh tiếp theo của đường Polyline.
  3. Khi muốn chỉnh độ dốc của đường Polyline thì mình kick vào đoạn cần chỉnh (giả sử đoạn này tạo bởi 2 đỉnh số 1 và 2) nhập độ dốc mới và lisp sẽ tính toán cao độ đỉnh Polyline đỉnh số 2 theo cao độ đỉnh số 1 và độ dốc nhập vào. Các đỉnh tiếp theo của đường Polyline sẽ tự động được tính lại dựa vào độ dốc vốn có của nó. 

Cảm ơn các bác trong diễn đàn!

Em gửi kèm theo bản vẽ để các bác xem giúp em.

http://www.cadviet.c...49411_banve.dwg


  • 0

#2 levanhuong1989

levanhuong1989

    biết vẽ circle

  • Members
  • PipPip
  • 32 Bài viết
Điểm đánh giá: 49 (tàm tạm)

Đã gửi 15 March 2015 - 07:34 PM

Chắc 2 ngày cuối tuần nên chưa có bác nào qua đọc. Mong các bác giúp em giải quyết vấn đề này với.


  • 0

#3 langtu221

langtu221

    Chưa sử dụng CAD

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

Đã gửi 16 March 2015 - 11:08 AM

Hóng cao thủ vào giúp bạn


  • 0

Đến thăm tôi tv online ngôi nhà chung của những người thích truyen hinh


#4 phamthanhbinh

phamthanhbinh

    biết lệnh adcenter

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

Đã gửi 16 March 2015 - 11:56 AM

  Như tiêu đề, em nhờ các bác trong diễn đàn viết hộ em lisp để phục vụ tạo lưới thiết kế theo độ dốc. Lisp vẽ đường 3D polyline theo dộ dốc khi nhập cao độ của 1 điểm như sau:

  1. Dùng lệnh, nhập cao độ tại điểm đầu pick chuột
  2. Nhập độ dốc tính toán, pick chuột vào điểm tiếp theo khi đó sẽ tạo được đường 3D polyline với 2 cao độ 2 đỉnh có độ dốc mình vừa nhập. tiếp tục hỏi độ dốc và vẽ các đỉnh tiếp theo của đường Polyline.
  3. Khi muốn chỉnh độ dốc của đường Polyline thì mình kick vào đoạn cần chỉnh (giả sử đoạn này tạo bởi 2 đỉnh số 1 và 2) nhập độ dốc mới và lisp sẽ tính toán cao độ đỉnh Polyline đỉnh số 2 theo cao độ đỉnh số 1 và độ dốc nhập vào. Các đỉnh tiếp theo của đường Polyline sẽ tự động được tính lại dựa vào độ dốc vốn có của nó.

Cảm ơn các bác trong diễn đàn!

Em gửi kèm theo bản vẽ để các bác xem giúp em.

http://www.cadviet.c...49411_banve.dwg

Hề hề hề,

Bài toán của bạn chưa rõ ràng. Nhập độ dốc cần phải có hướng dốc nữa mới xác định được cao độ của điểm tiếp theo chớ

Nên tách thành hai bài toán khác nhau , một là vẽ pline, hai là chỉnh sửa pline.


  • 0
Chúc các quý Anh trên diễn đàn luôn khỏe, đẻ thêm được nhiều thứ để mót.

#5 levanhuong1989

levanhuong1989

    biết vẽ circle

  • Members
  • PipPip
  • 32 Bài viết
Điểm đánh giá: 49 (tàm tạm)

Đã gửi 16 March 2015 - 01:52 PM

1. Khi nhập độ dốc mặc định nếu thêm dấu "-" sẽ là dốc xuống, không âm sẽ là dốc hướng lên. khi nhập độ dốc xong thì mình Pick tiếp 1 điểm khi đó lisp tính cao độ điểm tiếp theo dựa vào

    - Điểm đầu

    - Độ dốc

    - Khoảng cách giữa điểm thứ n và điểm đặt của đỉnh thứ n+1 mình vừa Pick

2. Đúng ý em là muốn tách thành 2 bài toán khác nhau nhưng trình bày chưa rõ.


  • 0

#6 phamthanhbinh

phamthanhbinh

    biết lệnh adcenter

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

Đã gửi 16 March 2015 - 04:20 PM

Chắc 2 ngày cuối tuần nên chưa có bác nào qua đọc. Mong các bác giúp em giải quyết vấn đề này với.

Hề hề hề,

Vì bạn chưa trả lời nên mình đoán bừa và viết tạm lisp như sau để bạn dùng thử. Nếu ưng sẽ sửa chữa bổ sung sau nhé.

Lisp gồm có hai lệnh là vpdd để vẽ polyline theo độ dốc và lệnh cdd để chỉnh độ dốc của một đoạn trên polyline đã có.

Lệnh vẽ polyline sẽ quy ước độ dốc âm là ngược chiều polyliine và độ dốc dương là theo chiều polyline.

Hãy dùng thử coi sao nhé.

(defun c:vpdd (/ oldos p1 p2 p01 p02 h d l )
(setq oldos (getvar "osmode"))
(setvar "osmode" 0)
(command "ucs" "w")
(setq p1 (getpoint "\n Nhap diem bat dau ve")          
          h (getreal "\n Nhap cao do ban dau: ")
           p01 (list (car p1) (cadr p1) h)  )
(command "3dpoly" p01) 
(while (setq p2 (getpoint p1 "\n Nhap diem tiep theo"))
           (setq d (getreal "\n Nhap do doc: ")
                     l (distance p1 p2)
                    
                     p02 (list (car p2) (cadr p2) (setq h (+ h (* l d)))) 
                     p1 p2  )
          (command  p02 )
          (setq p01 p02)
)
(command "")
(command "ucs" "p")
(setvar "osmode" oldos)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun c:cdd(/ oldos epl p1 obj plst plst1 plst2 plst3 par par0 p0 d h p2 p20 p3 p30 l)
(setq oldos (getvar "osmode"))
(setvar "osmode" 512)
(setq epl (car (setq pl (entsel "\n Chon doan polyline can chinh do doc"))))
(setq p1 (cadr pl))
(setq obj (vlax-ename->vla-object epl))
(setq plst (acet-geom-vertex-list epl))
(setq p1 (vlax-curve-getClosestPointTo obj p1 nil) )
(setq par (vlax-curve-getParamAtPoint obj p1) )
(setq d (getreal "\n Nhap do doc moi: "))
(setq plst1 (list) plst2 (list))
(foreach p plst
    (setq par0 (vlax-curve-getParamAtPoint obj p))
    (if (< par0 par)
        (setq plst1 (append plst1 (list p)))
        (setq plst2 (append plst2 (list p)))
    )
)
(setq p2 (last plst1) p3 (car plst2) p20 (list (car p2) (cadr p2) 0) p30 (list (car p3) (cadr p3) 0)
          l (distance p20 p30) h (- (last p3) (+ (last p2) (* l d)))  plst3 (list) )
(foreach p0 plst2
        (setq p0 (list (car p0) (cadr p0) (- (caddr p0) h)))
        (setq plst3 (append plst3 (list p0)))
)
(setq plst3 (append plst1 plst3))
(command "3dpoly")
        (foreach p plst3
              (command p)
        )
(command "")
(command "erase" epl "")
(setvar "osmode" oldos)
 
)
         
 

  • 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 levanhuong1989

levanhuong1989

    biết vẽ circle

  • Members
  • PipPip
  • 32 Bài viết
Điểm đánh giá: 49 (tàm tạm)

Đã gửi 16 March 2015 - 11:08 PM

Cảm ơn bác đã giúp đỡ.

Em đã dùng thử và có thấy vẫn còn một số vấn đề:

1. Theo em công thức tính cao độ đỉnh thứ 2 dựa vào độ dốc, khoảng cách, cao độ thì bác viết vội giúp em nên bác đặt nhầm

em tạm sửa lại như sau: 

 " p02 (list (car p2) (cadr p2) (setq h (+ h (* l d))))  "  thành   "  p02 (list (car p2) (cadr p2) (setq h (+ h (* (/ d 100) l)))) "

2. Trong quá trình chọn điểm thì bắt buộc phải tắt truy bắt điểm như vậy thì chọn theo những điểm cố định sẽ khó, mong bác sửa giúp.

3. Lisp CDD thì em dùng nhưng chưa có tác dụng. Em đã thử tạo đường bằng lệnh VPDD và dùng lệnh CDD để chỉnh thì cao độ tại các đỉnh vẫn như cũ, không có gì thay đổi. 

Bên trên là một số vấn đề khi sử dụng lisp của bác viết giúp, mong bác giúp đỡ hoàn thiện thêm.

Cảm ơn bác Phamthanhbinh và các thành viên đã giúp đỡ.


  • 0

#8 phamthanhbinh

phamthanhbinh

    biết lệnh adcenter

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

Đã gửi 17 March 2015 - 10:17 AM

Cảm ơn bác đã giúp đỡ.

Em đã dùng thử và có thấy vẫn còn một số vấn đề:

1. Theo em công thức tính cao độ đỉnh thứ 2 dựa vào độ dốc, khoảng cách, cao độ thì bác viết vội giúp em nên bác đặt nhầm

em tạm sửa lại như sau: 

 " p02 (list (car p2) (cadr p2) (setq h (+ h (* l d))))  "  thành   "  p02 (list (car p2) (cadr p2) (setq h (+ h (* (/ d 100) l)))) "

2. Trong quá trình chọn điểm thì bắt buộc phải tắt truy bắt điểm như vậy thì chọn theo những điểm cố định sẽ khó, mong bác sửa giúp.

3. Lisp CDD thì em dùng nhưng chưa có tác dụng. Em đã thử tạo đường bằng lệnh VPDD và dùng lệnh CDD để chỉnh thì cao độ tại các đỉnh vẫn như cũ, không có gì thay đổi. 

Bên trên là một số vấn đề khi sử dụng lisp của bác viết giúp, mong bác giúp đỡ hoàn thiện thêm.

Cảm ơn bác Phamthanhbinh và các thành viên đã giúp đỡ.

Hề hề hề.

1/- Không có gì nhầm ở đây đâu. Chỉ là quan niệm của bạn khác với mình. Với bạn nếu độ dấc là 2% thì bạn sẽ nhập 2 còn mình thì yêu cầu nhập 0.02. Đơng giản vậy thôi.

2/- Việc bạn muốn chọn các loại truy bắt điểm nào thì bạn có thể tự sửa vào dòng code (setvar "ósmode" 0) , thay 0 bằng giá trị bạn muốn.

3/- Lisp CDD mình đã test và thấy chạy ngon lành mới post lên. bạn hãy kiểm tra lại và lưu ý về cách nhập độ dốc mình đã nói trên.. Còn nếu bạn test vẫn không được thì gửi cái file bạn test lên đây.

Chúc thành công.


  • 0
Chúc các quý Anh trên diễn đàn luôn khỏe, đẻ thêm được nhiều thứ để mót.

#9 levanhuong1989

levanhuong1989

    biết vẽ circle

  • Members
  • PipPip
  • 32 Bài viết
Điểm đánh giá: 49 (tàm tạm)

Đã gửi 17 March 2015 - 01:28 PM

Hề hề hề.

1/- Không có gì nhầm ở đây đâu. Chỉ là quan niệm của bạn khác với mình. Với bạn nếu độ dấc là 2% thì bạn sẽ nhập 2 còn mình thì yêu cầu nhập 0.02. Đơng giản vậy thôi.

2/- Việc bạn muốn chọn các loại truy bắt điểm nào thì bạn có thể tự sửa vào dòng code (setvar "ósmode" 0) , thay 0 bằng giá trị bạn muốn.

3/- Lisp CDD mình đã test và thấy chạy ngon lành mới post lên. bạn hãy kiểm tra lại và lưu ý về cách nhập độ dốc mình đã nói trên.. Còn nếu bạn test vẫn không được thì gửi cái file bạn test lên đây.

Chúc thành công.

 

 

1. Sorry bác về cái tính độ dốc, tối hôm qua em vội quá chưa nghĩ ra là bác đang dùng cách  nhập là 0.02 hiii.

2. Em đã thay osmode bằng các giá trị khác để bắt điểm nhưng khi bắt được điểm thì cao độ tại các đỉnh đều bằng 0 ( em gửi kèm bản vẽ)

3. Em gửi bác file bản vẽ đã tạo đường bằng lệnh VPDD nhưng dùng lệnh CDD để chỉnh độ dốc thì cao độ tại các đỉnh không thay đổi. Mong bác xem giúp.

http://www.cadviet.c...oc_lenh_cdd.dwg


  • 0

#10 phamthanhbinh

phamthanhbinh

    biết lệnh adcenter

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

Đã gửi 17 March 2015 - 02:56 PM

 

 

1. Sorry bác về cái tính độ dốc, tối hôm qua em vội quá chưa nghĩ ra là bác đang dùng cách  nhập là 0.02 hiii.

2. Em đã thay osmode bằng các giá trị khác để bắt điểm nhưng khi bắt được điểm thì cao độ tại các đỉnh đều bằng 0 ( em gửi kèm bản vẽ)

3. Em gửi bác file bản vẽ đã tạo đường bằng lệnh VPDD nhưng dùng lệnh CDD để chỉnh độ dốc thì cao độ tại các đỉnh không thay đổi. Mong bác xem giúp.

http://www.cadviet.c...oc_lenh_cdd.dwg

Hề hề hề.

2/- Bạn đả sửa lisp ra sao???

3/- Mình đã test lisp cdd trên chính bản vẽ mà bạn gửi thì thấy nó thay đổi cao độ ầm ầm chứ có trục trặc gì đâu. Bạn đã sử dụng lisp như thế nào??

Cách sử dụng lisp này như sau:

load lisp rồi gõ lệnh cdd . Pick chọn vào đúng đoạn polyline cần thay đổi độ dốc và nhập độ dốc mới là OK. Lưu ý rằng độ dốc mới nhập theo cách 2%= 0.02.

 

Túm lại là mình chưa thấy lỗi của lisp nên chưa thể sửa giúp bạn. Mong bạn kiểm tra kỹ lại thao tác của bạn nhé.


  • 1
Chúc các quý Anh trên diễn đàn luôn khỏe, đẻ thêm được nhiều thứ để mót.

#11 ndtnv

ndtnv

    biết lệnh minsert

  • Members
  • PipPipPipPipPipPip
  • 437 Bài viết
Điểm đánh giá: 384 (khá)

Đã gửi 17 March 2015 - 04:16 PM

Trong hàm CDD thêm

(setvar "osmode" 0)

vào trước dòng

(command "3dpoly")

nếu muốn nhập 2% thay cho 0.02 thì sửa thành

(setq h (+ h (* (/ d 100.) l)))

Công thức tính chiều dài p1p2 trong hàm vpdd phải sửa giống như trong hàm CDD


  • 1

#12 levanhuong1989

levanhuong1989

    biết vẽ circle

  • Members
  • PipPip
  • 32 Bài viết
Điểm đánh giá: 49 (tàm tạm)

Đã gửi 17 March 2015 - 10:09 PM

 

Đúng bệnh như bác ndtnv đã bắt, em thêm hàm của bác vào thì lisp CDD chạy được oke. Cảm ơn bác phamthanhbinh và ndtnv đã giúp đỡ.


  • 0

#13 levanhuong1989

levanhuong1989

    biết vẽ circle

  • Members
  • PipPip
  • 32 Bài viết
Điểm đánh giá: 49 (tàm tạm)

Đã gửi 17 March 2015 - 10:16 PM

2/- Bạn đả sửa lisp ra sao???

 

Em đã thay dòng (setvar "osmode" 0) thành (setvar "osmode" 512) và thử vẽ 2 đường Polyline làm 2 điểm ngăn( giả định) và dùng lệnh VPDD để chọn điểm nằm trên 2 đường thẳng vừa vẽ. và thử pick 1 điểm ra ngoài 2 đường đó kết quả là 2 đỉnh chọn trên 2 đường polyline có cao độ bằng 0 còn đỉnh pick bên ngoài có cao độ khác 0 .

Bác xem giúp vấn đề này với.


  • 0

#14 phamthanhbinh

phamthanhbinh

    biết lệnh adcenter

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

Đã gửi 18 March 2015 - 02:54 PM

Em đã thay dòng (setvar "osmode" 0) thành (setvar "osmode" 512) và thử vẽ 2 đường Polyline làm 2 điểm ngăn( giả định) và dùng lệnh VPDD để chọn điểm nằm trên 2 đường thẳng vừa vẽ. và thử pick 1 điểm ra ngoài 2 đường đó kết quả là 2 đỉnh chọn trên 2 đường polyline có cao độ bằng 0 còn đỉnh pick bên ngoài có cao độ khác 0 .

Bác xem giúp vấn đề này với.

Hề hề hề,

Bạn sử dụng truy bắt điểm là 512 tức là nearest. Do vậy khi Cad thực hiện lệnh vẽ trên màn hình, nếu bạn vẫn để ở chế dộ phẳng (top) thì Cad sẽ chọn điểm gần với một đối tượng đã có trên màn hình nhất tính từ điểm pick (có nghĩa là lấy chính điểm có trên đối tượng chuẩn của bạn chứ không phải điểm p01 trong lisp).

Đó chính là nhược điểm của việc sử dụng truy bắt điểm có sẵn trong CAD.

Với trường hợp lỗi của lisp cdd cũng tương tự là do bạn đang đặt CAD ở chế độ truy bắt điểm nào đó khác với none và thực hiện lệnh lisp trên màn hình top. Việc sửa của bác ndtnv chính là khử truy bắt điểm mà thôi.

Theo kinh nghiệm của bản thân mình thường đặt CAd ở chế độ truy bắt điểm là none và khi cần truy bắt sẽ sử dụng các nút lệnh truy bắt trên CAD. Như vậy khi chạy lisp ít phải quan tâm tới việc truy bắt điểm này.

Một điều cần lưu ý nữa khi sử dụng các truy bắt điểm của CAd là nên sử dụng selection box đủ nhỏ để tránh việc truy bắt nhầm khi bản vẽ có quá nhiều đối tượng gần nhau.

 

Với trường hợp trên của bạn, hãy thử mở màn hình ở chế độ 3D (SW Isometric chẳng hạn) và thực hiện lệnh vpdd coi có còn bị như vầy nữa không khi sử dụng truy bắt điểm là 512. Khi mình test lisp cdd thì mình để màn hình ở chế độ này nên không phát hiện lỗi như bạn .


  • 0
Chúc các quý Anh trên diễn đàn luôn khỏe, đẻ thêm được nhiều thứ để mót.

#15 phuong44e1

phuong44e1

    Edu level: li4

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

Đã gửi 20 June 2015 - 04:54 PM

Chào các Pro.

Nhờ các Pro giúp e chút nha, e muốn vẽ 1 polyline với thao tác như sau:

Gọi lệnh PL1:

->Dòng nhắc sẽ báo mình đặt tên cho layer " Vui long dat ten cho layer" -> Name của layer sẽ được gõ trực tiếp vào trên dòng nhắc

->Sau khi đặt tên xong thì dòng nhắc sẽ yeu cầu chọn màu cho layer (sẽ hiện ra bảng màu cho mình chọn)

->Dòng nhắc sẽ báo chọn loại nét (sẽ hiện bảng ra cho mình chọn loại net liền hay đứt...)

->Layer này sẽ được set  thành layer  hiện hành

->Sau đó sẽ vẽ polyline như lệnh PL bình thường.

 

Cảm ơn các Pro nhiều.


  • 0

#16 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5447 Bài viết
Điểm đánh giá: 2624 (tuyệt vời)

Đã gửi 20 June 2015 - 04:59 PM

Việc này dùng lệnh Layer và Pline chắc nhanh hơn lisp đó bạn!


  • 0

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#17 phuong44e1

phuong44e1

    Edu level: li4

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

Đã gửi 20 June 2015 - 05:15 PM

Việc này dùng lệnh Layer và Pline chắc nhanh hơn lisp đó bạn!

Chào bạn Đoàn Văn Hà.

Mình biết sử dụng hai lệnh này là rất đơn giản và nhanh. nhưng mình mong muốn được làm như vậy. Nếu được rất mong bạn giúp mình.

Rất xin lỗi vì mình đăng bài vào chủ đề của bạn. Nhưng quả thực mình tìm cách đang bài mới mà không được. Hihi


  • 0

#18 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5447 Bài viết
Điểm đánh giá: 2624 (tuyệt vời)

Đã gửi 20 June 2015 - 05:32 PM

Viết thì được thôi, nhưng viết nhằm mục đích gì thì chưa hiểu?


  • 0

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#19 phuong44e1

phuong44e1

    Edu level: li4

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

Đã gửi 20 June 2015 - 05:42 PM

Chào bạn Doan van Ha,

Mình muốn sử dụng hàm kết hợn này thì trông nó chuyên nghiệp hơn ý mà.

mình làm dự toán, muốn gộp nó lại như là lệnh vẽ cấu kiện. như vậy trông nó sẽ chuyên nghiệp hơn sử dụng hai lệnh LA và PL.

Please help me!


  • 0

#20 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5447 Bài viết
Điểm đánh giá: 2624 (tuyệt vời)

Đã gửi 21 June 2015 - 08:18 AM

Thích sang chảnh thì thế này:

(defun C:PL1()
 (initdia)
 (command "layer")
 (command "pline"))

  • 1

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.