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

[Yêu cầu] Lisp vẽ điểm chính xác ( draw point object trong Etabs và Sap )

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

 

 

Chào các bác ạ . Em thấy trong Sap và Etabs có chức năng Draw point object rất hay. Không biết trong Acad nhà mình có chức năng nào giống như thế không, hay có lisp nào dạng thế không.

 

 

Cụ thể kiểu này : Trên 1 line, mình muốn vẽ chính xác 1 điểm trên line đó ( hoặc cách 1 khoảng nào đó ). Bình thường em vẫn làm kiểu thủ công là vẽ 1 line khác vuông góc với line đầu rồi offset. Giờ mà có kiểu gõ command, nhập tọa độ ox, oy, sau đó chấm điểm để lấy gốc tọa độ ( giống như trong Sap hay Etabs ấy ạ ) thì ta sẽ có 1 điểm thỏa mãn cách line ban đầu 1 khoảng ox, oy kia.

 

 

Mong các bác giúp đỡ .

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
ketxu    2.652

Sử dụng Shift + chuột phải => Temporary Track Point (tt)

Bạn có thể đọc help về lệnh 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

Vâng... gần giống như clip này các bác ạ :D.

 

 

Tức là lisp sẽ kiểu này : command => nhập tọa độ Ox và Oy => pick chọn point chọn điểm gốc tọa độ => ta sẽ được 1 point được offset so với điểm chọn 1 độ dài theo x, y đã nhập.

 

 

Sử dụng Shift + chuột phải => Temporary Track Point (tt)

Bạn có thể đọc help về lệnh này

 

Cám ơn bác ketxu... Em làm được rồi. Hóa ra trình tự là nhập command trước rồi dùng " TT "

 

// Còn cái đường nét đứt khi ta di chuột thì làm thế nào cho nó hiện lên các bác nhỉ? Em chuyển sang acad 2008 thì có, sang bản 2010 thì không thấy nữa.

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
Chiron    91

// Còn cái đường nét đứt khi ta di chuột thì làm thế nào cho nó hiện lên các bác nhỉ? Em chuyển sang acad 2008 thì có, sang bản 2010 thì không thấy nữa.

Bạn kiểm tra xem đã bật các chế độ Polar Tracking On (F10), Object Snap On (F3), Object Snap Tracking On (F11) chưa?

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
various    9

Bạn kiểm tra xem đã bật các chế độ Polar Tracking On (F10), Object Snap On (F3), Object Snap Tracking On (F11) chưa?

 

Em đã bật hết rồi nhưng không hiện bác à. Chắc phải cài lại thôi. Bên 2008 thì em làm vậy đúng là on or off được

 

// Chức năng trackpoint khó dúng quá các bác ạ. Giá mà có 1 lisp nào có thể đảm nhận được : pick điểm chọn gốc tọa độ => nhập tọa độ tương đối so với điểm vừa chọn => con trỏ chuột sẽ nhảy đến vị trí đó. Hoặc làm được như các lệnh " mtp " " tt" " tk " "from" - kiểu lệnh trong lệnh

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

Em đã bật hết rồi nhưng không hiện bác à. Chắc phải cài lại thôi. Bên 2008 thì em làm vậy đúng là on or off được

 

// Chức năng trackpoint khó dúng quá các bác ạ. Giá mà có 1 lisp nào có thể đảm nhận được : pick điểm chọn gốc tọa độ => nhập tọa độ tương đối so với điểm vừa chọn => con trỏ chuột sẽ nhảy đến vị trí đó. Hoặc làm được như các lệnh " mtp " " tt" " tk " "from" - kiểu lệnh trong lệnh

Nếu bạn cần nó thì đây :


(defun c:gpo()
 (mapcar '+ (getpoint "\n Diem goc :") (list (getreal "\nx = ") (getreal "\ny = ") 0.0))
)

Cách sử dụng : Sử dụng "lệnh trong lệnh"

Ví dụ :

 

Command: l LINE -> Gõ lệnh Line

Specify first point: 'gpo -> Gõ 'gpo

 

Diem goc : -> Hỏi chọn điểm gốc

x = 500 -> Hỏi nhập X

 

y = 600 -> Hỏi nhập Y

(1.09567e+006 401936.0 0.0) -> con trỏ chuột sẽ nhảy đến vị trí có tọa độ cách điểm gốc X, Y

 

Specify next point or [undo]:

Specify next point or [undo]:

  • 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
various    9

Nếu bạn cần nó thì đây :


(defun c:gpo()
 (mapcar '+ (getpoint "\n Diem goc :") (list (getreal "\nx = ") (getreal "\ny = ") 0.0))
)

 

 

Vô cùng cảm ơn bác :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

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


×