Đến nội dung


Hình ảnh
* * - - - 1 Bình chọn

[Hỏi] Cùng nhau học LISP


  • Please log in to reply
171 replies to this topic

#141 trinhngoctri

trinhngoctri

    biết vẽ pline

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

Đã gửi 10 November 2011 - 11:28 AM

NHỜ ANH EM VIẾT LISP NÀY NHÉ.
là thế này. Khi mình kích chuột vô các Mốc A, Mốc B, Mốc C v.v.....(Block) thì các thông sô được xuất sang *.txt hay excel gì cũng được. xin chân thành cảm ơn

TÊN K. CÁCH GÓC CAO DỘ
A 0 0 5.935
B 30.371 1620 28' 38" 5.800
C 28.499 0 6.321
file:///C:/DOCUME~1/Admin/LOCALS~1/Temp/msohtml1/01/clip_image002.jpg
  • 0

#142 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 10 November 2011 - 11:31 AM

NHỜ ANH EM VIẾT LISP NÀY NHÉ.
là thế này. Khi mình kích chuột vô các Mốc A, Mốc B, Mốc C v.v.....(Block) thì các thông sô được xuất sang *.txt hay excel gì cũng được. xin chân thành cảm ơn

TÊN K. CÁCH GÓC CAO DỘ
A 0 0 5.935
B 30.371 1620 28' 38" 5.800
C 28.499 0 6.321

Hề hề hề,
Cứ cái mửng này thì còn lâu mới có cái bạn cần.
Hãy chịu khó tìm kiếm trước khi hỏi. Trên diễn đàn đã có khá nhiều lisp về những việc tương tự. Nếu bạn đủ tài thì có thể đọc và sửa các lisp đó theo đúng với yêu cầu của bạn.
Nếu chưa thể làm được như vầy thì hãy post cái lisp mà bạn thấy gần đúng nhất với yêu cầu của bạn cùng với bản vẽ của bạn lên, đồng thời nói rõ chỗ nào cần sửa, mọi người mới giúp được chớ.
Còn nói xuông như bạn thì bố Tây cũng chả biết cái mốc A, mốc B, mốc C, của bạn là cái khỉ mốc gì thì làm sao mà có lisp được.
Hề hề hề,....
  • 0
Chúc các quý Anh trên diễn đàn luôn khỏe, đẻ thêm được nhiều thứ để mót.

#143 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 10 November 2011 - 11:32 AM

làm thế nào để mình chèn phai cad lên trên này được. hả bác. xin các bác đừng cười nhé

Hề hề hề,
Hãy đọc kỹ quy định khi tham gia diễn đàn, sẽ biết bạn cần làm gì để post được bài, ảnh, file đính kèm lên diễn đà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.

#144 dovananh.xd

dovananh.xd

    biết lệnh offset

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

Đã gửi 10 November 2011 - 11:44 AM



Nếu ý bạn là như hình chụp thì làm như sau:
Z enter\ shift + chuột phải chọn Endpoint\ click điểm 1\ shift + chuột phải chọn Endpoint\ click điểm 2

Hình đã gửi



Cái này hay đấy, đúng ý rồi. Bây h bác phát triển cái này thành lisp đi để anh em cùng tham khảo và sử dụng trong trường hợp có nhiều Rec. Thanks bác rất nhiều!
  • 0

#145 dovananh.xd

dovananh.xd

    biết lệnh offset

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

Đã gửi 10 November 2011 - 11:46 AM

ấy chết em post thế này thì khó hiểu. thêm :"làm thế nào để đưa khung HCN vừa khít với khung MV bên layout". Làm như trên thì được rồi, bây h nhờ các bác phát triển cái này thành lisp sử dụng cho trường hợp nhiều khung giống nhau.Thanks!
  • 0

#146 ketxu

ketxu

    Copier - Paster - Editor

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

Đã gửi 10 November 2011 - 12:08 PM

Bạn trinhngoctri dovananh.xd chú ý, đây không phải topic yêu cầu / xin lisp, cũng như ngay cả nội dung viết của 2 bạn cũng không đúng. Hãy tôn trọng diễn đàn và mọi người !
  • 0

