Đến nội dung


Hình ảnh

Vẽ các đường line và góc mà không cần góc hợp với phương ngang


  • Please log in to reply
44 replies to this topic

#1 tuvanthietke.hcm

tuvanthietke.hcm

    biết lệnh array

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

Đã gửi 31 March 2010 - 10:18 AM

Hình đã gửi

Vẽ line liên tiếp với các góc như hình đó, không cần theo góc phương ngang hay đổi trục tọa độ
  • 2

#2 coxuong89

coxuong89

    biết lệnh erase

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

Đã gửi 31 March 2010 - 10:25 AM

bài này chắc bạn lấy trong sách của Nguyễn Hữu Lộc...bài này vẽ nhanh nhất bằng toạ độ cực...trên hình vẽ cho góc và chiều dài các canh.
  • 1
Hình đã gửi

#3 tuvanthietke.hcm

tuvanthietke.hcm

    biết lệnh array

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

Đã gửi 31 March 2010 - 10:40 AM

bài này chắc bạn lấy trong sách của Nguyễn Hữu Lộc...bài này vẽ nhanh nhất bằng toạ độ cực...trên hình vẽ cho góc và chiều dài các canh.


Bạn có thể nói rõ hơn bằng tọa độ cực không? và cách vẽ nhanh, mình vẽ bằng line, c và đổi trục usc.

Mình muốn hỏi có cách nào vẽ đường thẳng + góc mà không phải dựa vào phương ngang và thay đổi tọa độ trục.

bạn chỉ dùng lệnh l nếu bạn như bạn là người mới hoc cad thì chỉ nên vẽ lại thôi.
cách vẽ L enter tích 1 điểm làm gốc sau đó nhập @độ dài,đo là nguyên tác vé đoạn thẳng theo độ dài và theo góc.ok chứ


