;===================HAM XU LY SO LIEU CAC DINH DANG KHAC NHAU================ (defun doc_file() (setq list_diem(list)) (if (= (vl-filename-extension file1) ".ac") (progn (while(setq txt(read-line file_in)) (setq LAT(+ (atof(substr txt 22 2)) (/ (atof(substr txt 25 7)) 60))) (setq LONG(+ (atof(substr txt 33 3)) (/ (atof(substr txt 37 7)) 60))) (setq list_diem(append list_diem(list (list LONG LAT)))) ))) (if (= (vl-filename-extension file1) ".txt") (while(setq txt(read-line file_in)) (setq lst (read (strcat "(" txt ")" ))) (setq list_diem(append list_diem(list lst))) )) ) ;============CHUONG TRINH CONVERT SO LIEU TU LAT LONG SANG FILE KML DUNG CHO GOOGLE EARTH============= ;=======================================CONVERT DIEM================================================== (defun C:GE() (if (not Path) (setq Path(getvar "dwgprefix"))) (setq file1(getfiled "Select File" Path "txt;*" 8)) (setq file2(getfiled "Output File" (strcat (vl-filename-directory file1) "\\" (vl-filename-base file1)) "kml" 11)) (setq Path file1) (setq file_in(open file1 "R")) (setq file_out(open file2 "W")) (setq list_diem(list)) (while(setq txt(read-line file_in)) (setq lst (read (strcat "(" txt ")" ))) (setq list_diem(append list_diem(list lst))) ) ;=========GHI CHU DIEM========= (write-line (strcat "\n" "\n" "\n" "1\n" "\n" "\n" "normal\n" "#sn_placemark_circle\n" "\n" "\n" "highlight\n" "#sh_placemark_circle_highlight\n" "\n" "\n" "\n" "\n" "\n" "\n" "\n" "\n" "normal\n" "#sn_redline\n" "\n" "\n" "highlight\n" "#sh_redline\n" "\n" "\n") file_out) (foreach diem list_diem (write-line (strcat "\n" "" (vl-princ-to-string (car diem)) "\n" "#msn_placemark_circle\n" "\n" "" (rtos (caddr diem) 2 12) "," (rtos (cadr diem) 2 12) ",0\n" "\n" "\n" ) file_out) ) ;=========GHI CHU DUONG========= (write-line (strcat "\n" "" (vl-filename-base file1) ".\n" "#msn_redline\n" "\n" "\n") file_out) (foreach diem list_diem (write-line (strcat (rtos (caddr diem) 2 12) "," (rtos (cadr diem) 2 12) ",0\n") file_out) ) (write-line (strcat "\n" "\n" "\n" "\n" "") file_out) (close file_out) (close file_in) (princ "\nProcessing Completed!\n") (command "shell" (strcat "explorer \"" file2)) (princ) ) (alert (strcat "LISP CONVERT TOA DO TUYEN LEN GOOGLE EARTH\n" " NHAP GE DE BAT DAU\n\n" "So lieu: File *.txt\n" "Format so lieu: [TEN DIEM] [Toa do Lat] [Toa do Long]\n" "VI DU: \n" "P1 21.745133333333 107.810483333333\n" "P2 21.786455000000 107.829846666667\n" "P3 21.794571666667 107.833651666667\n" "P4 21.807390000000 107.837121666667\n" "P5 21.807486666667 107.837148333333\n" "P6 21.824595000000 107.841781666667\n" "P7 21.827490000000 107.842566666667\n" "P8 21.892010000000 107.860045000000\n" "P9 21.907470000000 107.864235000000\n"))