Đến nội dung


Hình ảnh

Xin linetype hình chữ nhật tiếp giáp nhau


  • Please log in to reply
7 replies to this topic

#1 qh2qa06

qh2qa06

    biết vẽ pline

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

Đã gửi 06 August 2014 - 05:26 PM

Mình muốn có linetype để thể hiện nét vẽ như hình đính kèm.

Các chuyên gia giúp mình được không?

Cảm ơn các bạn nhiều!http://www.cadviet.c..._net_zigzag.dwg


  • 0

#2 Lại Hải

Lại Hải

    Chưa sử dụng CAD

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

Đã gửi 18 August 2014 - 08:18 PM

Chưa hiểu ý bạn lắm?


  • 0

#3 Tot77

Tot77

    biết lệnh adcenter

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

Đã gửi 19 August 2014 - 04:31 PM

Đây đâu phải linetype, đó là các block nằm so le với nhau thôi.


  • 0

#4 qh2qa06

qh2qa06

    biết vẽ pline

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

Đã gửi 22 August 2014 - 08:21 AM

Đây đâu phải linetype, đó là các block nằm so le với nhau thôi.

Có cách nào để làm linetype dạng này không anh? Bọn em có đường sơn trên sân bay, vị trí cắt qua đường lăn có dạng đường này. Sếp em yêu cầu trình bày đúng nét, ngồi vẽ thật mất cả nửa ngày :(


  • 0

#5 Tot77

Tot77

    biết lệnh adcenter

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

Đã gửi 22 August 2014 - 09:04 AM

Tôi không biết cách nào tạo linetype như vậy, nhưng bạn có thể dùng lsp này để rải cái block đó.

Điều kiện là trong file phải có cái block tên "VH zig zag" và kích thước của nó theo chiều dài là 1.

Tôi không biết bạn vẽ theo tỉ lệ nào, cho nên cứ xài thử xem sao.

Có điều là nó rải theo khoảng cách chẵn, thí dụ nếu kc = 10.5 thì nó chỉ rải 10 thôi.

(defun c:lnt()
  (defun rtd(a) (* 180 (/ a pi)))
  
  (setvar 'insunits 0) 
  (setq a (getpoint))
  (while (setq b (getpoint a))
    (setq n -1)
    (repeat (fix (distance a b))
      (setq n (1+ n))
      (command "-insert" "VH zig zag"
(if (zerop (rem n 2))
 (polar (polar a (angle a b) n) (+ (angle a b) (* 0.5 pi)) 0.05)
 (polar (polar a (angle a b) n) (- (angle a b) (* 0.5 pi)) 0.05))
1 1 (rtd (- (angle a b) (* 0.5 pi)))))
    (setq a b)
  ) (princ)
)

  • 0

#6 qh2qa06

qh2qa06

    biết vẽ pline

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

Đã gửi 26 August 2014 - 10:45 AM

Tôi không biết cách nào tạo linetype như vậy, nhưng bạn có thể dùng lsp này để rải cái block đó.

Điều kiện là trong file phải có cái block tên "VH zig zag" và kích thước của nó theo chiều dài là 1.

Tôi không biết bạn vẽ theo tỉ lệ nào, cho nên cứ xài thử xem sao.

Có điều là nó rải theo khoảng cách chẵn, thí dụ nếu kc = 10.5 thì nó chỉ rải 10 thôi.

 

(defun c:lnt()
  (defun rtd(a) (* 180 (/ a pi)))
  
  (setvar 'insunits 0) 
  (setq a (getpoint))
  (while (setq b (getpoint a))
    (setq n -1)
    (repeat (fix (distance a b))
      (setq n (1+ n))
      (command "-insert" "VH zig zag"
(if (zerop (rem n 2))
 (polar (polar a (angle a b) n) (+ (angle a b) (* 0.5 pi)) 0.05)
 (polar (polar a (angle a b) n) (- (angle a b) (* 0.5 pi)) 0.05))
1 1 (rtd (- (angle a b) (* 0.5 pi)))))
    (setq a b)
  ) (princ)
)

Không dùng được anh ạ. Em muốn rải các nét dọc theo đường polyline, lisp này rải vuông góc với 2 điểm được chọn. Mà gõ lệnh lnt xong cũng không thấy hỏi phải làm gì, hay tại CAD của em bị lỗi? Thôi để em post sang bên Lisp em hỏi cho đúng chuyên ngành.

Em cảm ơn!


  • 0

#7 Tot77

Tot77

    biết lệnh adcenter

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

Đã gửi 26 August 2014 - 11:04 AM

Đâu có rải vuông góc!! Bạn gõ lnt xong thì chọn điểm giống như vẽ line vậy thôi, nó rải doc theo line.

Vì thấy vẽ line đơn giản nên tôi không thêm dòng nào ở command, còn nếu bạn muốn thêm thì down cái này.

(defun c:lnt()
  (defun rtd(a) (* 180 (/ a pi)))
  
  (setvar 'insunits 0) 
  (setq a (getpoint "\nChon diem bat dau:"))
  (while (setq b (getpoint a "\nChon diem tiep theo:"))
    (setq n -1)
    (repeat (fix (distance a b))
      (setq n (1+ n))
      (command "-insert" "VH zig zag"
(if (zerop (rem n 2))
 (polar (polar a (angle a b) n) (+ (angle a b) (* 0.5 pi)) 0.05)
 (polar (polar a (angle a b) n) (- (angle a b) (* 0.5 pi)) 0.05))
1 1 (rtd (- (angle a b) (* 0.5 pi)))))
    (setq a b)
  ) (princ)
)

  • 1

#8 conghoa

conghoa

    biết lệnh attdef

  • Members
  • PipPipPipPipPipPip
  • 411 Bài viết
Điểm đánh giá: 88 (tàm tạm)

Đã gửi 26 August 2014 - 02:53 PM

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

Bạn dùng thử cái block động này xem có đúng yêu cầu không nhé


  • 1