Chuyển đến nội dung
Diễn đàn CADViet
fengstupid

hỏi han về cái bắt tâm hình vuông mà cài osnap không được

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

Chào các bác.cho e hỏi,e đang học autocad 2007,e chỉnh bắt trng osnap rồi mà e dùng lệnh rec vẽ hình vuông mà chỉnh shift + center mà không bắt dc cái tâm hình vuông là sao,các bác giúp e vối

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

Chào các bác.cho e hỏi,e đang học autocad 2007,e chỉnh bắt trng osnap rồi mà e dùng lệnh rec vẽ hình vuông mà chỉnh shift + center mà không bắt dc cái tâm hình vuông là sao,các bác giúp e vối

Cái center có bắt cho hình vuông hả bạn, mình tưởng nó chỉ bắt cho hình tròn, cung tròn hoặc ellipse chứ ?

Đối với những hình như hình chữ nhật, hoặc hình vuông, bạn có thể bắt tâm của chúng bằng cách dùng m2p (middle two points). Bạn chọn midpoint của 2 cạnh góc vuông đối diện là xong :D

  • Vote tăng 2

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

cảm ơn anh,e dùng lệnh line kẻ 2 đường chéo rồi bắt giao điểm làm tâm rùi xáo đi vậy,cứ tưởng bắt dc tâm hình vuông,giờ mới bít mình gà quáhehe

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

Chào các bác.cho e hỏi,e đang học autocad 2007,e chỉnh bắt trng osnap rồi mà e dùng lệnh rec vẽ hình vuông mà chỉnh shift + center mà không bắt dc cái tâm hình vuông là sao,các bác giúp e vối

Hehee...

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

cảm ơn anh,e dùng lệnh line kẻ 2 đường chéo rồi bắt giao điểm làm tâm rùi xáo đi vậy,cứ tưởng bắt dc tâm hình vuông,giờ mới bít mình gà quáhehe

Thế này nhá, bạn không cần phải làm thế với hình vuông đâu. Bạn có thể làm như sau:

1-14.jpg

Giả sử bạn cần vẽ một đường thẳng từ tâm hình vuông này. Bạn gõ lệnh line trên commandline:

Command: l

LINE Specify first point: m2p

First point of mid:<Bạn chọn pt1>

Second point of mid:<Bạn chọn pt2>, sẽ nhận được đường thẳng bạn cần vẽ bắt đầu từ tâm hình vuông :D

  • Vote tăng 3

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

Thế này nhá, bạn không cần phải làm thế với hình vuông đâu. Bạn có thể làm như sau:

1-14.jpg

Giả sử bạn cần vẽ một đường thẳng từ tâm hình vuông này. Bạn gõ lệnh line trên commandline:

Command: l

LINE Specify first point: m2p

First point of mid:<Bạn chọn pt1>

Second point of mid:<Bạn chọn pt2>, sẽ nhận được đường thẳng bạn cần vẽ bắt đầu từ tâm hình vuông :D

bác trả lời rất hay :lol:

  • 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

bác trả lời rất hay :lol:

Chào xuanhaithanhhoa,

Bạn bảo mình trả lời hay, mà không thấy bình chọn, làm mình không biết là bạn có khen thật không đây, hay là... :rolleyes:

  • 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

Chào xuanhaithanhhoa,

Bạn bảo mình trả lời hay, mà không thấy bình chọn, làm mình không biết là bạn có khen thật không đây, hay là... :rolleyes:

hì,quên mất là diễn đàn nàh mình có cái nút xanh xanh bác nhỉ,

thank bác 1 phát nào.haha

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

Thế này nhá, bạn không cần phải làm thế với hình vuông đâu. Bạn có thể làm như sau:

1-14.jpg

Giả sử bạn cần vẽ một đường thẳng từ tâm hình vuông này. Bạn gõ lệnh line trên commandline:

Command: l

LINE Specify first point: m2p

First point of mid:<Bạn chọn pt1>

Second point of mid:<Bạn chọn pt2>, sẽ nhận được đường thẳng bạn cần vẽ bắt đầu từ tâm hình vuông :D

 