Thành viên nhóm CadMagic.
Mời bạn ghé thăm facebook nhóm - Page viết lisp theo yêu cầu  :
CAD MAGIC


#147 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 10 November 2011 - 12:15 PM

Bác Bình mình đã thử theo cách bạn, Cung arc và line không cắt nhau. Heee thiệt là làm khổ bác quá đi.

Hề hề hề,
Bạn hãy kiểm tra lại nhé. Mình đã test thử thì thấy với mọi trường hợp nếu bán kính cung sau khi offset vẫn còn đủ lớn hơn 1/2 chiều dài dây trương cung của bạn thì cái fillet sẽ OK bạn ạ. Còn nếu như bạn offset với khoảng cách o đủ lớn để bàn kính cung còn lại sau offset nhỏ hơn 1/2 chiều dài dây trương cung thì lệnh fillet với r bằng 0 sẽ thua hẳn vì lúc này cung đó sẽ không thể cắt cái đường d1 và d2 của bạn nữa.
Sở dĩ mình nói bạn chọn x bằng o chính là để cho điểm mút thứ hai của đoạn thẳng d1 sẽ luôn nằm trong cung bao sau offset và khi đó bạn fillet cung và doạn d1 sẽ cho ra cái kết quả bạn cần, Chỉ đơn giản như vậy thôi chứ chả có gì cao siêu hay bí hiểm ở đây cả. Dựa vào cái oái oăm của lệnh fillet mà thôi.
Chúc bạn 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.

#148 dovananh.xd

dovananh.xd

    biết lệnh offset

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

Đã gửi 10 November 2011 - 02:26 PM

Nhờ viết lisp
Z enter\ shift + chuột phải chọn Endpoint\ click điểm 1\ shift + chuột phải chọn Endpoint\ click điểm 2

Hình đã gửi


Lisp cho khung chữ nhật bên model trùng khít với khung mview bên layout trong trường hợp có nhiều khung
  • 0

#149 ketxu

ketxu

    Copier - Paster - Editor

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

Đã gửi 10 November 2011 - 02:52 PM

Cảnh báo bạn dovananh.xd lần 2!
  • 0

Thành viên nhóm CadMagic.
Mời bạn ghé thăm facebook nhóm - Page viết lisp theo yêu cầu  :
CAD MAGIC


#150 trinhngoctri

trinhngoctri

    biết vẽ pline

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

Đã gửi 10 November 2011 - 04:47 PM

Bạn trinhngoctri dovananh.xd chú ý, đây không phải topic yêu cầu / xin lisp, cũng như ngay cả nội dung viết của 2 bạn cũng không đúng. Hãy tôn trọng diễn đàn và mọi người !

xin lỗi.
  • 0

#151 Luxury037

Luxury037

    biết vẽ point

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

Đã gửi 29 November 2011 - 09:04 AM

Em chào các bác !
Em mới tìm hiểu về Lisp nên có chỗ hơi khó hỉu tý, muốn nhờ các bác chỉ giúp em:
Em có điểm A là điểm chèn ở 1 đỉnh của Hình chữ nhật cạnh a x b. giờ em dùng hàm chi để lấy tọa độ của đỉnh đối diện được ạ.
Em xin cảm ơn nhiều !
  • 0

Cái gì mua không được bằng tiền, sẽ mua được bằng rất nhiều tiền !!!
nhq08ql_KTD
YH: conthuyenkhongben0511


#152 ketxu

ketxu

    Copier - Paster - Editor

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

Đã gửi 29 November 2011 - 09:35 AM

Bạn thử Rotate HCN đó xung quanh điểm A => điểm B chạy trên đường tròn tâm A, bán kính = đường chéo HCN (căn bậc 2 (a^2+b^2))
  • 1

Thành viên nhóm CadMagic.
Mời bạn ghé thăm facebook nhóm - Page viết lisp theo yêu cầu  :
CAD MAGIC


#153 Detailing

Detailing

    biết lệnh imageclip

  • Members
  • PipPipPipPipPipPipPip
  • 667 Bài viết
