Đến nội dung


Hình ảnh
- - - - -

Lisp mở rộng lệnh chamfer


  • Please log in to reply
11 replies to this topic

#1 dien124

dien124

    biết zoom

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

Đã gửi 08 January 2011 - 10:12 AM

em có vấn đề thế này mong các ban trên diển đàn ra tay
(lưu ý: sử dụng kểu vát cách đều với góc vát 45độ)
http://www.cadviet.c...gui_cadviet.png
  • 0

#2 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

  • Moderator
  • PipPipPipPipPipPipPip
  • 4296 Bài viết
Điểm đánh giá: 3804 (đỉnh cao)

Đã gửi 08 January 2011 - 10:35 AM

em có vấn đề thế này mong các ban trên diển đàn ra tay
(lưu ý: sử dụng kểu vát cách đều với góc vát 45độ)
http://www.cadviet.c...gui_cadviet.png

Cái này đâu phải sử dụng tới Lisp :

Command: CHAMFER
(TRIM mode) Current chamfer Length = 2500.0000, Angle = 45
Select first line or [Undo/Polyline/Distance/Angle/Trim/mEthod/Multiple]: A -> gõ A
Specify chamfer length on the first line <2500.0000>: 2500 -> Nhập k/cách chamfer
Specify chamfer angle from the first line <45>: 45 -> Góc Chamfer

Select first line or [Undo/Polyline/Distance/Angle/Trim/mEthod/Multiple]: -> Pick 1 cạnh thứ nhất
Select second line or shift-select to apply corner: -> Pick 1 cạnh thứ hai

2 cạnh được chọn sẽ vát như ý của bạn
  • 0

#3 dien124

dien124

    biết zoom

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

Đã gửi 08 January 2011 - 11:12 AM

Cái này đâu phải sử dụng tới Lisp :

Command: CHAMFER
(TRIM mode) Current chamfer Length = 2500.0000, Angle = 45
Select first line or [Undo/Polyline/Distance/Angle/Trim/mEthod/Multiple]: A -> gõ A
Specify chamfer length on the first line <2500.0000>: 2500 -> Nhập k/cách chamfer
Specify chamfer angle from the first line <45>: 45 -> Góc Chamfer

Select first line or [Undo/Polyline/Distance/Angle/Trim/mEthod/Multiple]: -> Pick 1 cạnh thứ nhất
Select second line or shift-select to apply corner: -> Pick 1 cạnh thứ hai

2 cạnh được chọn sẽ vát như ý của bạn

cám ơn bạn nhưng bạn chưa hiểu ý tôi rồi.
chúng ta cứ hình dung sẻ cắt ra 1 tam giác vuông cân thì lệnh chamfer chỉ cho ta 2 tuỳ chọn đó là nhập 2 cạnh góc vuông(có thể bằng nhau hoặc không) hoặc nhập 1 cạnh góc vuông và góc vát.
bây giờ điều em muốn là chúng ta sử dụng lệnh và nhập vào cạnh huyền(khoảng cách a trên hình minh hoạ)của tam giác vuông cân đó.
  • 0

#4 dien124

dien124

    biết zoom

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

Đã gửi 10 January 2011 - 10:07 AM

em xin trình bày rỏ ràng lại thế này:
Hình đã gửi
với lệnh "cha" ta chỉ có các tùy chọn:
Undo: hủy lệnh
Polyline: Nếu plyline của bạn tạo thành polygon thì lệnh này sẽ vát mép toàn bộ các góc của polygon đó theo khoảng cách đã được chọn.
Distance: cho phép chọn 2 khoảng cách của mép vát
Angle: chọn khoảng cách cần cắt của đối tượng thứ nhất sau đó chọn góc tạo bởi mép vát và đối toợng đó
Trim/Notrim: cắt bỏ hay không cắt bỏ phần dư
mEthod: tương đương với việc chọn Distance hay Angle
Multiple: Lặp lại lệnh. Sau khi Chamfer một cặp đối tượng sẽ lặp lại lệnh để Chamfer cặp đối tượng khác.
các bác trên diển đàn có thể viết lisp mở rông lệnh này để cho phép người dùng nhập vào khoảng cách a thì lisp sẻ tự động tính toán và cắt như hình vẽ được ko ah.
cám ơn mọi người
  • 0