mình cũng đồng ý cách của bác pdle nhưng sao lại phải bắt trung điểm hai cạnh đối diện cho khó vậy, tôi vẫn sử dụng lệnh m2p nhưng bắt hai điểm là hai đỉnh đối diện nhau của hình vuông có phải dể hơn không!

Drawing1-Model.jpg

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

hì,quên mất là diễn đàn nàh mình có cái nút xanh xanh bác nhỉ,

thank bác 1 phát nào.haha

Hình như chưa thank sờ anh ạ :)

 

mình cũng đồng ý cách của bác pdle nhưng sao lại phải bắt trung điểm hai cạnh đối diện cho khó vậy, tôi vẫn sử dụng lệnh m2p nhưng bắt hai điểm là hai đỉnh đối diện nhau của hình vuông có phải dể hơn không!

 

Nhất trí với phương án của anh :D

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

Chào xuanhaithanhhoa,

Bạn bảo mình trả lời hay, mà không thấy bình chọn, làm mình không biết là bạn có khen thật không đây, hay là... :rolleyes:

Chắc chắn là ....chưa hay nên chưa thank :rolleyes:

Còn một cách bắt điểm nữa cực hay không cần phải gõ lệnh: m2p mà vẫn bắt điểm cực nhanh luôn!

Em chưa nói cách làm vội để anh suy nghĩ cho vui!

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

Cho em hỏi: làm thế nào để bắt điểm được trọng tâm của hình của hình 5 giác, 7 giác, cửu giác ngoại tiếp đường trò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

Chào các bác.cho e hỏi,e đang học autocad 2007,e chỉnh bắt trng osnap rồi mà e dùng lệnh rec vẽ hình vuông mà chỉnh shift + center mà không bắt dc cái tâm hình vuông là sao,các bác giúp e vối

 

Ý tưởng của bạn rất hay để để nghị bên Autodesk làm thêm chế độ này :lol:

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

@ anh calendar08 : Anh chưa biết đó thôi, Autodesk sẽ không dại dột làm theo chế độ ...như anh đã trả lời bài viết của anh fengstupid đâu!

Không cần phải gõ m2p như cách làm của anh pdle , cũng không phải cần shift + Sủng gì hết vẫn bắt được tâm của hình chữ nhật một cách nhanh nhất trong tất cả các loại nhanh!

Anh suy nghĩ thêm và thử làm nhé (có thể coi đây là câu đố cũng được em sẽ ra đáp án sau)

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

mình dùng bảo lỗi không dùng được

mình dùng cad 2012

bác xem hộ với

 

 

Command: C

Pick chon doi tuong lay trong tam :*Cancel*

; error: Function cancelled

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 chưa biết cách làm với CAD. Nhưng hình như là không có.

Lisp sau có thể bắt trọng tâm của một đa giác kín bất kì