Điểm đánh giá: 278 (khá)

Đã gửi 29 November 2011 - 10:07 AM

Bạn thử Rotate HCN đó xung quanh điểm A => điểm B chạy trên đường tròn tâm A, bán kính = đường chéo HCN (căn bậc 2 (a^2+b^2))

hàm polar cần 3 thông số point, angle, distance ket mới chỉ ra distance vậy angle xác định ra sao?


Em chào các bác !
Em mới tìm hiểu về Lisp nên có chỗ hơi khó hỉu tý, muốn nhờ các bác chỉ giúp em:
Em có điểm A là điểm chèn ở 1 đỉnh của Hình chữ nhật cạnh a x b. giờ em dùng hàm chi để lấy tọa độ của đỉnh đối diện được ạ.
Em xin cảm ơn nhiều !

Đỉnh của bạn là đỉnh nào: Top-Left, Right-Left, Bottom-Left hay Bottom-Right?
Sau khi xác định dc "đỉnh nào rồi thì bạn dùng công hức toán học như Ketxu nói hoắc dùng 2 hàm polar để tìm đỉnh đối diện
Thân!
  • 2

Ideas don't matter, execution does!

1908412_308002392716743_8165279281236341


#154 ketxu

ketxu

    Copier - Paster - Editor

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

Đã gửi 29 November 2011 - 10:13 AM

Chính vì bạn Luxury hỏi hời hợt nên câu trả lời như vậy là tổng quát r ^^
Á, còn quên, nhỡ bạn ấy lại hỏi trong 3D. Vậy sửa lại là hình cầu ^^
  • 0

Thành viên nhóm CadMagic.
Mời bạn ghé thăm facebook nhóm - Page viết lisp theo yêu cầu  :
CAD MAGIC


#155 Luxury037

Luxury037

    biết vẽ point

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

Đã gửi 29 November 2011 - 11:57 AM

Em chào các bác ! Em nhờ các bác xem giúp em đoạn CODE này với. Em đang tập tành với cái thằng LIsp này mà cứ lỗi miết.
Chả là không biết bị răng mà khi em chạy nó cứ báo : Unknow Command .Nhưng em thấy lạ, sau khi load chạy nó báo vậy, em làm câu lệnh lấy cái điểm a mới: (setq a(getpoint)) thì lại được.
Code của nó đây ạ !
Em xin cảm ơn các bác nhiều !

(defun vekhungten (/ a el1 el2 kc el3 kg)
(setq a(getpoint"\n chon diem chen:")
)
(command ".line" a (polar a (/ pi 2) 80 ) "")
(setq el1(entlast))
(command ".offset" "180" el1 (polar a pi 20) "")
(command ".offset" "80" el1 (polar a pi 20) "")
(command ".line" a (polar a pi 180) "")
(setq el2(entlast))
(command ".offset" "80" el2 (polar a (/ pi 2) 50) "")
(command ".offset" "50" el2 (polar a (/ pi 2) 50) "")
(setq kc 0)
(Repeat 4
(setq kc(+ kc 10))
(command ".offset" kc el2 (polar a (/ pi 2) 200) "")
)

(command ".line" (polar a pi 40) (polar (polar a pi 40) (/ pi 2) 30 ) "")
(command ".line" (polar a pi 160) (polar (polar a pi 160) (/ pi 2) 50) "")
(setq el3(entlast))
(command ".offset" "60" el3 a "")
(command ".trim" "" (polar (polar a pi 40) (/ pi 2) 40) (polar (polar a pi 40) (/ pi 2) 35) ^C^C )
)
(defun c:kt ()
(setq cmdluu(getvar "cmdecho")
osm(getvar "osmode")
)
(setvar "cmdecho" 0)
(initget 1 " A0 A1 A2 A3 A4")
(setq kg(strcase(getkword "\n Chon kho giay <A0/ A1/ A2/ A3/ A4>:")))
(vekhungten)
(Cond
((= kg "A0")
(command ".rectangle" a "@ -1189,841")
)
((= kg "A1")
(command".rectangle" a "@ -841,594")
)
((= kg "A2")
(command".rectangle" a "@ -594,420")
)
((= kg "A3")
(command".rectangle" a "@ -420,297")
)
((= kg "A4")
(command".rectangle" a "@ -297,210")
)
)
(setvar "cmdecho" cmdluu)
(princ)
)
;;;;; (command "-style" "BT" "Arial" "0" "1" "0" "n" "n")
;;;;; (command ".Text" (polar (polar a pi 70) (/ pi 2) 3) 5 0 "BV So:" ) ;;; Sai Diem Chen


  • 0