Nó chỉ thích hợp cho line hợp với phương ngang 1 góc đã biết, còn chỉ biết góc và chiều dài thì làm sao vẽ nhanh (không dựa vào góc so với phương ngang và thay đổi tọa độ trục.
  • 0

#4 tuvanthietke.hcm

tuvanthietke.hcm

    biết lệnh array

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

Đã gửi 31 March 2010 - 10:41 AM

nguyên tắc lenh L ENTER @ NHẬP ĐỘ DÀI L ENTER @20<45


Chiều dài là 20 và hợp với góc theo phương ngang là 45 mình biết cái này, nhưng mình muốn hỏi trường hợp bất kỳ cơ.
  • 0

#5 tuvanthietke.hcm

tuvanthietke.hcm

    biết lệnh array

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

Đã gửi 31 March 2010 - 11:04 AM

TRƯỜNG HỢP NÀO CŨNG THẾ MÀ THÔI.KỂ CẢ NHẬP GÓC ÂM HOẶC GOC LỚN 180 ĐÔ.MIÊM SAO GÓC BAN ĐÂU TÍNH LÁ 0 ĐỘ HỢP TRUC OX,LÀM THẾ SẼ NHANH VA DỄ HỎN ĐỔI TRỤC TẠO ĐỘ


Hình đã gửi

Giải sử như đoạn này thì bạn vẽ làm sao hợp với đường thẳng trước đó góc 75 và chiều dài là 90.

VD như vậy đó? bạn hiếu ý mình chứ???
  • 0

#6 tuvanthietke.hcm

tuvanthietke.hcm

    biết lệnh array

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

Đã gửi 31 March 2010 - 02:04 PM

goc thế này ban nên sủ dụng lệnh soay RO enter vs r để vùa xoay vùa cóppy,trong cad nen su dung linh hoat cac lenh chu không nên nhất thiết cứ dùng 1 lệnh sẽ làm công viêc chậm hơn đay
nếu không ban vân dùng nhu thế nhung tinh toán góc ra, với bai này minh sẽ vẽ toàn bộ tù phai sang trái nên không gặp vấn đề gì,bạn hiểu chứ.ok?


Vẽ cách này cũng không là một giải pháp hay, mình đang cần tìm 1 giải pháp hay đó bạn ơi! :D
  • 0

#7 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

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

Đã gửi 31 March 2010 - 03:04 PM

Hình đã gửi

Giải sử như đoạn này thì bạn vẽ làm sao hợp với đường thẳng trước đó góc 75 và chiều dài là 90.

VD như vậy đó? bạn hiếu ý mình chứ???

Cho đoạn thẳng AB nghiêng với trục Ox góc a (a khác 0) . Dùng lệnh Line để vẽ đoạn thẳng AC hợp với AB 1 góc 75 độ hay góc BAC bằng 75 độ giống như hình vẽ trên : BA=30; AC=90, góc BAC= 75 độ.

Command: L :-> gõ L
LINE Specify first point: -> pick điểm đầu tiên của Line cần vẽ-> Đó chính là điểm A
Specify next point or [Undo]: 'cal -> gõ 'cal
>>>> Expression: rot(pldee(90),@,-75) -> gõ rot(pldee(90),@,-75)
>>>> Select one endpoint for PLDEE: Kích chọn điểm B
>>>> Select another endpoint for PLDEE: Kích chọn điểm A

Resuming LINE command.
-> Xong
-> Cách trên nếu sử dụng thuần thục thì rất nhanh :D
  • 2

#8 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 31 March 2010 - 03:04 PM

Hình đã gửi

Giải sử như đoạn này thì bạn vẽ làm sao hợp với đường thẳng trước đó góc 75 và chiều dài là 90.

VD như vậy đó? bạn hiếu ý mình chứ???


Chào bạn tuvanthietke.hcm,
Theo cái sự biết của mình thì trong cad không có lệnh nào trực tiếp để làm cái việc bạn muốn cả. Để thực hiện điều này, bắt buộc bạn phải dùng kết hợp lệnh line và lệnh ucs như bạn đã nói. Mình gửi bạn một đoạn lisp có thể giúp bạn làm điều này dễ dàng hơn một chút. Lệnh lisp là vlc.

(defun c:vlc ()
(command "undo" "be")
(setq p1 (getpoint "\n Chon diem dau"))
(command "line" p1 pause "")
(setq ln (entlast)
p2 (cdr(assoc 11 (entget ln)))
ans (getstring "\n Ban muon tiep tuc < y or n> : ")
)
(while (= ans "y")
(command "ucs" "n" "ob" ln)
(setq d (getreal "\n Nhap khoang cach: ")
gd (getreal "\n Nhap goc tuong doi theo do: ")
p1 p2
p1 (trans p1 0 1))
(command "line" p1 (setq p2 (polar p1 (/ (* pi gd) 180) d)) "")
(setq ln (entlast)
p2 (trans p2 1 0)
ans (getstring "\n Ban muon tiep tuc < y or n> : ")
)
)
(command "ucs" "w")
(command "undo" "e")
)


Khi chạy lisp, bạn sẽ chọn điểm bắt đầu của đoạn thẳng đầu tiên, sau đó bạn sẽ nhập điểm thứ hai theo các cách mà Cad chấp nhận như pick điểm, nhập tọa độ điểm tương đối hay tuyệt đối...... Lisp sẽ tạo đoạn thẳng đầu tiên rồi hỏi bạn có muốn tiếp tục hay không.
Nếu bạn trả lời "y" lisp sẽ yêu cầu bạn nhập khoảng cách và góc tạo với đoạn thẳng trước tính theo độ. (Bạn lưu ý rằng góc này đươc tình theo chiều dương của đoạn thẳng kề trước đoạn sẽ vẽ) và lisp sẽ tạo tiếp đoạn thẳng này.
Cứ thế cho tới khi bạn không muốn vẽ nữa và trả lời "n" khi lisp hỏi (hoặc nhấn ENTER)

Bạn dùng thử và cho ý kiến nhé. Nếu cần thiết mình sẽ sửa thêm cho phù hợp với yêu cầu của bạn.
Chúc bạn vui.
  • 1
Chúc các quý Anh trên diễn đàn luôn khỏe, đẻ thêm được nhiều thứ để mót.

#9 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

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

Đã gửi 31 March 2010 - 03:07 PM

Chào bạn tuvanthietke.hcm,
Theo cái sự biết của mình thì trong cad không có lệnh nào trực tiếp để làm cái việc bạn muốn cả. Để thực hiện điều này, bắt buộc bạn phải dùng kết hợp lệnh line và lệnh ucs như bạn đã nói. Mình gửi bạn một đoạn lisp có thể giúp bạn làm điều này dễ dàng hơn một chút. Lệnh lisp là vlc.

Bác Bình xem lại. Phía trên là bài viết của Tue_NV thể hiện lệnh làm được việc đó của CAD. Chẳng phải CAD đã làm được việc đó bằng lệnh LINE kết hợp với 'cal rồi hay sao???
Nếu biết cách sử dụng thì rất nhanh. :D
  • 1

#10 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 31 March 2010 - 03:41 PM

Bác Bình xem lại. Phía trên là bài viết của Tue_NV thể hiện lệnh làm được việc đó của CAD. Chẳng phải CAD đã làm được việc đó bằng lệnh LINE kết hợp với 'cal rồi hay sao???
Nếu biết cách sử dụng thì rất nhanh. :D

Hề hề hề,
Đúng là cái sự biết của mình nó còn ít ỏi quá, cám ơn bác vì mình lại mót thêm được một chút của bác. Cái lệnh 'cal này đúng là mình cũng đã có biết tí chút nhưng vận dụng nó vào công việc thực tế thì mình chưa dùng nhiều nên còn lúng túng lắm bác ạ.
Tỷ như cái tham số pldee này chẳng hạn, đây là lần đầu tiên mình nhòm thấy nó, vậy có phải đó là tham số để xác định cái chiều của trục gốc tính góc độ không bác nhỉ???
Chúc bác khỏe và vui.
  • 1
Chúc các quý Anh trên diễn đàn luôn khỏe, đẻ thêm được nhiều thứ để mót.

#11 tuvanthietke.hcm

tuvanthietke.hcm

    biết lệnh array

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

Đã gửi 31 March 2010 - 04:07 PM

Cho đoạn thẳng AB nghiêng với trục Ox góc a (a khác 0) . Dùng lệnh Line để vẽ đoạn thẳng AC hợp với AB 1 góc 75 độ hay góc BAC bằng 75 độ giống như hình vẽ trên : BA=30; AC=90, góc BAC= 75 độ.

Command: L :-> gõ L
LINE Specify first point: -> pick điểm đầu tiên của Line cần vẽ-> Đó chính là điểm A
Specify next point or [Undo]: 'cal -> gõ 'cal
>>>> Expression: rot(pldee(90),@,-75) -> gõ rot(pldee(90),@,-75)
>>>> Select one endpoint for PLDEE: Kích chọn điểm B
>>>> Select another endpoint for PLDEE: Kích chọn điểm A

Resuming LINE command.
-> Xong
-> Cách trên nếu sử dụng thuần thục thì rất nhanh :D


Lệnh này mình không hề biết tới! nên không hiểu ý nghĩa của nó lắm

Mình làm theo bạn và đây là kết quả đã thử lại 3 lần, không giống kết quả mong muốn

Hình đã gửi


Chào bạn tuvanthietke.hcm,
Theo cái sự biết của mình thì trong cad không có lệnh nào trực tiếp để làm cái việc bạn muốn cả. Để thực hiện điều này, bắt buộc bạn phải dùng kết hợp lệnh line và lệnh ucs như bạn đã nói. Mình gửi bạn một đoạn lisp có thể giúp bạn làm điều này dễ dàng hơn một chút. Lệnh lisp là vlc.


(defun c:vlc ()
(command "undo" "be")
(setq p1 (getpoint "\n Chon diem dau"))
(command "line" p1 pause "")
(setq ln (entlast)
p2 (cdr(assoc 11 (entget ln)))
ans (getstring "\n Ban muon tiep tuc < y or n> : ")
)
(while (= ans "y")
(command "ucs" "n" "ob" ln)
(setq d (getreal "\n Nhap khoang cach: ")
gd (getreal "\n Nhap goc tuong doi theo do: ")
p1 p2
p1 (trans p1 0 1))
(command "line" p1 (setq p2 (polar p1 (/ (* pi gd) 180) d)) "")
(setq ln (entlast)
p2 (trans p2 1 0)
ans (getstring "\n Ban muon tiep tuc < y or n> : ")
)
)
(command "ucs" "w")
(command "undo" "e")
)


Khi chạy lisp, bạn sẽ chọn điểm bắt đầu của đoạn thẳng đầu tiên, sau đó bạn sẽ nhập điểm thứ hai theo các cách mà Cad chấp nhận như pick điểm, nhập tọa độ điểm tương đối hay tuyệt đối...... Lisp sẽ tạo đoạn thẳng đầu tiên rồi hỏi bạn có muốn tiếp tục hay không.
Nếu bạn trả lời "y" lisp sẽ yêu cầu bạn nhập khoảng cách và góc tạo với đoạn thẳng trước tính theo độ. (Bạn lưu ý rằng góc này đươc tình theo chiều dương của đoạn thẳng kề trước đoạn sẽ vẽ) và lisp sẽ tạo tiếp đoạn thẳng này.
Cứ thế cho tới khi bạn không muốn vẽ nữa và trả lời "n" khi lisp hỏi (hoặc nhấn ENTER)

Bạn dùng thử và cho ý kiến nhé. Nếu cần thiết mình sẽ sửa thêm cho phù hợp với yêu cầu của bạn.
Chúc bạn vui.


À về lisp này thì mình mù tịt, mình không có căn bản, bạn có thể gợi ý làm sao hiểu được nó và vận dụng nó không???
  • 0

#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 31 March 2010 - 04:28 PM

Lệnh này mình không hề biết tới! nên không hiểu ý nghĩa của nó lắm

Mình làm theo bạn và đây là kết quả đã thử lại 3 lần, không giống kết quả mong muốn

Hình đã gửi
À về lisp này thì mình mù tịt, mình không có căn bản, bạn có thể gợi ý làm sao hiểu được nó và vận dụng nó không???

Chào bạn tuvanthietke,hcm,
1/- Về lệnh vẽ mà bác Tue_NV hường dẫn, về cơ bản bạn đã làm đúng, chỉ còn cái thao tác chọn hai mút của đoạn thẳng AB mà thôi. Bạn hãy đảo lại cái thứ tự chọn A trước B sau là Ok thôi. Sở dĩ vậy là do bác Tue_nv vẽ A ở bên trái B thôi mà.
Sử dụng lệnh này bạn phải thành thục việc lấy góc độ theo trục bạn ạ.
Trên hình vẽ bạn đã làm , nếu bạn vẫn nhập là rot(pldee(90),@,-75) và đổi chiều chọn như mình nói thì cái nhánh AC sẽ quay xuống dưới, còn nếu bạn thay -72 bằng 75 thì nó sẽ quay lên trên bạn ạ.
2/- Về cái lisp của mình, bạn hãy download file .lsp về, vào tool - Application load - chọn file lsp - load sau đó gõ lệnh vlc trên dòng command để chạy.
Bạn chú ý cái góc nhập vào cho đúng để có được cái hình theo ý bạn.
Chúc bạn thành công.
  • 1
Chúc các quý Anh trên diễn đàn luôn khỏe, đẻ thêm được nhiều thứ để mót.

#13 ngovinh

ngovinh

    biết lệnh ddedit

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

Đã gửi 31 March 2010 - 06:14 PM

Hình đã gửi
Vẽ line liên tiếp với các góc như hình đó, không cần theo góc phương ngang hay đổi trục tọa độ


Đây là bài tập vẽ thuộc dạng đã có trong hầu hết các tài liệu về Autocad…Cách làm của em là chỉ dùng lệnh L hoặc PL một lần duy nhất để vẽ bằng cách lựa chọn chọn chế độ Polar Tracking. Tất cả các góc cần vẽ đều là bội của 5 do đó ta chọn Increment angle = 5 để vẽ.
  • 0

#14 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

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

Đã gửi 31 March 2010 - 06:15 PM

Hề hề hề,
Đúng là cái sự biết của mình nó còn ít ỏi quá, cám ơn bác vì mình lại mót thêm được một chút của bác. Cái lệnh 'cal này đúng là mình cũng đã có biết tí chút nhưng vận dụng nó vào công việc thực tế thì mình chưa dùng nhiều nên còn lúng túng lắm bác ạ.
Tỷ như cái tham số pldee này chẳng hạn, đây là lần đầu tiên mình nhòm thấy nó, vậy có phải đó là tham số để xác định cái chiều của trục gốc tính góc độ không bác nhỉ???
Chúc bác khỏe và vui.

Chào bác PhamThanhBinh
Tue_NV xin đính chính tham số pldee
Đây là hàm Pldee (d):
- Gọi A là điểm ENDpoint đầu
- Gọi B là điểm ENDpoint cuối

Pldee (d): đây là hàm xác định 1 điểm P cách A 1 khoảng là d, và 3 điểm A, P, B thẳng hàng
+ d có thể <0 ; >0 và =0
Nếu d=0 => P trùng với A, độ lớn của vectơ AP = d = 0
Nếu d<0 => Vectơ AP ngược hướng với vectơ AB và độ lớn của vectơ AP bằng d
Nếu d>0 => Vectơ AP cùng hướng với vectơ AB và độ lớn của vectơ AP bằng d

Vài dòng giải thích. Mong bác cùng các bạn hiểu thêm về hàm này
Hàm Pldee(d) tương đương với hàm pld (end,end,dist)
  • 0

#15 ngovinh

ngovinh

    biết lệnh ddedit

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

Đã gửi 31 March 2010 - 06:22 PM

Để vẽ hình trên chỉ cần dùng lệnh L hoặc PL một lần duy nhất với chế độ bắt điểm Polar Tracking chọn Increment angle = 5 để vẽ. Không cần dùng lips, không cần UCS, cũng không cần dùng đến lệnh gõ 'cal mà nhập luôn giá trị độ dài của các cạnh.
  • 1

#16 coxuong89

coxuong89

    biết lệnh erase

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

Đã gửi 31 March 2010 - 06:30 PM

bác ngovinh chốt 1 câu rất hay...em thấy để 1 độ vẽ đc nhiều góc hơn nữa...ví dụ góc 128 chảng hạn..
  • 0
Hình đã gửi

#17 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

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

Đã gửi 31 March 2010 - 06:37 PM

bác ngovinh chốt 1 câu rất hay...em thấy để 1 độ vẽ đc nhiều góc hơn nữa...ví dụ góc 128 chảng hạn..

Rất hay, bởi lẽ số nào cũng là bội số của 1 :cheers:
Nhưng không ổn với góc có số lẻ thập phân, :D :D
  • 0

#18 ngovinh

ngovinh

    biết lệnh ddedit

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

Đã gửi 31 March 2010 - 06:53 PM

Polar Tracking đã mặc định sẵn trị số góc Increment angle , ngươì dùng có thể tạo thêm các kiểu các loại góc độ tùy ý…thích
Trong khi Polar Tracking người ta có thể thay đổi góc độ theo ý thích bằng cách nhấn Shift + chuột phải …để vẽ liên tục vẽ mệt nghỉ!!!!!!!
  • 0

#19 coxuong89

coxuong89

    biết lệnh erase

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

Đã gửi 31 March 2010 - 06:55 PM

chắc kô ai để số thập phân là số xấu đâu... :cheers: :D B) B) :cheers: :D :D
  • 0
Hình đã gửi

#20 ngovinh

ngovinh

    biết lệnh ddedit

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

Đã gửi 31 March 2010 - 06:57 PM

chắc kô ai để số thập phân là số xấu đâu... :cheers: Hình đã gửi Hình đã gửi Hình đã gửi :cheers: :undecided: :cheers:

Số thập phân không xấu nó chỉ có..... mùi... thôi,
  • 0