#5 minhtu2004

minhtu2004

    biết lệnh chamfer

  • Members
  • PipPipPipPip
  • 219 Bài viết
Điểm đánh giá: 34 (tàm tạm)

Đã gửi 05 February 2014 - 01:33 PM

-Trong cad co lệnh Chamfer có làm dc nhu vậy hok mọi người hay cần lisp. Nếu có lisp cho mình xin vì có tìm nhưng hok thấy cám ơn.


  • 0

-Nhận thực hiện bản vẽ 3D bằng revit.
-Liên hệ: 01664793290.


#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 06 February 2014 - 12:25 PM

em xin trình bày rỏ ràng lại thế này:
guicadviet.png
với lệnh "cha" ta chỉ có các tùy chọn:
Undo: hủy lệnh
Polyline: Nếu plyline của bạn tạo thành polygon thì lệnh này sẽ vát mép toàn bộ các góc của polygon đó theo khoảng cách đã được chọn.
Distance: cho phép chọn 2 khoảng cách của mép vát
Angle: chọn khoảng cách cần cắt của đối tượng thứ nhất sau đó chọn góc tạo bởi mép vát và đối toợng đó
Trim/Notrim: cắt bỏ hay không cắt bỏ phần dư
mEthod: tương đương với việc chọn Distance hay Angle
Multiple: Lặp lại lệnh. Sau khi Chamfer một cặp đối tượng sẽ lặp lại lệnh để Chamfer cặp đối tượng khác.
các bác trên diển đàn có thể viết lisp mở rông lệnh này để cho phép người dùng nhập vào khoảng cách a thì lisp sẻ tự động tính toán và cắt như hình vẽ được ko ah.
cám ơn mọi người

Hề hề hề,

Thực ra chả cần lisp để làm cáci việc này. Cad có thể thực hiện điều bạn mong muốn khá dễ dàng bằng cách kết hợp lệnh chamfer với tham số là D và việc tính toán khoảng cách D này theo giá trị mà bạn cần có của cạnh huyền.

Tỷ như bạn muốn chamfer với chiều dài cạnh huyền là 5 thì bạn hãy làm như sau:

chamfer -> D-> 'cal -> 5 / sqrt (2) -> enter->enter-> chọn đối tượng cần chém .... Vậy là sẽ có cái chamfer như bạn muốn.

Việc viết lisp cho lệnh này không phải là không thể mà giết gà thì cần chi tới dao mổ trâu cho nó thêm ...... hãi, thịt mất ngon đi hè.


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

minhtu2004

    biết lệnh chamfer

  • Members
  • PipPipPipPip
  • 219 Bài viết
Điểm đánh giá: 34 (tàm tạm)

Đã gửi 06 February 2014 - 03:18 PM

-Công thức đó chỉ áp dụng cho góc vuông thôi. Còn 1 góc bất kỳ thì hok áp dụng được với công thức trên.


  • 0

-Nhận thực hiện bản vẽ 3D bằng revit.
-Liên hệ: 01664793290.


#8 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

  • Moderator
  • PipPipPipPipPipPipPip
  • 4296 Bài viết
Điểm đánh giá: 3804 (đỉnh cao)

Đã gửi 06 February 2014 - 04:09 PM

Hề hề hề,

Thực ra chả cần lisp để làm cáci việc này. Cad có thể thực hiện điều bạn mong muốn khá dễ dàng bằng cách kết hợp lệnh chamfer với tham số là D và việc tính toán khoảng cách D này theo giá trị mà bạn cần có của cạnh huyền.

Tỷ như bạn muốn chamfer với chiều dài cạnh huyền là 5 thì bạn hãy làm như sau:

chamfer -> D-> 'cal -> 5 / sqrt (2) -> enter->enter-> chọn đối tượng cần chém .... Vậy là sẽ có cái chamfer như bạn muốn.

Việc viết lisp cho lệnh này không phải là không thể mà giết gà thì cần chi tới dao mổ trâu cho nó thêm ...... hãi, thịt mất ngon đi hè.

 

Thực ra không cần tính toán D bác ơi!

