Đến nội dung


Hình ảnh
- - - - -

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


  • Please log in to reply
7 replies to this topic

#1 thanhtungvnn

thanhtungvnn

    biết vẽ arc

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

Đã gửi 07 August 2012 - 07:24 PM



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 đỡ .
  • 0

#2 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5447 Bài viết
Điểm đánh giá: 2624 (tuyệt vời)

Đã gửi 07 August 2012 - 08:30 PM

Tôi đọc yêu cầu của bạn mà không thể hiểu nổi. Bạn có thể minh họa bằng 1 file cad được không?
  • 0

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#3 ketxu

ketxu

    Copier - Paster - Editor

  • Moderator
  • PipPipPipPipPipPipPip
  • 5679 Bài viết
Điểm đánh giá: 2605 (tuyệt vời)

Đã gửi 07 August 2012 - 08:36 PM

Sử dụng Shift + chuột phải => Temporary Track Point (tt)
Bạn có thể đọc help về lệnh này
  • 0

Thành viên nhóm CadMagic.
Mời bạn ghé thăm facebook nhóm - Page viết lisp theo yêu cầu  :
CAD MAGIC


#4 thanhtungvnn

thanhtungvnn

    biết vẽ arc

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

Đã gửi 07 August 2012 - 09:10 PM

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

http://youtu.be/owxB-v0H10Y

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.
  • 0

#5 Chiron

Chiron

    biết dimradius

  • Members
  • PipPipPipPipPip
  • 310 Bài viết
Điểm đánh giá: 90 (tàm tạm)

Đã gửi 08 August 2012 - 08:45 AM

// 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?
  • 0

#6 various

various

    biết vẽ polygon

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

Đã gửi 08 August 2012 - 02:57 PM

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
  • 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 08 August 2012 - 04:15 PM

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]:
  • 3

#8 various

various

    biết vẽ polygon

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

Đã gửi 08 August 2012 - 05:36 PM

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.
  • 0