(defun centre(dt / cen)
 (if (or (= (cdr(assoc 0 (entget dt))) "REGION") 
     	(and (wcmatch (cdr(assoc 0 (entget dt))) "*POLYLINE")
      (= (cdr(assoc 70 (entget dt))) 1)
        )
     )
      (if (and (wcmatch (cdr(assoc 0 (entget dt))) "*POLYLINE")
      (= (cdr(assoc 70 (entget dt))) 1)
          )
 (Progn
   (command "copy" dt "" '(0 0 0) "@")
   	   (command "region" dt "")
   (setq dt (entlast))
   (setq cen (vlax-get (vlax-ename->vla-object dt) 'Centroid))
   (entdel dt)
 )
 (setq cen (vlax-get (vlax-ename->vla-object dt) 'Centroid))
       )

 )
 cen
)
(defun c:c() (centre (car(entsel "\n Pick chon doi tuong lay trong tam :"))))

Cách bắt trọng tâm của 1 đa giác kín như sau : (trong 1 lệnh)

1. Apload Lisp

2. Vẽ 1 Line với điểm đầu là trọng tâm của 1 đa giác

Command: L -> Gõ L

LINE Specify first point: 'c -> Gõ 'c

 

Pick chon doi tuong lay trong tam : -> Pick vào hình cần lấy trọng tâm

(22.0409 20.9165)

 

Specify next point or [undo]: -> Điểm kê tiếp của lệnh LINE

Specify next point or [undo]:

 

Để lấy trọng tâm ở 1 lệnh khác cũng gõ 'c

 

Lisp trên cũng là 1 lời giải :rolleyes:

cảm ơn bá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

mình dùng bảo lỗi không dùng được

mình dùng cad 2012

bác xem hộ với

 

 

Command: C

Pick chon doi tuong lay trong tam :*Cancel*

; error: Function cancelled

Đã sửa lại. Cac bạn chạy thử xem :

(defun centre(dt / cen)
;;copyright by Tue_NV
 (vl-load-com)
 (if (or (= (cdr(assoc 0 (entget dt))) "REGION") 
     	(and (wcmatch (cdr(assoc 0 (entget dt))) "*POLYLINE")
      (= (cdr(assoc 70 (entget dt))) 1)
        )
     )
      (if (and (wcmatch (cdr(assoc 0 (entget dt))) "*POLYLINE")
      (= (cdr(assoc 70 (entget dt))) 1)
          )
 (Progn
   (setq cen (vlax-get (car (vlax-invoke (vla-get-modelspace (vla-get-activedocument(vlax-get-acad-object)))
     		'addregion (list (vlax-ename->vla-object dt)))) 'Centroid))
   (entdel (entlast))
 )
 (setq cen (vlax-get (vlax-ename->vla-object dt) 'Centroid))
       )

 )    
 cen
)
(defun c:cen() (centre (car(entsel "\n Pick chon doi tuong lay trong tam :"))))

Mình sợ đặt lệnh chữ C trùng với lệnh của các bạn.

Các bạn sử dụng lệnh CEN để tìm trọng tâm

Trong 1 lệnh khác để tìm trọng tâm của 1 đa giác bất kì nhấn 'CEN

  • Vote tăng 5

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

Đã sửa lại. Cac bạn chạy thử xem :

Mình sợ đặt lệnh chữ C trùng với lệnh của các bạn.

Các bạn sử dụng lệnh CEN để tìm trọng tâm

Trong 1 lệnh khác để tìm trọng tâm của 1 đa giác bất kì nhấn 'CEN

Một điều rất hay ở đây là anh Tue_NV đã tạo được lệnh kiểu transparent command. Em đang băn khoăn là không biết dùng cơ chế nào để tạo ra được cái này ạ ?

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

Một điều rất hay ở đây là anh Tue_NV đã tạo được lệnh kiểu transparent command. Em đang băn khoăn là không biết dùng cơ chế nào để tạo ra được cái này ạ ?

Rất hay !

thanks Tue_NV .

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

Đã sửa lại. Cac bạn chạy thử xem :

Mình sợ đặt lệnh chữ C trùng với lệnh của các bạn.

Các bạn sử dụng lệnh CEN để tìm trọng tâm

Trong 1 lệnh khác để tìm trọng tâm của 1 đa giác bất kì nhấn 'CEN

Sau khi ngâm cứu cái lisp này của anh Tue_NV, em có thắc mắc là: tạo sao lại có cen, không có đóng ngoặc, mở ngoặc ở đây ạ? Phải chăng nó là dùng cho transparent command ?

;; free lisp from cadviet.com

;;; this lisp was downloaded from http://www.cadviet.com/forum/index.php?showtopic=42651

(defun centre(dt / cen)

(vl-load-com)

(if (or (= (cdr(assoc 0 (entget dt))) "REGION")

(and (wcmatch (cdr(assoc 0 (entget dt))) "*POLYLINE")

(= (cdr(assoc 70 (entget dt))) 1)

)

)

(if (and (wcmatch (cdr(assoc 0 (entget dt))) "*POLYLINE")

(= (cdr(assoc 70 (entget dt))) 1)

)

(Progn

(setq cen (vlax-get (car (vlax-invoke (vla-get-modelspace (vla-get-activedocument(vlax-get-acad-object)))

'addregion (list (vlax-ename->vla-object dt)))) 'Centroid))

(entdel (entlast))

)

(setq cen (vlax-get (vlax-ename->vla-object dt) 'Centroid))

)

 

)

cen

)

(defun c:cen() (centre (car(entsel "\n Pick chon doi tuong lay trong tam :"))))

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

Cuộc đời này có ai mà biết hết đuợc đâu bạn? Vẫn có những cái chưa biết mà? Và cái chưa biết nhiều như đại dương rộng lớn

Hề hề, bạn ơi! Nếu mình biết rồi thì đâu đến nỗi phải đục đẽo cái lỗ cho cực??

Quả thật hơi lãng phí nếu như mình chưa biết đến tính năng này.

Mong được bạn chỉ giáo.... :rolleyes:

  • 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

....

Việc vẽ một lệnh nào đó cần phải bắt trọng tâm của …5 giác, 7 giác, cửu giác nội tiếp hoặc ngoại tiếp đường tròn và linh tinh giác bất kỳ, không cần thiết phải dùng lisp đâu anh ạ! Dùng AutoCAD thông thường nhanh hơn nhiều, đó là sự thật!

Chuyện kể rằng có nhà bác học thuê thợ đục bức tường nhà ra 2 lỗ, một lỗ cho mèo chui ra; một lỗ cho chó chui lọt vào nhà…Thật lãng phí phải không anh??? Chỉ cần đục một lỗ cho chó chui lọt, tất nhiên là mèo, chuột , rắn rết đều qua được hêt…

AutoCAD đã có tính năng bắt được tâm điểm của các …linh tinh giác một cách dễ dàng và nhanh chóng, tại sao ta không khai thác hết tính năng của AutoCAD

......

Mong được bạn chỉ giáo....

  • Vote tăng 2

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

Cuộc đời này có ai mà biết hết đuợc đâu bạn? Vẫn có những cái chưa biết mà? Và cái chưa biết nhiều như đại dương rộng lớn

Hề hề, bạn ơi! Nếu mình biết rồi thì đâu đến nỗi phải đục đẽo cái lỗ cho cực??

Quả thật hơi lãng phí nếu như mình chưa biết đến tính năng này.

Mong được bạn chỉ giáo.... :rolleyes:

(Anh Tuệ ạ! Nếu bảo em viết cái lisp như anh, em bó ... chân luôn. Nhưng... lại một cái nhưng oan nghiệt, nếu làm theo cách thông thường thì em dám khẳng định sẽ nhanh hơn lisp... đó là sự thật anh ạ...)

Hình như anh hiểu lầm em rồi...Hu hu...

Những cái này chỉ là phương thức bắt điểm thông thường, khi vẽ luôn bật chế độ POLAR và OTRACK là bắt điểm được tất cả các tâm

của đa giác nội, ngoài tiếp đường tròn. Riêng trường hợp đa giác bất kỳ thì thì thêm lệnh Region và Mass Properties thôi 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

(Anh Tuệ ạ! Nếu bảo em viết cái lisp như anh, em bó ... chân luôn. Nhưng... lại một cái nhưng oan nghiệt, nếu làm theo cách thông thường thì em dám khẳng định sẽ nhanh hơn lisp... đó là sự thật anh ạ...)

Hình như anh hiểu lầm em rồi...Hu hu...

Những cái này chỉ là phương thức bắt điểm thông thường, khi vẽ luôn bật chế độ POLAR và OTRACK là bắt điểm được tất cả các tâm

của đa giác nội, ngoài tiếp đường tròn. Riêng trường hợp đa giác bất kỳ thì thì thêm lệnh Region và Mass Properties thôi anh ạ!

Hề hề, mình cứ tưởng là pick 1 cái vào đa giác là ra tâm luôn chứ? :rolleyes:

 

Trương hợp đa giác nội, ngoài tiếp đường tròn thì việc sử dụng Lisp với việc sử dụng chế độ POLAR và OTRACK chưa biết chắc cái nào sẽ nhanh hơn?

Nhưng với đa giác bất kỳ thì Lisp nhanh hơn, nhanh hơn rất nhiều rồi.

 

Bạn hãy cứ tưởng tượng với một đa giác bất kì vẽ = POLYLINE, bạn phải copy đa giác bất kì đó ra -> biến nó thành region rồi Mass Properties để lấy trọng tâm. lại phải sử dụng trọng tâm này trong 1 lệnh khác nữa, rồi phải xóa REGION đó đi nữa. Trong khi sử dụng với Lisp thì ở dòng lệnh nào cần tính trọng tâm đa giác kín -> gõ 'CEN và pick vào đa giác kín bất kì đó là xong.

Vậy sử dụng cái nào nhanh hơn?

  • 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

×