Nhập chiều dài cạnh vát D và góc vát 45 độ như bài viết số 2 của em trình bày cũng ra, bác ạ 


  • 0

#9 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 07 February 2014 - 10:47 AM

Thực ra không cần tính toán D bác ơi!

Nhập chiều dài cạnh vát D và góc vát 45 độ như bài viết số 2 của em trình bày cũng ra, bác ạ 

Hề hề hề,

Bác Tue_NV ơi, chủ thớt muốn khoảng cách cho trước là cạnh huyền của góc vuông (chiều dài đường chamfer) chứ không phải là cạnh góc vuông (chiều dài bị cắt bớt của cạnh). Do vậy dù dùng cách của bác vẫn phải qua một bước tính toán để ra được chiều dài phần bị cắt bớt tùy vào chiều dài của đường chamfer cho trước.

@ Minhtu2004: Với các góc bất kỳ thì công thức tính toán sẽ phải khác đi phụ thuộc vào góc của hai đoạn pline. Điều này chắc phải dùng tới lisp chứ nếu chỉ dùng hàm 'cal trong CAD e hơi loằng ngoằ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.

#10 Hoan1111

Hoan1111

    biết lệnh adcenter

  • Members
  • PipPipPipPipPipPipPip
  • 2587 Bài viết
Điểm đánh giá: 692 (tốt)

Đã gửi 07 February 2014 - 05:17 PM

em xin trình bày rỏ ràng lại thế này:
guicadviet.png
với lệnh "cha" ta chỉ có các tùy chọn:

cám ơn mọi người

 

AutoCAD có vẽ được cạnh huyền ( với góc vuông) và cạnh không huyền (góc không vuông) được ngon lành và chính xác tuyệt đối, không có số thập phân phía sau! Không nên lạm dụng lisp. Lạm dụng lisp trong trường hợp này chẳng khác nào thả chim phóng sinh:

Phóng sanh cầu phúc đầu năm: thiện - ác rất gần

Nguồn: http://m.tuoitre.vn/...-ac-rat-gan.ttm


  • 0

66 Câu Phật Học Cho Cuộc Sống : http://ngocchinh.com...-cho-cuoc-song/

Gió đưa cây cải về trời / Rau răm ở lại chịu lời đắng cay...

 

 


#11 minhtu2004

minhtu2004

    biết lệnh chamfer

  • Members
  • PipPipPipPip
  • 219 Bài viết
Điểm đánh giá: 34 (tàm tạm)

Đã gửi 07 February 2014 - 06:45 PM

-Lượn 1 vòng lượm dc file VLX nay up cho ai chưa có cần dùng Chamfer nhập khoảng cách cạnh huyền.

-Lệnh:chamfer2

http://www.cadviet.c...74_chamfer2.zip


  • 0

-Nhận thực hiện bản vẽ 3D bằng revit.
-Liên hệ: 01664793290.


#12 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 07 February 2014 - 09:15 PM

-Lượn 1 vòng lượm dc file VLX nay up cho ai chưa có cần dùng Chamfer nhập khoảng cách cạnh huyền.

-Lệnh:chamfer2

http://www.cadviet.c...74_chamfer2.zip

Hề hề hề,

Cám ơn bạn minhtu2004 về cái lisp này. Chỉ tiếc nó là file vlx nên mình chưa học hỏi được gì thêm từ nó.

Nhân tiện mình cũng xin up một lisp do mìnnh viết dùng để chamfer theo độ dài đường chamfer dùng với lwpolyline. Lisp mình viết chưa áp dụng với các line được, hy vọng sẽ bổ sung được sau. Với các polyline mình chưa thử, nhưng có lẻ nếu là polyline phẳng thì có thể dùng được, nhờ các bác test giùm. Với các 3Dpolyline thì chắc không ổn vì việc lấy góc giữa các đoạn của polyline sẽ không đơn giản như 2D được. Mình sẽ xem xét sau nhé.

http://www.cadviet.c...uperchamfer.lsp

 

Mình xin bổ sung thêm vào lisp trên để có thể sử dụng được với các line. Còn với 3D polyline thì xin khất lại để suy nghĩ tìm giải thuật khác.

http://www.cadviet.c...erchamfer_1.lsp


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