Đến nội dung


Hình ảnh
5 stars - based on 24598 reviews
* * * - - 3 Bình chọn

Hướng dẫn lập trình Lisp


  • Please log in to reply
493 replies to this topic

#441 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

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

Đã gửi 03 December 2012 - 02:16 PM

thank bác e đã thêm dòng tắt osnap và đã vẽ đc chuẩn như sau:
sau khi load lisp và nhập thông số xong thì lisp vẫn vẽ ra đc mặt cắt nhưng lại báo: too few arguments cho e hỏi thế là sao ạ

Tôi test OK. Bạn down về thử lại nhé. Tôi thêm cho bạn 2 dòng code để khỏi bận tâm osnap.

(defun C:VMC(/ a b c p1 p2 p3 p4 p5 p6 p7 p8 p9 osm)
(setq osm (getvar "osmode"))
;;;Nhap so lieu
(setq
a(getreal"\nBE RONG MAT DUONG a=")
b(getreal"\nBE RONG HE b=")
c(getreal"\nCHENH CAO BO VIA c=")
p1(getpoint"\nCHON DIEM DAT: ")
;;;Tinh toa do
p2(polar p1 0.0 (+(* 2 a) (* 2 B)))
p3(polar p2 (/ pi 2) 1)
p4(polar p3 (+(atan 0.02) pi) (/ b (cos(atan 0.02))))
p5(polar p4 (+ pi (/ pi 2)) c)
p6(polar p5 (- pi (atan 0.02)) (/ a (cos(atan 0.02))))
p7(polar p6 (+ pi (atan 0.02)) (/ a (cos(atan 0.02))))
p8(polar p7 (/ pi 2) c)
p9(polar p8 (- pi (atan 0.02)) (/ b (cos(atan 0.02))))
)
;;;Set object snap OFF
(setvar "osmode" 0)
;;;ve mat cat
(command "pline" p1 p2 p3 p4 p5 p6 p7 p8 p9 "c")
(setvar "osmode" osm))

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


#442 hmt

hmt

    biết lệnh scale

  • Members
  • PipPipPip
  • 146 Bài viết
Điểm đánh giá: -11 (hơi kém)

Đã gửi 03 December 2012 - 03:12 PM

thank bác Bình và bac Ha, cho e hỏi thêm 1 chút. Bây h e muốn vẽ 1 đoạn pline có độ dày mặc định là 0.1 chẳng hạn qua các điểm p3 p4 p5 p6 p7 p8 p9 thì phải thêm dòng ntn ạ?
  • 0

#443 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

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

Đã gửi 03 December 2012 - 03:20 PM

Thay dòng vẽ pline bằng dòng dưới đây. Bạn cũng nên tự ngâm cứu từ command pline để suy ra được mà, chứ tôi e là nếu cái gì cũng hỏi sẽ lâu tiến bộ đó nghen.
(command "pline" p1 p2 p3 "w" 0.1 0.1 p4 p5 p6 p7 p8 p9 "w" 0 0 "c")
  • 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.


#444 hmt

hmt

    biết lệnh scale

  • Members
  • PipPipPip
  • 146 Bài viết
Điểm đánh giá: -11 (hơi kém)

Đã gửi 03 December 2012 - 03:23 PM

:D hi trước khi hỏi e cũng đã ngâm dòng command rồi và có thay giống như thế này ko hiểu sao . nó cứ ra cả loạt tất cả các nét là 0.1 nên e mới hỏi ạ
  • 0

#445 hmt

hmt

    biết lệnh scale

  • Members
  • PipPipPip
  • 146 Bài viết
Điểm đánh giá: -11 (hơi kém)

Đã gửi 03 December 2012 - 04:05 PM

thank bác e thay đoạn của bác vào thì ổn, do e ko hiểu đc trình tự của dòng command khi vẽ 1 lệnh pline thay đổi độ dày nên e thay sai hết cả :D
  • 0

#446 tientracdia

tientracdia

    biết lệnh scale

  • Members
  • PipPipPip
  • 147 Bài viết
Điểm đánh giá: -11 (hơi kém)

Đã gửi 03 December 2012 - 08:53 PM

Trước đây mình cũng có viết một hàm vẽ HCN với yêu cầu khác của bạn một chút.
Bạn có thể tham khảo để thấy được kết quả trong khi chọn điểm thứ ba.

(defun RectangPts (p1 p2 rp3 rp4 / a )
(setq a (angle p1 p2))
(set rp4 (inters p1 (polar p1 (+ a (/ pi 2)) 100) (eval rp3) (polar (eval rp3) a 100) nil))
(set rp3 (polar (eval rp4) a (distance p1 p2)))
)