Cái gì mua không được bằng tiền, sẽ mua được bằng rất nhiều tiền !!!
nhq08ql_KTD
YH: conthuyenkhongben0511


#156 Luxury037

Luxury037

    biết vẽ point

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

Đã gửi 01 December 2011 - 04:13 AM

Với các bác giới thiệu thêm cho em cách đổi 1 đối tượng qua Layer khác với ah :mellow: :mellow:
  • 0

Cái gì mua không được bằng tiền, sẽ mua được bằng rất nhiều tiền !!!
nhq08ql_KTD
YH: conthuyenkhongben0511


#157 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

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

Đã gửi 01 December 2011 - 07:06 AM

Em chào các bác ! Em nhờ các bác xem giúp em đoạn CODE này với. Em đang tập tành với cái thằng LIsp này mà cứ lỗi miết.
Chả là không biết bị răng mà khi em chạy nó cứ báo : Unknow Command .Nhưng em thấy lạ, sau khi load chạy nó báo vậy, em làm câu lệnh lấy cái điểm a mới: (setq a(getpoint)) thì lại được.
Code của nó đây ạ !
Em xin cảm ơn các bác nhiều !


Bạn kiểm tra lại các hàm (command...) vì bạn đã viết sai cú pháp.
  • 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.


#158 duy782006

duy782006

    PHẠM QUỐC DUY

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

Đã gửi 01 December 2011 - 09:30 AM

Với các bác giới thiệu thêm cho em cách đổi 1 đối tượng qua Layer khác với ah Hình đã gửi Hình đã gửi

(command "chprop" doituong "" "la" "lopchuyen" "")
Dòng trên chuyễn đối tượng doituong sang layer lopchuyen với điều kiện layer lopchuyen đã tồn tại trong bản vẽ.
  • 1

Cứ ngỡ trần gian là cõi thật.Cho nên tất bật đến bây giờ.
Tạo hộp thoại bằng lisp My blog QUY ĐỊNH ĐẶT TÊN TOPIC TRONG CHUYÊN MỤC LISPD http://ktsduy.wordpress.com/
Để cám ơn chỉ cần nhấn rep_up.png
(Là nhấn vào nút đó phía bài viết của người ta í chứ đừng có nhè cái hình này mà nhấn miết đi nha :-D


#159 Luxury037

Luxury037

    biết vẽ point

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

Đã gửi 01 December 2011 - 12:21 PM


Bạn kiểm tra lại các hàm (command...) vì bạn đã viết sai cú pháp.

Dạ cái cú pháp này em đã kiểm tra rồi ạh. em chọn 1 điểm a mới sau đó lấy các command trên để thử thì vẫn bình thường mà bác.hjhj :mellow:
  • 0

Cái gì mua không được bằng tiền, sẽ mua được bằng rất nhiều tiền !!!
nhq08ql_KTD
YH: conthuyenkhongben0511


#160 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

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

Đã gửi 01 December 2011 - 01:54 PM

Dạ cái cú pháp này em đã kiểm tra rồi ạh. em chọn 1 điểm a mới sau đó lấy các command trên để thử thì vẫn bình thường mà bác.hjhj :mellow:


Ít nhất là trong các hàm (command "offset"...) thì bạn đã sai ở chỗ: các khoảng cách để offset phải viết theo dạng real (VD: 50) chứ không thể viết theo dạng string (VD: "50" như của bạn), tức là bạn dư 2 dấu ngoặc kép ".
P/S: srr, bị nhầm!
  • 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.