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.
t0mah0ck

Chèn điểm lên đường thẳng.

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

t0mah0ck    0

Như em đã viết, em muốn biết là không rõ có lệnh nào hoặc lip thực hiện được như sau:

 

Cho đoạn thẳng AB dài bất kỳ, em chọn một điểm bất kỳ trên đoạn thẳng AB đó mình được điểm C và hình thành luôn hai đoạn thẳng AC và CB ( ở đây C thuộc AB) chú ý là điểm C thuộc và nằm giữa AB.

(Không có điền kích thước hay tỉ lệ gì cả chỉ cần tích chuột vào một điểm trên AB là được.)

Cái này là em thấy thầy giáo em thực hiện một lần hình như trên cad 2013 thì phải giờ không nhớ là thầy có lip hay không à.

 

Mong các bác chỉ bảo dùm em.

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
Hoan1111    694

Như em đã viết, em muốn biết là không rõ có lệnh nào hoặc lip thực hiện được như sau:

 

Cho đoạn thẳng AB dài bất kỳ, em chọn một điểm bất kỳ trên đoạn thẳng AB đó mình được điểm C và hình thành luôn hai đoạn thẳng AC và CB ( ở đây C thuộc AB) chú ý là điểm C thuộc và nằm giữa AB.

(Không có điền kích thước hay tỉ lệ gì cả chỉ cần tích chuột vào một điểm trên AB là được.)

Cái này là em thấy thầy giáo em thực hiện một lần hình như trên cad 2013 thì phải giờ không nhớ là thầy có lip hay không à.

 

Mong các bác chỉ bảo dùm em.

 

Gõ BRE>> chọn điểm bất kỳ trên AB >>>Bấm chuột 2 lần >>> được điểm C nằm giữa AB

Gõ BRE >> Shift + Chuột phải >> Chọn Midpoint >> bấm chuột 02 lần >> Được điểm C nằm tại trung điểm AB

Đây gọi là lệnh giận cá chém thớt, anh ạ! :) :) :)

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
t0mah0ck    0

Gõ BRE>> chọn điểm bất kỳ trên AB >>>Bấm chuột 2 lần >>> được điểm C nằm giữa AB

Gõ BRE >> Shift + Chuột phải >> Chọn Midpoint >> bấm chuột 02 lần >> Được điểm C nằm tại trung điểm AB

Đây gọi là lệnh giận cá chém thớt, anh ạ! :) :) :)

Cái đó đâu được đâu, sử dụng lệnh đó thì có một quãng ở giữa bị cắt mất đi à :v

Làm sao lựa mình có thể chọn một điểm C bất kỳ trền đoạn AB để tạo thành hai đoạn thẳng AC và CB à.

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
Hoan1111    694

Cái đó đâu được đâu, sử dụng lệnh đó thì có một quãng ở giữa bị cắt mất đi à :v

Làm sao lựa mình có thể chọn một điểm C bất kỳ trền đoạn AB để tạo thành hai đoạn thẳng AC và CB à.

Làm gì có chuyện buồn ...cưới như thế???? :) :) :)

Hoằn đang dùng AutoCAD2013, hay đọc kỹ lại bài viết :

 

Gõ BRE>> chọn điểm bất kỳ trên AB >>>Bấm chuột 2 lần >>> được điểm C nằm giữa AB

Gõ BRE >> Shift + Chuột phải >> Chọn Midpoint >> bấm chuột 02 lần >> Được điểm C nằm tại trung điểm AB

Đây gọi là lệnh giận cá chém thớt, anh ạ! :) :) :)

Rồi làm thử:

1- Vẽ 1 đoạn thẳng bằng layer mầu xanh  rồi chém 02 nhát liền được 2 đoạn thẳng

2- Đổi một trong hai đoạn thành layer mầu đỏ  >>>rồi tắt layer mầu đỏ

3- Tại vết chém của đường thẳng có layer màu xanh vẽ 1 đường thẳng vuông góc với nó dài 50

4- Tắt layer mầu xanh mở layer mầu đỏ >> tại vết chém cũng vẽ 1 đường thẳng vuông góc với nó dài 50

5- Mở layer mầu xanh >>  sẽ thấy 2 nét vẽ trùng nhau

7- OverKill >> Một nét trùng biến mất >>> Kết luân 1: giữa hai đoạn thẳng không có khe hở

8- Cũng chơi kiểu tắt mở layer như trên >>> Gõ ID vào vết chém của 2 đoạn thẳng >>> Kết quả ADN trùng khớp nhau:

Command: ID

Specify point:  X = 21.5377     Y = 29.9182     Z = 0.0000  >>>Kết luân 2: giữa hai đoạn thẳng không có khe hở

9- Dùng lệnh PE ...>>> kết quả hai đoạn thẳng trở thành một ... đối tượng >>>Kết luân 3: giữa hai đoạn thẳng không có khe hở

 

Kết luận: Chủ thớt bấm điểm không chuẩn!

