Chuyển đến nội dung
Diễn đàn CADViet
Đăng nhập để thực hiện theo  
thonghoang1

viết hộ lisp xuất giá trị (x,y,text)ra file

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

mình có một yêu cầu nhờ mấy anh giúp:mình có một file số liệu gồm có tập điểm point và các text cao độ tại vị trí điểm point đó.mình muốn một lisp có thể xuất các giá trị (x,y,text cao độ tại điểm đấy)ra file .txt, Nếu có thể thì các anh giúp em vào được giá trị cao độ tại điểm point đấy vào trong điểm point để điểm point đấy tự nhận giá trị cao độ đó khi mình chọn nó.Đây là file số liệu:

http://www.cadviet.com/upfiles/2/solieu.dwg

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 có một yêu cầu nhờ mấy anh giúp:mình có một file số liệu gồm có tập điểm point và các text cao độ tại vị trí điểm point đó.mình muốn một lisp có thể xuất các giá trị (x,y,text cao độ tại điểm đấy)ra file .txt, Nếu có thể thì các anh giúp em vào được giá trị cao độ tại điểm point đấy vào trong điểm point để điểm point đấy tự nhận giá trị cao độ đó khi mình chọn nó.Đây là file số liệu:

http://www.cadviet.com/upfiles/2/solieu.dwg

Chào bạn thonghoang1,

Bạn nên post yêu cầu này vào topic "Viết lisp theo yêu cầu" bạn nhé.

Yêu cầu này theo mình nhớ thì trên diễn đàn đã có lisp. Bạn hãy chịu khó tìm kiếm trong topic Viết lisp theo yêu cầu bạn 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
mình có một yêu cầu nhờ mấy anh giúp:mình có một file số liệu gồm có tập điểm point và các text cao độ tại vị trí điểm point đó.mình muốn một lisp có thể xuất các giá trị (x,y,text cao độ tại điểm đấy)ra file .txt, Nếu có thể thì các anh giúp em vào được giá trị cao độ tại điểm point đấy vào trong điểm point để điểm point đấy tự nhận giá trị cao độ đó khi mình chọn nó.Đây là file số liệu:

http://www.cadviet.com/upfiles/2/solieu.dwg

Mình không quan tâm tới các point của bạn mà chỉ đọc các text và ghi ra file txt và vẽ point mới tại điểm giửa text có z theo cao độ.

-Bạn dùng lisp này.

-Trước khi chạy lệnh bạn tắt toàn bộ chế độ bắt điểm tự động đi.

-Nếu sau khi chạy kiểm tra z của point không có số lẻ thì bạn dùng lệnh find thay dấu chấm bằng dấu phẩy (trong file cad của bạn) rồi chạy lại lệnh nhé.

-Lệnh DTCD

 

(Defun C:DTCD ( )

(command "undo" "be")

(setq TENFILECODUOI (strcat (getfiled "Tao file .txt:" "" "txt" 5) ".txt"))

 

 

(Princ "\nHay chon TEXT :")

(setq SS (ssget '((0 . "TEXT"))))

(setq i 0)

(setq N (sslength ss))

(while (< i N)

(setq DTDTT (ssname SS i))

(setq DTTT (entget DTDTT))

 

(setq caodo (cdr (assoc 1 DTTT)))

(setq diemgiua (cdr (assoc 11 DTTT)))

(setq gtcd (atof caodo))

 

 

(setq gtx (rtos (car diemgiua) 2 2))

(setq gty (rtos (cadr diemgiua) 2 2))

(setq NOIDUNGVIET (strcat "Cao do: " caodo " X: " gtx " Y: " gty))

 

 

(command ".point" (list (car diemgiua) (cadr diemgiua) gtcd))

(setq FILEMODEVIET (open TENFILECODUOI "a"))

 

(write-line NOIDUNGVIET FILEMODEVIET)

(close FILEMODEVIET)

 

(setq i (1+ i))

)

 

(command "undo" "end")

(Princ)

)

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,lisp của anh đã theo ý của em được 1/2 rồi,các text bên file txt em cần là (01,x,y,z,),em đã sửa lại đoạn lisp của anh rồi,nhưng mà có một điều là các điểm piont mới vẽ không trùng với các điểm piont cũ nên toạ độ cũng sẽ không đúng.vì chương trình chạy bình đồ của khảo sát đưa, điểm piont nó không nằm giữa text,mong anh xem lạ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
cảm ơn anh,lisp của anh đã theo ý của em được 1/2 rồi,các text bên file txt em cần là (01,x,y,z,),em đã sửa lại đoạn lisp của anh rồi,nhưng mà có một điều là các điểm piont mới vẽ không trùng với các điểm piont cũ nên toạ độ cũng sẽ không đúng.vì chương trình chạy bình đồ của khảo sát đưa, điểm piont nó không nằm giữa text,mong anh xem lại

Nói lại nhé:

-Thực chất lisp này đọc tọa độ điểm chèn thứ hai của text và nội dung text và xuất ra file txt. Trong file của bạn điểm đặt thứ 2 của text là center (điểm thứ nhất là góc dưới bên trái text).

-Trong file của bạn mình thấy point cũng nằm tương đối giửa text. Cái point viết ra là đối tượng mới tạo có x,y,z trung với giá trị trong file txt.

-Sai số (tọa độ giữa point cũ và mới) là không đáng kế mình nghỉ dùng nó để làm san nền hay thiết kế các thứ khác là không vần đề.

*Bạn muốn đọc tọa độ chính xác của point và text thì rất mệt và hay nhầm nửa mình không tiếp tục đượ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

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

Đăng nhập để thực hiện theo  

×