Chuyển đến nội dung
Diễn đàn CADViet
  • Thông báo

    • Nguyen Hoanh

      CADViet đã hoàn tất nâng cấp   14/09/2017

      Chào các bạn, CADViet đã hoàn tất việc nâng cấp lên phiên bản mới. Tất cả các chức năng đã hoạt động theo kỳ vọng của ban quản trị. Nếu có vấn đề gì cần phản hồi, các bản post ở đây nhé: Trân trọng, Nguyễn Hoành.
Đăng nhập để thực hiện theo  
codered8x

Làm thế nào vẽ nhanh hình này?

Các bài được khuyến nghị

codered8x    18

Mình đang làm đồ án, vẽ cái hình này rất lâu và tốn công sức, bạn nào biết cách vẽ nhanh khôg chỉ mình bit với.Tại mình phải vẽ nhiều hình dạng như thế này với số lượng lỗ khoan nạp thuốc thay đổi và mỗi đường chu vi qui định một số lượng lỗ khoan nạp thuốc cho trước, biết kích thước hầm.Thanks!

http://www.cadviet.com/upfiles/2/no1.dwg

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Tue_NV    3.841
Mình đang làm đồ án, vẽ cái hình này rất lâu và tốn công sức, bạn nào biết cách vẽ nhanh khôg chỉ mình bit với.Tại mình phải vẽ nhiều hình dạng như thế này với số lượng lỗ khoan nạp thuốc thay đổi và mỗi đường chu vi qui định một số lượng lỗ khoan nạp thuốc cho trước, biết kích thước hầm.Thanks!

http://www.cadviet.com/upfiles/2/no1.dwg

Thảo nào việc nối các Spline để DIV hay ME ở chủ đề này của codered8x

Gộp nhiều đường cong thành một đường cong?? cũng là vì lý do ở bài viết này

 

Như Tue_NV đã trả lời ở Topic theo đường Link trên -> Không thể nối các Spline được.

Nhưng với POLYLINE thì được -> Do đó, ta tìm cách chuyển các Spline thành các Pline sau đó nối với nhau. Khi chuyển Spline thành Pline thì số phân đoạn chia phải đủ nhỏ để PLINE "gần giống" với SPLINE.

Cách chuyển SPLINE thành PLINE : ->>> Có thể sử dụng Lệnh Flatten hoặc có các Lisp đã viết trên diễn đàn

Sau khi nối các Pline -> Sử dụng lệnh ME hay DIV chia các Block trên PLINE vừa nối đó

 

Lẽ đương nhiên, nếu sử dụng Lisp thì hình vẽ của bạn sẽ được vẽ 1 cách nhanh chóng.

-> Nó sẽ tự động chia và đánh số thứ tự lỗ khoan luôn với điều kiện : khoảng cách giữa lỗ khoan đều nhau hoặc khoảng cách giữa lỗ khoan tuân theo 1 quy luật nào đó. Thời gian này Tue_NV rất bận nên không thể viết được.

 

Chúc em hoàn thành đồ án thật tốt :cheers:

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
codered8x    18

Cảm ơn bác Tuệ, e làm gần được rồi, còn thắc mắc là làm sao để lệnh DIV nó chọn điểm bắt đầu chia là do mình chọn nhỉ?Ví dụ e muốn các lỗ khoan nạp thuốc ở các đường chu vi đều có 1 lỗ nằm trên trục đối xứng của hầm.Thứ 2 là vấn đề đánh số lỗ khoan, có cách nào đánh nhanh không nhỉ chứ đánh thủ công thì lầu quá.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Tue_NV    3.841
Cảm ơn bác Tuệ, e làm gần được rồi, còn thắc mắc là làm sao để lệnh DIV nó chọn điểm bắt đầu chia là do mình chọn nhỉ?Ví dụ e muốn các lỗ khoan nạp thuốc ở các đường chu vi đều có 1 lỗ nằm trên trục đối xứng của hầm.Thứ 2 là vấn đề đánh số lỗ khoan, có cách nào đánh nhanh không nhỉ chứ đánh thủ công thì lầu quá.

1. codered8x muốn thế nào ? lệnh DIV bắt đầu chia là do mình chọn là sao?

Tue_NV nghĩ ý này xem có đúng không nhé?

-> Bẽ gãy 1 điểm tại Pline

-> Chọn 1 đối tượng trong 2 đoạn bẽ gãy đó làm đối tượng chia

-> Bắt đầu chia Block trên đối tượng vừa chọn với điểm bắt đầu chia là điểm bẽ gãy (điểm này do user chọn đầu tiên)

-> Nối 2 đoạn đã bẽ gãy ở trên thành 1 đoạn duy nhất

Phải cái ý này hôn?

 

2. Đã có nhiều Lisp trên diễn đàn viết về đánh số thứ tự. Bạn có thể sử dụng code này của Tue_NV :

(defun c:dstt(/ dau po po1 ent i)
;copyright by Tue_NV
;(prompt "\n Danh so thu tu dang n/m ")
(setvar "cmdecho" 0)

(setq dau (getint "\n Danh so bat dau (n) :"))

(setq po (getpoint (strcat "\n Cho diem chen cua so : " (itoa dau))) i 1)
(wtxt (itoa dau) po)

(while
(setq po1 (getpoint po (strcat "\n Cho diem chen cua so : " (itoa (+ dau i)) )))

(command "copy" "L" "" po po1) 
(setq ent (entget(entlast)))
(setq ent (subst (cons 1 (itoa (+ dau i)) ) (assoc 1 ent) ent))
(entmod ent)
(setq i (1+ i))
(setq po po1)
)
(princ)
)
;
(defun wtxt (txt p / sty d h)
(setq sty (getvar "textstyle")
d (tblsearch "style" sty)
h (cdr (assoc 40 d)))
(entmake (list (cons 0 "TEXT") (cons 7 sty) (cons 1 txt) (cons 10 p) (cons 11 p) 
(cons 72 1) (cons 73 2)
(if (> h 0) (cons 40 h) (assoc 40 d)) (assoc 41 d))
)
)

  • Vote tăng 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Tạo một tài khoản hoặc đăng nhập để nhận xét

Bạn cần phải là một thành viên để lại một bình luận

Tạo tài khoản

Đăng ký một tài khoản mới trong cộng đồng của chúng tôi. Điều đó dễ mà.

Đăng ký tài khoản mới

Đăng nhập

Bạn có sẵn sàng để tạo một tài khoản ? Đăng nhập tại đây.

Đăng nhập ngay

Đăng nhập để thực hiện theo  

×