(defun C:RotateRectang (/ n p1 p2 p3 p4 a grdat om)
(setq p1 (getpoint "\nPoint 1:") p2 (getpoint p1 "\nPoint 2:") a (angle p1 p2))
(while (/= 3 n)
(setq grdat (grread t 7 0) n (car grdat) p3 (cadr grdat))
(if (eq 5 n)
(progn
(redraw)(RectangPts p1 p2 'p3 'p4 )
(grvecs (list -7 p1 p2 p2 p3 p3 p4 p4 p1) )
) )
)
(setq om (getvar "osmode"))
(setvar "osmode" 0)
(redraw)(RectangPts p1 p2 'p3 'p4 )
(command "PLINE" p1 p2 p3 p4 "c" )
(setvar "osmode" om)
)

Nhờ Bạn chỉnh lisp vẽ kiễu nhà dựa trên lisp vẽ hình chữ nhật trên, mong duoc giup do
Cám ơn
http://www.cadviet.c..._nha_ngoi_1.dwg
  • 0

#447 romeodeath

romeodeath

    Chưa sử dụng CAD

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

Đã gửi 25 June 2014 - 10:15 PM

bác nào cho em xin lại cái link hướng dẫn cái. e vào thì bị die mất link oy


  • 0

#448 Trần Kuly

Trần Kuly

    Chưa sử dụng CAD

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

Đã gửi 28 July 2014 - 01:31 PM

Tự tay mình lập một chương trình Lisp có gì khác so với nhờ ai đó làm? Chưa cần xét kết quả, điểm khác nhau rất cơ bản là bạn sẽ có được cái cảm giác rất là khoái chí (không thể diễn tả) khi chạy thử chương trình.
Ssg lập topic này không ngoài mục đích tạo điều kiện cho các bạn tự mình tìm hiểu và khám phá cái cảm giác "khoái chí không thể diễn tả" nói trên.
Với tinh thần "Share is Receive", ssg cũng mong các bạn đã thành thạo Lisp quan tâm giúp đỡ các bạn mới để cộng đồng Lisp của CadViet ngày càng đông vui và tạo được nhiều chương trình hữu ích.
Để bắt đầu, ssg post lại một bài viết cũ, nhưng có lẽ vẫn còn mới đối với một số bạn. Hy vọng sẽ giúp được chút gì đó cho các bạn mới tiếp cận với Lisp:

http://www.cadviet.c...les/Relax_1.zip

Download, giải nén rồi đọc file *.doc

Link die rùi Bác ui! Bác up lại hoặc cho em xin file qua mail: tranthien.int@gmail.com dc ko ạ? Thank bác nhiều!


  • 0

#449 Trần Kuly

Trần Kuly

    Chưa sử dụng CAD

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

Đã gửi 05 August 2014 - 11:36 AM

Tự tay mình lập một chương trình Lisp có gì khác so với nhờ ai đó làm? Chưa cần xét kết quả, điểm khác nhau rất cơ bản là bạn sẽ có được cái cảm giác rất là khoái chí (không thể diễn tả) khi chạy thử chương trình.
Ssg lập topic này không ngoài mục đích tạo điều kiện cho các bạn tự mình tìm hiểu và khám phá cái cảm giác "khoái chí không thể diễn tả" nói trên.
Với tinh thần "Share is Receive", ssg cũng mong các bạn đã thành thạo Lisp quan tâm giúp đỡ các bạn mới để cộng đồng Lisp của CadViet ngày càng đông vui và tạo được nhiều chương trình hữu ích.
Để bắt đầu, ssg post lại một bài viết cũ, nhưng có lẽ vẫn còn mới đối với một số bạn. Hy vọng sẽ giúp được chút gì đó cho các bạn mới tiếp cận với Lisp:

http://www.cadviet.c...les/Relax_1.zip

Download, giải nén rồi đọc file *.doc

LINK DIE RÙI BÁC SSG ƠI! NHỜ BÁC ÚP LẠI ANH EM NGHIÊN CỨU VỚI! THANKS BÁC NHIỀU!


  • 0

#450 cunipro

cunipro

    biết zoom

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

Đã gửi 27 September 2014 - 12:09 AM

bác SSQ ơi . . .sao em dow cái http://www.cadviet.c...les/Relax_1.zip của bác mà chưa được. . . mong bác sớm up để e được mò theo . . . .  :ph34r:  :ph34r:  :ph34r:  :ph34r:


  • 0

#451 Chutuyen

Chutuyen

    biết vẽ circle

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

Đã gửi 24 April 2015 - 08:06 AM

rổi bac ssg co the up lai k0, link bị hỏng rôi


  • 0

#452 thdong2010

thdong2010

    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 July 2015 - 07:22 AM

Bạn chủ topic vui  lòng up lại link tải hướng dẫn giúp. Mình cảm ơn.


  • 0

#453 hmt

hmt

    biết lệnh scale

  • Members
  • PipPipPip
  • 146 Bài viết
Điểm đánh giá: -11 (hơi kém)

Đã gửi 23 July 2015 - 10:26 AM