(Chú ý là ăn nhau ở cách thao tác lệnh, dùng tham số f hoặc không dùng tham số vẫn chém đẹp. Nếu chủ thơt không chém được,  Hoằn sẽ làm ảnh động gửi lên sau!

AutoCAD2013:- Hỗ trợ tối đa đám mây điểm:

Giúp bạn quét các đối tượng dẽ dàng hơn, truy bắt điểm chính xác hơn với sự hỗ trợ hơn 2 tỷ điểm trên màn hình thao tác

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
t0mah0ck    0

 Sáng nay em mới lên được xem mọi người trả lời, hiện giờ em đang làm theo lênh BRE của các bác tùy có chỉnh hơi lâu, do em đang vi chỉnh Tiểu lưu vực trên bản đồ trùng lại với các tim đường, phân chia các khu vực lên.

Nhưng dù sao cũng cám ơn các bác, topic mấy bác để cho em thêm 1 hoặc 2 ngày xem có bác nào có cách hay hơn không :v

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
nhoclangbat    382

phải ý bạn là mún break 1 điểm bất kỳ trên đường thẳng tạo ra 2 đường thẳng nối liền nhau ko ^^, dùng lệnh break cũng đc nhưng bị cái là nó bắt chọn 2 điểm nếu bạn ko pik chính xác 2 lần trên 1 điểm nó sẽ có khoảng hở , nhoc đang tập tành viết lsp, có cái lsp nhỏ cũng dùng break thui nhưng tránh cho bạn pick nhầm 2 điểm, bạn dùng thử ^^

(defun c:kk (/ oldos oldecho e1 pt1)
(setq oldecho (getvar "cmdecho"))
(setq oldos (getvar "osmode"))
(setq e1 (entsel "\nChon doi tuong:"))
(setq pt1 (getpoint "\nchon diem ngat:"))
(setvar "osmode" 0)
(command ".break" e1 "F"  pt1 pt1)
(princ "\n")
(setvar "cmdecho" oldecho)
(setvar "osmode" oldos)
(princ)
)

- chế độ bắt điểm do bạn quyết định nha ^^

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
Doan Van Ha    2.680

 

phải ý bạn là mún break 1 điểm bất kỳ trên đường thẳng tạo ra 2 đường thẳng nối liền nhau ko ^^, dùng lệnh break cũng đc nhưng bị cái là nó bắt chọn 2 điểm nếu bạn ko pik chính xác 2 lần trên 1 điểm nó sẽ có khoảng hở , nhoc đang tập tành viết lsp, có cái lsp nhỏ cũng dùng break thui nhưng tránh cho bạn pick nhầm 2 điểm, bạn dùng thử ^^

(defun c:kk (/ e1 pt1 pt2) 
(setq e1 (entsel "\nChon doi tuong:")) 
(setq pt1 (getpoint "\nchon diem ngat:"))
(setq pt2 pt1)
(command ".break" e1 "F"  pt1 pt2)
)

Ôi, Nhoc ơi! setq pt2 mần chi? Thêm tắt osnap kẻo toi.

  • 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
nhoclangbat    382

hi , nhoc tưởng tượng sao mần đại ^^, vô cad thử với tham số "F" nó có đòi điểm 2 nên nhoc set thêm 1 điểm trùng điểm 1 vậy mà, chưa đủ khả năng ràng buộc điểm pick phải trên đường đã chọn :)

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
hiepttr    523

Ý bác Doanvanha chỉ là:

1. Tại sao ko dùng:

(command ".break" e1 "F" pt1 pt1)

2. Nếu để chế độ os /= 0 ==> nhảy lung tung chứ chưa nhắc tới getclosespointto gì gì đó đâu nhóc àh ^^

  • 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
nhoclangbat    382

- oh hen ko nghĩ tới (pt1 pt1), cái osnap nhoc chỉ nghĩ bạn đó thik pik kiểu nào tùy bạn đó chọn ^^, đã cập nhật chỉnh sữa theo góp y bác HA và bạn hiep :)

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
Hoan1111    694

 Sáng nay em mới lên được xem mọi người trả lời, hiện giờ em đang làm theo lênh BRE của các bác tùy có chỉnh hơi lâu, do em đang vi chỉnh Tiểu lưu vực trên bản đồ trùng lại với các tim đường, phân chia các khu vực lên.

Nhưng dù sao cũng cám ơn các bác, topic mấy bác để cho em thêm 1 hoặc 2 ngày xem có bác nào có cách hay hơn không :v

 

Nếu nghi ngờ khả năng bấm chuột của mình, anh chủ thớt có thể tham khảo thêm thêm lisp giận cá chém thớt sau:

 

Bạn sử dụng Lisp ở đây nhé:

http://www.cadviet.com/forum/index.php?showtopic=14925

 

 

Nhanh hơn nữa thì :

(defun c:brf ()(command "_break" (car (nentselp (setq p (getpoint)) "\nDiem cat doi tuong :")) p "@"))

 

 

@haanh : Nếu bạn định cắt hình tròn bởi 2 điểm trên cung thì dễ r, còn nếu cắt tại 1 điểm như topic đề cập thì sau đó Circle sẽ bị biến thành gì ?

- Có 2 tình huống : 1 là nó sẽ biến thành Pline có 2 segment cong có 2 đầu (gần gần gần gần ... coi như là) chạm nhau

- 2 là biến thành 1 Arc có 2 đầu (gần gần gần gần ... coi như là) chạm nhau

=> CHọn cách 2 cho đơn giản nhé.

Quick :

(defun c:brf ()

(setq cv (car (setq sth (nentselp (setq p (getpoint)) "\nDiem cat doi tuong :"))))

(if (= (cdadr (entget cv)) "CIRCLE")

(command "_break" sth "f" (vlax-curve-getClosestPointTo cv p) (vlax-curve-getClosestPointTo cv (mapcar '- p '(0.01 0.01))))

(command "break" cv p "@")

)

)

 

em thuộc loại gà lisp nên chắc là em sẽ xài br xong chọn f, chọn 1st & 2sd point trùng nhau luôn. cảm ơn các bác!

 

Từ AutoCAD2013 khỏi cần dùng tham số f =>> Hãy tin và cảm ơn AutoCAD2013

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


×