Đến nội dung


Hình ảnh

Xuất và nhập tọa độ bằng lisp


  • Please log in to reply
4 replies to this topic

#1 thaoanthony

thaoanthony

    Chưa sử dụng CAD

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

Đã gửi 25 February 2013 - 11:14 AM

E sưu tầm được file lisp như sau để lấy tọa độ XYZ của các điểm thay cho lệnh ID. Nhưng sau khi e xuất ra file txt, thì chỉ lấy được 3 số thập phân, trong khi e muốn lấy 4 số, và không làm tròn. Mong ae có thể sửa code trong lisp này dùm e.
Và cho e hỏi luôn là sau khi mình xuất ra file txt rồi, thì e muốn xuất ngược bảng tọa độ đó vào Cad có được không???Mong ae chỉ dạy.
Cảm ơn ae rất nhiều và nội dung file lisp e có như sau : 
 
 

;; free lisp from cadviet.com;;; this lisp was downloaded from http://www.cadviet.com/forum/topic/5852-lisp-xuat-toa-do/
(defun c:tff ( / tmp dlst p1 file opw msg id)
(setq tmp t)
(setq dlst (list(strcat "X" "\t" "Y" "\t" "Z")))
(setq id 0)
(setq file (strcat (getvar "DWGPREFIX") (substr (getvar "DWGNAME") 1 (- (strlen (getvar "DWGNAME")) 4)) ".txt"))
(while tmp (progn (setq id (1+ id))
(setq msg (strcat "\nChon diem thu " (rtos id 2 0)":"))
(setq p1 (getpoint msg))
(if p1 (progn (setq dlst (append (list (strcat (rtos (car p1) 2 3)
"\t" (rtos (cadr p1) 2 3)
"\t" (rtos (caddr p1) 2 3)
)
)
dlst )
)
(setq tmp t)
)
(setq tmp nil)
)
)
)
(setq dlst (reverse dlst))
(setq ;file "d:\\tien\\diem.txt" opw (open file "w")
)
(foreach n dlst (write-line n opw))
(close opw));end defun----------------

  • 0

#2 phamthanhbinh

phamthanhbinh

    biết lệnh adcenter

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

Đã gửi 25 February 2013 - 01:35 PM

thaoanthony, on 25 Feb 2013 - 11:07, said:

E sưu tầm được file lisp như sau để lấy tọa độ XYZ của các điểm thay cho lệnh ID. Nhưng sau khi e xuất ra file txt, thì chỉ lấy được 3 số thập phân, trong khi e muốn lấy 4 số, và không làm tròn. Mong ae có thể sửa code trong lisp này dùm e.
Và cho e hỏi luôn là sau khi mình xuất ra file txt rồi, thì e muốn xuất ngược bảng tọa độ đó vào Cad có được không???Mong ae chỉ dạy.
Cảm ơn ae rất nhiều và nội dung file lisp e có như sau :

hề hề hề,
Bạn thử thay tất cả các hàm (rtos ......... 2 3) bằng (rtos........ 2 4) coi nó ra cái giống chi hè.......
Còn việc muốn xuất ngược nó lại vào CAD thì cũng chả khó đâu, trên diễn đàn có vvô số lisp như vầy. Bạn chịu khó tìm kiếm nhé
  • 0
Chúc các quý Anh trên diễn đàn luôn khỏe, đẻ thêm được nhiều thứ để mót.

#3 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

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

Đã gửi 25 February 2013 - 01:42 PM

hề hề hề,

Bạn thử thay tất cả các hàm  (rtos ......... 2 3)  bằng  (rtos........  2 4) coi nó ra cái giống chi hè.......

Còn việc muốn xuất ngược nó lại vô CAD thì cũng chả khó đâu, trên diễn đàn có vô số lisp như vầy. Bạn chịu khó tìm kiếm nhé.

Rtos nó làm tròn bác PTB ạ! Chủ topic không muốn làm tròn mà chỉ muốn cắt đuôi.


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


#4 phamthanhbinh

phamthanhbinh

    biết lệnh adcenter

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

Đã gửi 25 February 2013 - 02:26 PM

Rtos nó làm tròn bác PTB ạ! Chủ topic không muốn làm tròn mà chỉ muốn cắt đuôi.

Hề hề hề,

Sorry bác vì mình không hiểu rõ yêu cầu của chủ thớt. Nếu là như vậy thì có nhẽ phải dùng (substr (rtos .... 2 5) .....) bác nhể.


  • 0
Chúc các quý Anh trên diễn đàn luôn khỏe, đẻ thêm được nhiều thứ để mót.

#5 tung_nt8285

tung_nt8285

    biết zoom

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

Đã gửi 28 August 2014 - 11:20 AM

Em không biết viết lisp nhưng có một việc đang rất cần các bạn giúp như sau:

- Trong bản vẽ AutoCad khi mình click điểm nào thì sẽ lấy được tọa độ x,y của điểm đó. Sau khi click 1 điểm thì có thể click tiếp điểm khác hoặc hiện thông báo xuất ra file text. Khi đồng ý thì xuất ra file text có dạng như mình đã định sẵn như:

                start

                abc

                xyz

                abc,xyz,bcd, TỌA ĐỘ X, TỌA ĐỘ Y, abc, xyz

                end

Mong các Pro, bác phamthanhbinh giúp e với. Chân thành cảm ơn nhiều.


  • 0