Chào mọi người, e có down lại lisp này. ko hiểu sao load lên cad 2013 lại báo lỗi" error: bad argument type: numberp: nil" khi chọn điểm đặt mặt cắt. Nhờ mọi ng xem giúp :) thank all

;; free lisp from cadviet.com
;;; this lisp was downloaded from http://www.cadviet.com/forum/topic/2480-huong-dan-lap-trinh-lisp/page-23
(defun C:VMC(/ a b c p1 p2 p3 p4 p5 p6 p7 p8 p9 osm)
(setq osm (getvar "osmode"))
;;;Nhap so lieu
(setq
a(getreal"\nBE RONG MAT DUONG a=")
b(getreal"\nBE RONG HE b=")
c(getreal"\nCHENH CAO BO VIA c=")
p1(getpoint"\nCHON DIEM DAT: ")
;;;Tinh toa do
p2(polar p1 0.0 (+(* 2 a) (* 2 b) /cool.png' class='bbc_emoticon' alt='B)' />))
p3(polar p2 (/ pi 2) 1)
p4(polar p3 (+(atan 0.02) pi) (/ b (cos(atan 0.02))))
p5(polar p4 (+ pi (/ pi 2)) c)
p6(polar p5 (- pi (atan 0.02)) (/ a (cos(atan 0.02))))
p7(polar p6 (+ pi (atan 0.02)) (/ a (cos(atan 0.02))))
p8(polar p7 (/ pi 2) c)
p9(polar p8 (- pi (atan 0.02)) (/ b (cos(atan 0.02))))
)
;;;Set object snap OFF
(setvar "osmode" 0)
;;;ve mat cat
(command "pline" p1 p2 p3 p4 p5 p6 p7 p8 p9 "c")
(setvar "osmode" osm))


  • -1

#454 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

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

Đã gửi 23 July 2015 - 10:49 AM

Chọn dòng:

p2 (polar...

Và sửa lại:
p2 (polar p1 0.0 (+ (* 2 a) (* 2 ))


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


#455 trinhngoctri

trinhngoctri

    biết vẽ pline

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

Đã gửi 05 August 2015 - 10:54 AM

Tự tay mình lập một chương trình Lisp có gì khác so với nhờ ai đó làm? Chưa cần xét kết quả, điểm khác nhau rất cơ bản là bạn sẽ có được cái cảm giác rất là khoái chí (không thể diễn tả) khi chạy thử chương trình.
Ssg lập topic này không ngoài mục đích tạo điều kiện cho các bạn tự mình tìm hiểu và khám phá cái cảm giác "khoái chí không thể diễn tả" nói trên.
Với tinh thần "Share is Receive", ssg cũng mong các bạn đã thành thạo Lisp quan tâm giúp đỡ các bạn mới để cộng đồng Lisp của CadViet ngày càng đông vui và tạo được nhiều chương trình hữu ích.
Để bắt đầu, ssg post lại một bài viết cũ, nhưng có lẽ vẫn còn mới đối với một số bạn. Hy vọng sẽ giúp được chút gì đó cho các bạn mới tiếp cận với Lisp:

http://www.cadviet.c...les/Relax_1.zip

Download, giải nén rồi đọc file *.doc

 

sao tôi không Download được nó báo lỗi 404


  • 0

#456 phamthanhbinh

phamthanhbinh

    biết lệnh adcenter

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

Đã gửi 05 August 2015 - 02:03 PM

sao tôi không Download được nó báo lỗi 404

Hề hề hề,

Bạn muốn download cái chi chi????


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

#457 phamthanhbinh

phamthanhbinh

    biết lệnh adcenter

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

Đã gửi 05 August 2015 - 02:07 PM

sao tôi không Download được nó báo lỗi 404

Hề hề hề,

Bạn muốn download cái chi chi????


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

#458 haanh

haanh

    biết lệnh adcenter

  • Members
  • PipPipPipPipPipPipPip
  • 2930 Bài viết
Điểm đánh giá: 1574 (rất tốt)

Đã gửi 05 August 2015 - 10:01 PM

sao tôi không Download được nó báo lỗi 404

 

Tình hình rằng thì mà là , sau khi bấm chuột  vào chữ Download , em cũng thấy nó lòi ra  cái thông báo sau:

11837_xxxxa.png

 

Buồn ...cưới  nhể ???? :) :) :) :)


  • 0

“Sống trong đời sống cần có một tấm lòng / Để làm gì em biết không ? / Để gió cuốn đi, để gió cuốn đi...”


#459 trinhngoctri

trinhngoctri

    biết vẽ pline

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

Đã gửi 06 August 2015 - 09:41 AM

Tôi cần download 64998_404.jpg

phamthanhbinh
  • -1

#460 cadwt1990

cadwt1990

    Chưa sử dụng CAD

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

Đã gửi 09 August 2015 - 09:51 PM

Ban oi link bi j mak mh hok tải dc file
  • -1