Thứ Ba, 8 tháng 12, 2009

Tiện ích Xuất tọa độ.

Nếu bạn là dân quy hoạch thì không tránh khỏi việc ghi tọa độ các điểm trong bảng vẽ ở đây mình cung cấp 2 lisp trợ giúp việc này.
1-Tên lệnh: XTD
-Tác dụng:Liệt kê tọa độ x,y của điểm chọn bằng mủi tên chỉ trực tiếp vào điểm chọn.
-Thao tác:
+Nhập lệnh XDT.
Ban co muon chon diem toa do gia dinh khong: Co/Khong: Nếu dùng hệ tọa độ giả định thì gỏ c (nếu không thì gỏ k lúc này lisp sẽ lấy tọa độ 0,0 đúng tại gốc tọa độ)
Chon diem gia dinh: Chọn điểm cơ sở của bạn
Toa do X gia dinh : 100 nhập tạo độ x giả định của điểm vừa nhập
Toa do Y gia dinh : 100 nhập tạo độ y giả định của điểm vừa nhập
Ti le /: Nếu muốn thay đổi tỉ lệ (trường hợp bản vẽ của mình 1 mét không phải là 1 đơn vị) thì gỏ t và nhập giá trị 1 mét của mình vào. Nếu không thay đổi thì chọn điểm cần lấy tọa độ .
Chon diem viet ket qua:
Chon diem muon xem toa do :
Chon diem viet ket qua:
Kết quả viết ra là LEADER dùng dimstyle hiện hành.

2-Tên lệnh: LKD
-Tác dụng: Liệt kê tọa độ các điểm chọn thành bảng tại vị trí 0,0.
-Thao tác: giống lệnh XTD nhưng sau khi chọn điểm cần lấy tọa độ lisp sẽ hỏi số thứ tự của nút bạn nhập vào (các nút chọn không cần đúng thứ tự sau khi báo số thứ tự của nút thì lisp sẽ chèn block tên nhap vào vị trí này để bạn biết là đã chọn nút này rồi tránh trùng lắp). kết quả sẽ viết ra 1 bảng tạo vị trí tọa độ 0,0.

Bạn copy nội dung và tạo file lisp hay tải file về cũng được!

;Viet boi: KTS_DUY BINH SON - QUANG NGAI
;Dien dan: tailieukythuat.com
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(Defun c:xtd ( )
(setq lc (strcase (getstring "\nBan co muon chon diem toa do gia dinh khong: Co/Khong: ")))

(if (= lc "C")
(progn
(setq a (getpoint "\nChon diem gia dinh: "))
(setq ax (dnint "\nToa do X gia dinh "ax1))
(setq ax1 ax)
(setq ay (dnint "\nToa do Y gia dinh "ay1))
(setq ay1 ay)

(princ "\nPHAM QUOC DUY Binh Son - Quang ngai")
(command "-style" "thep" "VNI-HELVE" "0" "1" "0" "n" "n")
(if (null met)(setq met 1))
(Setq temp T)
(While temp
(setq b (strcat "\nTi le /: "))
(Initget "t T")
(setq str (getpoint b))
(Cond
((= str "t") (setq met (dnint "\nMot met ban ve la bao nhieu "momet)))
((= str "T") (setq met (dnint "\nMot met ban ve la bao nhieu "momet)))
(Progn
(Setq b str)
(setq momet met)
(setq temp nil)
)
)
)
(setq c (getpoint b"\nChon diem viet ket qua: "))
(setq luubatdiem (getvar "osmode")) (setq luulop (getvar "clayer"))
(setvar "osmode" 0)
(setq x (/ (car b) met))
(setq y (/ (cadr b) met))

(setq xg (/ (car a) met))
(setq yg (/ (cadr a) met))
(setq kx (- x xg))
(setq ky (- y yg))
(setq xm (+ kx ax))
(setq ym (+ ky ay))

(setq toadox (rtos xm 2 4))
(setq toadoy (rtos ym 2 4))
(setq noidungviet (strcat toadox "\\P" toadoy))
(command ".LEADER" b c "" noidungviet "")


(setvar "osmode" luubatdiem) (setvar "clayer" luulop)
(setvar "MODEMACRO" "**TAILIEUKYTHUAT.COM**")
(while
(setq b (getpoint "\nChon diem muon xem toa do : "))

(setq c (getpoint b"\nChon diem viet ket qua: "))
(setq luubatdiem (getvar "osmode")) (setq luulop (getvar "clayer"))
(setvar "osmode" 0)
(setq x (/ (car b) met))
(setq y (/ (cadr b) met))
(setq xg (/ (car a) met))
(setq yg (/ (cadr a) met))
(setq kx (- x xg))
(setq ky (- y yg))
(setq xm (+ kx ax))
(setq ym (+ ky ay))

(setq toadox (rtos xm 2 4))
(setq toadoy (rtos ym 2 4))
(setq noidungviet (strcat toadox "\\P" toadoy))
(command ".LEADER" b c "" noidungviet "")


(setvar "osmode" luubatdiem) (setvar "clayer" luulop)


)


)
)


(if (= lc "K")
(progn
(princ "\nPHAM QUOC DUY Binh Son - Quang ngai")
(command "-style" "thep" "VNI-HELVE" "0" "1" "0" "n" "n")
(if (null met)(setq met 1))
(Setq temp T)
(While temp
(setq b (strcat "\nTi le /: "))
(Initget "t T")
(setq str (getpoint b))
(Cond
((= str "t") (setq met (dnint "\nMot met ban ve la bao nhieu "momet)))
((= str "T") (setq met (dnint "\nMot met ban ve la bao nhieu "momet)))
(Progn
(Setq b str)
(setq momet met)
(setq temp nil)
)
)
)
(setq c (getpoint b"\nChon diem viet ket qua: "))
(setq luubatdiem (getvar "osmode")) (setq luulop (getvar "clayer"))
(setvar "osmode" 0)
(setq x (/ (car b) met))
(setq y (/ (cadr b) met))

(setq toadox (rtos x 2 4))
(setq toadoy (rtos y 2 4))
(setq noidungviet (strcat toadox "\\P" toadoy))
(command ".LEADER" b c "" noidungviet "")

(setvar "osmode" luubatdiem) (setvar "clayer" luulop)


(setvar "MODEMACRO" "**TAILIEUKYTHUAT.COM**")
(while
(setq b (getpoint "\nChon diem muon xem toa do : "))
(setq x (/ (car b) met))
(setq y (/ (cadr b) met))
(setq c (getpoint b"\nChon diem viet ket qua: "))
(setq luubatdiem (getvar "osmode")) (setq luulop (getvar "clayer"))
(setvar "osmode" 0)
(setq toadox (rtos x 2 4))
(setq toadoy (rtos y 2 4))
(setq noidungviet (strcat toadox "\\P" toadoy))
(command ".LEADER" b c "" noidungviet "")

(setvar "osmode" luubatdiem) (setvar "clayer" luulop)


)


)
)





(setvar "MODEMACRO" "**TAILIEUKYTHUAT.COM**")
(Princ)
)


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(Defun c:lkd ( )
(setq lc (strcase (getstring "\nBan co muon chon diem toa do gia dinh khong: Co/Khong: ")))

(if (= lc "C")
(progn
(setq a (getpoint "\nChon diem gia dinh: "))
(setq ax (dnint "\nToa do X gia dinh "ax1))
(setq ax1 ax)
(setq ay (dnint "\nToa do Y gia dinh "ay1))
(setq ay1 ay)

(princ "\nPHAM QUOC DUY Binh Son - Quang ngai")
(command "-style" "thep" "VNI-HELVE" "0" "1" "0" "n" "n")
(if (null met)(setq met 1))
(Setq temp T)
(While temp
(setq b (strcat "\nTi le /: "))
(Initget "t T")
(setq str (getpoint b))
(Cond
((= str "t") (setq met (dnint "\nMot met ban ve la bao nhieu "momet)))
((= str "T") (setq met (dnint "\nMot met ban ve la bao nhieu "momet)))
(Progn
(Setq b str)
(setq momet met)
(setq temp nil)
)
)
)
(setq luubatdiem (getvar "osmode")) (setq luulop (getvar "clayer"))
(setvar "osmode" 0)
(setq x (/ (car b) met))
(setq y (/ (cadr b) met))

(setq xg (/ (car a) met))
(setq yg (/ (cadr a) met))
(setq kx (- x xg))
(setq ky (- y yg))
(setq xm (+ kx ax))
(setq ym (+ ky ay))


(command "INSERT" (strcat odiachay "\\tienich\\dwg\\nhap") (list (car b)(cadr b)) 1 1 0)
(setq xht (getreal "\nSo thu tu cua nut : "))
(setq xh (- xht 1))
(setq nx (* 8 xh))
(setq sb (/ xh 10))
(setq sbn (* 100 (fix sb)))
(setq snl (- xh (fix sb)))
(setq nl (- nx (* 80 (fix sb))))

(setq CHIAM (/ XHT 10))
(setq LAMCHAN (fix CHIAM))
(setq NHANM (* LAMCHAN 10))
(setq tenkc (- XHT NHANM))
(setq tenkcn (* TENKC 100))
(setq TENKCM (fix TENKCN))

(Cond
((= TENKCM 100) (command "INSERT" (strcat odiachay "\\tienich\\dwg\\tdbdiem") (list (- sbn 14) (- 6 nl)) 1 1 0)
)
((/= TENKCM 100)
)
)

(command "TEXT" (list (+ 0 sbn) (- 0 nl)) 4 0 (rtos xm 2 4))
(command "TEXT" (list (+ 42 sbn) (- 0 nl)) 4 0 (rtos ym 2 4))
(command "TEXT" (list (- sbn 10) (- 0 nl)) 4 0 (fix xht))
(command "LINE" (list (- sbn 14) (- (- 6 nl) 8))(list (+ sbn 80) (- (- 6 nl) 8)) "")
(command "LINE" (list (- sbn 14) (- 6 nl))(list (- sbn 14)(- (- 6 nl) 8)) "")
(command "LINE" (list (+ (- sbn 14) 12) (- 6 nl))(list (+ (- sbn 14) 12)(- (- 6 nl) 8)) "")
(command "LINE" (list (+ (- sbn 14) 53) (- 6 nl))(list (+ (- sbn 14) 53)(- (- 6 nl) 8)) "")
(command "LINE" (list (+ (- sbn 14) 94) (- 6 nl))(list (+ (- sbn 14) 94)(- (- 6 nl) 8)) "")
(setvar "osmode" luubatdiem) (setvar "clayer" luulop)


(setvar "MODEMACRO" "**TAILIEUKYTHUAT.COM**")
(while
(setq b (getpoint "\nChon diem muon xem toa do : "))

(setq x (/ (car b) met))
(setq y (/ (cadr b) met))
(setq xg (/ (car a) met))
(setq yg (/ (cadr a) met))
(setq kx (- x xg))
(setq ky (- y yg))
(setq xm (+ kx ax))
(setq ym (+ ky ay))

(setq luubatdiem (getvar "osmode")) (setq luulop (getvar "clayer"))
(setvar "MODEMACRO" "LIET KE TOA DO TAI DIEM 0-0")
(setvar "osmode" 0)
(command "INSERT" (strcat odiachay "\\tienich\\dwg\\nhap") (list (car b)(cadr b)) 1 1 0)
(setq xht (getreal "\nSo thu tu cua nut : "))
(setq xh (- xht 1))
(setq nx (* 8 xh))
(setq sb (/ xh 10))
(setq sbn (* 100 (fix sb)))
(setq snl (- xh (fix sb)))
(setq nl (- nx (* 80 (fix sb))))

(setq CHIAM (/ XHT 10))
(setq LAMCHAN (fix CHIAM))
(setq NHANM (* LAMCHAN 10))
(setq tenkc (- XHT NHANM))
(setq tenkcn (* TENKC 100))
(setq TENKCM (fix TENKCN))

(Cond
((= TENKCM 100) (command "INSERT" (strcat odiachay "\\tienich\\dwg\\tdbdiem") (list (- sbn 14) (- 6 nl)) 1 1 0)
)
((/= TENKCM 100)
)
)

(command "TEXT" (list (+ 0 sbn) (- 0 nl)) 4 0 (rtos xm 2 4))
(command "TEXT" (list (+ 42 sbn) (- 0 nl)) 4 0 (rtos ym 2 4))
(command "TEXT" (list (- sbn 10) (- 0 nl)) 4 0 (fix xht))
(command "LINE" (list (- sbn 14) (- (- 6 nl) 8))(list (+ sbn 80) (- (- 6 nl) 8)) "")
(command "LINE" (list (- sbn 14) (- 6 nl))(list (- sbn 14)(- (- 6 nl) 8)) "")
(command "LINE" (list (+ (- sbn 14) 12) (- 6 nl))(list (+ (- sbn 14) 12)(- (- 6 nl) 8)) "")
(command "LINE" (list (+ (- sbn 14) 53) (- 6 nl))(list (+ (- sbn 14) 53)(- (- 6 nl) 8)) "")
(command "LINE" (list (+ (- sbn 14) 94) (- 6 nl))(list (+ (- sbn 14) 94)(- (- 6 nl) 8)) "")
(setvar "osmode" luubatdiem) (setvar "clayer" luulop)


)


)
)


(if (= lc "K")
(progn
(princ "\nPHAM QUOC DUY Binh Son - Quang ngai")
(command "-style" "thep" "VNI-HELVE" "0" "1" "0" "n" "n")
(if (null met)(setq met 1))
(Setq temp T)
(While temp
(setq b (strcat "\nTi le /: "))
(Initget "t T")
(setq str (getpoint b))
(Cond
((= str "t") (setq met (dnint "\nMot met ban ve la bao nhieu "momet)))
((= str "T") (setq met (dnint "\nMot met ban ve la bao nhieu "momet)))
(Progn
(Setq b str)
(setq momet met)
(setq temp nil)
)
)
)
(setq luubatdiem (getvar "osmode")) (setq luulop (getvar "clayer"))
(setvar "osmode" 0)
(setq x (/ (car b) met))
(setq y (/ (cadr b) met))
(command "INSERT" "C:\\tailieukythuat\\dwg\\nhap" (list (car b)(cadr b)) 1 1 0)
(setq xht (getreal "\nSo thu tu cua nut : "))
(setq xh (- xht 1))
(setq nx (* 8 xh))
(setq sb (/ xh 10))
(setq sbn (* 100 (fix sb)))
(setq snl (- xh (fix sb)))
(setq nl (- nx (* 80 (fix sb))))

(setq CHIAM (/ XHT 10))
(setq LAMCHAN (fix CHIAM))
(setq NHANM (* LAMCHAN 10))
(setq tenkc (- XHT NHANM))
(setq tenkcn (* TENKC 100))
(setq TENKCM (fix TENKCN))

(Cond
((= TENKCM 100) (command "INSERT" "C:\\tailieukythuat\\dwg\\tdbdiem" (list (- sbn 14) (- 6 nl)) 1 1 0)
)
((/= TENKCM 100)
)
)

(command "TEXT" (list (+ 0 sbn) (- 0 nl)) 4 0 (rtos x 2 4))
(command "TEXT" (list (+ 42 sbn) (- 0 nl)) 4 0 (rtos y 2 4))
(command "TEXT" (list (- sbn 10) (- 0 nl)) 4 0 (fix xht))
(command "LINE" (list (- sbn 14) (- (- 6 nl) 8))(list (+ sbn 80) (- (- 6 nl) 8)) "")
(command "LINE" (list (- sbn 14) (- 6 nl))(list (- sbn 14)(- (- 6 nl) 8)) "")
(command "LINE" (list (+ (- sbn 14) 12) (- 6 nl))(list (+ (- sbn 14) 12)(- (- 6 nl) 8)) "")
(command "LINE" (list (+ (- sbn 14) 53) (- 6 nl))(list (+ (- sbn 14) 53)(- (- 6 nl) 8)) "")
(command "LINE" (list (+ (- sbn 14) 94) (- 6 nl))(list (+ (- sbn 14) 94)(- (- 6 nl) 8)) "")
(setvar "osmode" luubatdiem) (setvar "clayer" luulop)


(setvar "MODEMACRO" "**TAILIEUKYTHUAT.COM**")
(while
(setq b (getpoint "\nChon diem muon xem toa do : "))
(setq x (/ (car b) met))
(setq y (/ (cadr b) met))
(setq luubatdiem (getvar "osmode")) (setq luulop (getvar "clayer"))
(setvar "MODEMACRO" "LIET KE TOA DO TAI DIEM 0-0")
(setvar "osmode" 0)
(command "INSERT" "C:\\tailieukythuat\\dwg\\nhap" (list (car b)(cadr b)) 1 1 0)
(setq xht (getreal "\nSo thu tu cua nut : "))
(setq xh (- xht 1))
(setq nx (* 8 xh))
(setq sb (/ xh 10))
(setq sbn (* 100 (fix sb)))
(setq snl (- xh (fix sb)))
(setq nl (- nx (* 80 (fix sb))))

(setq CHIAM (/ XHT 10))
(setq LAMCHAN (fix CHIAM))
(setq NHANM (* LAMCHAN 10))
(setq tenkc (- XHT NHANM))
(setq tenkcn (* TENKC 100))
(setq TENKCM (fix TENKCN))

(Cond
((= TENKCM 100) (command "INSERT" "C:\\tailieukythuat\\dwg\\tdbdiem" (list (- sbn 14) (- 6 nl)) 1 1 0)
)
((/= TENKCM 100)
)
)

(command "TEXT" (list (+ 0 sbn) (- 0 nl)) 4 0 (rtos x 2 4))
(command "TEXT" (list (+ 42 sbn) (- 0 nl)) 4 0 (rtos y 2 4))
(command "TEXT" (list (- sbn 10) (- 0 nl)) 4 0 (fix xht))
(command "LINE" (list (- sbn 14) (- (- 6 nl) 8))(list (+ sbn 80) (- (- 6 nl) 8)) "")
(command "LINE" (list (- sbn 14) (- 6 nl))(list (- sbn 14)(- (- 6 nl) 8)) "")
(command "LINE" (list (+ (- sbn 14) 12) (- 6 nl))(list (+ (- sbn 14) 12)(- (- 6 nl) 8)) "")
(command "LINE" (list (+ (- sbn 14) 53) (- 6 nl))(list (+ (- sbn 14) 53)(- (- 6 nl) 8)) "")
(command "LINE" (list (+ (- sbn 14) 94) (- 6 nl))(list (+ (- sbn 14) 94)(- (- 6 nl) 8)) "")
(setvar "osmode" luubatdiem) (setvar "clayer" luulop)


)


)
)





(setvar "MODEMACRO" "**TAILIEUKYTHUAT.COM**")
(Princ)
)

;---------------------------------------
(defun nstr (stri def)
(princ stri)
(princ "<")
(princ " ")
(princ def)
(princ ">")
(princ ":")
(princ " ")
);defun nstr
;--------------------
(defun nstr1 (stri)
(princ stri)
(princ "<")
(princ "Nhap vao")
(princ ">")
(princ ":")
(princ " ")
);defun nstr1
;---------------------
(defun nint (prompt def / temp)
(if def
(setq temp (getint (nstr prompt def)))
(setq def (getint (nstr1 prompt)))
);if def
(if temp
(setq def temp)
def
);if temp
);defun nint
;---------------------
(defun dnint (prompt def / temp)
(if def
(setq temp (getreal (nstr prompt def)))
(setq def (getreal (nstr1 prompt)))
);if def
(if temp
(setq def temp)
def
);if temp
);defun nint
;--------------------
(defun ndist (po prompt def / temp) ;nhan kh/cach va luu gia tri mac dinh
(if def
(setq temp (getdist po (nstr prompt def)))
(setq def (getdist po (nstr1 prompt)))
)if def
(if temp
(setq def temp)
def
);if temp
);defun ndist
;-----------------------------------






Cần làm theo Hướng Dẫn khi dùng lisp này!

20 nhận xét:

  1. ghé thăm blog bạn chúc 1 ngày vui vẽ nhá

    Trả lờiXóa
  2. Lisp này rất hay và thật sự hữu ích với công việc của mình. Vì ko biết về lisp nên cho mình hỏi nếu muốn kết quả xuất ra màn hình chỉ có 2 số thập phân thì phải sửa như thế nào?
    Xin chân thành cảm ơn.

    Nguyễn Công Thắng
    congthangqc@gmail.com

    Trả lờiXóa
  3. Bạn tìm hai dòng
    (setq toadox (rtos x 2 4))
    (setq toadoy (rtos y 2 4))
    và sửa thành
    (setq toadox (rtos x 2 2))
    (setq toadoy (rtos y 2 2))
    là được.

    Trả lờiXóa
  4. Mình đã sửa và đã làm được rồi, thật hay quá. Cho mình hỏi 1 vấn đề nữa, bạn có lisp mà khi pick vào 1 điểm trên màn hình thì sẽ tạo ra 1 boundary và xuất diện tích lên màn hình không vậy? Mình đang cần cái này vì công việc phải tính liên tục và lập đi lập lại rất nhiều lần.
    Xin cảm ơn nhiều!

    Nguyễn Công Thắng
    congthangqc@gmail.com

    Trả lờiXóa
  5. http://duy782006.blogspot.com/2010/02/tac-dung-va-huong-dan-o-dien-tich-pline.html

    Bạn xem ở đây nhé. Bạn làm bên quy hoạch à?

    Trả lờiXóa
  6. A.Duy ơi: tai sao em dùng lkd lisp ko thực hiện được hả anh.em chep file tdbdiem.dwg vvao support nhưng ko có bước chọn điểm cần xuất tọa độ anh ah
    anh giúp em nhé.cám ơn anh

    Trả lờiXóa
  7. em dung lệnh LKD mà nó mắc lổi thế này
    anh giúp em với nhé.cám ơn anh
    http://share.megaplus.vn/dl.php/2496087

    Trả lờiXóa
  8. Phía cuối bài có dòng lưu ý là phải làm theo hướng dẩn đấy. Bạn chọn vào chử hướng dẩn màu xanh ấy sẽ đưa đến bài hướng dẩn bạn để file dwg vào đúng chổ theo hướng dẩn là được vì mình dùng đường dẩn cố định mà.

    Trả lờiXóa
  9. em đã đọc nhiều bài viết của anh bên cadviet nhưng vào block của anh mới thấy đúng cái mình cần
    sao em đả làm các bước tạo thu mục y như anh nói mà vẫn ko dùng được lênh LKD
    anh hướng dẫn chi tiết giúp em với. em đang rất cần lisp này

    Trả lờiXóa
  10. em tạo file giống y như anh nói mà cad báo là ko tìm thấy đường dẫn anh ah anh xem hình này nhé
    http://share.megaplus.vn/dl.php/2497820
    làm phiền anh quá.giúp em với nhé

    Trả lờiXóa
  11. Sorry bạn nhé do file lisp mình chưa sửa đường dẩn. Bạn load lại về đi mình cập nhật bên trên rồi đấy.

    Trả lờiXóa
  12. sao cái lệnh LKD dùng không được vậy anh, anh nói thêm về cách làm một chút được ko?

    Trả lờiXóa
  13. Chào bạn! nình down về rồi nhưng giải nén sao mình không thấy file .dcl, .sld, .txt chỉ có mai file .dwg và một file lisp. Giúp mình với!

    Trả lờiXóa
  14. Đúng rồi lisp này chỉ sử dụng file dwg thôi. Bạn cứ làm như hường dẩn với file dwg này là được. (bài hướng dẩn là mình tổng hợp cho các trường hợp khác nửa)

    Trả lờiXóa
  15. Ban co the cho minh file toan bo phan trich xuat toa do cua ban duoc hon vay? Minh thu su dung LKD o tren ma khong co duoc. Cam on ban rat nhieu.Minh tu KSDDCN dang muon tu minh hoc hoi them ve cong tac trac dac nha cao tang. Neu duoc ban mail cho minh nhe : duongvienphuong@gmail.com

    Trả lờiXóa
  16. Anh Duy ơi!
    Trong lệnh LKD mình có thể chọn điểm đặt bảng được không ?
    Nếu có thì sửa dòng lệnh nào!
    Bên e làm tọa độ lớn nên khi zoom rất khó nhìn
    Cảm ơn anh đã quan tâm !

    Trả lờiXóa
  17. Em tên là Nguyễn Hữu Phúc
    em làm nghề trắc địa
    email: vn.huuphuc@gmail.com
    Em có một vấn đề khó giải quyết cần anh giúp, mong anh nhiệt tinh giúp đỡ
    Anh lam ơn viết giúp em lisp xuất toạ độ từ bản cad với nội dung như sau:
    Người ta cho em 4 điểm toạ độ ở 4 góc 1(X1,Y1), 2(X2,Y2), 3(X3,Y3), 4(X4,Y4), người ta yêu cầu em nối 1 với 2, 3 với 4, 1 với 3, 2 với 4. Từ đoạn thẳng 1-2 ofset về phía đoạn thẳng 3-4 với khoảng cách cho trước (ví dụ 50m). Có thể tới hàng nghìn đoạn thẳng. Từ đoạn thẳng 1-3 ofset vè hướng 2-4 khoảng cách cho trước (VD : 500m), có hàng trăm đoạn thẳng như vậy.
    Yêu cầu xuất toạ độ tất cả các điểm của 2 đầu đoạn thẳng thành 2 file riêng biệt, định dạng tuỳ chọn có thể text txt, exel...
    Đây là file mẫu của em đã xuất nhưng thủ công hơi lâu
    http://www.mediafire.com/folder/rbe84ketm6ms7/ban_vetk
    mong anh nhiệt tinh giúp đỡ, Cảm ơn anh!

    Trả lờiXóa
  18. Chào bạn, đây là lần đầu tiên m sử dung lisp, bạn có thể hướng dẫn m cụ thể hơn không, m copy các file như trong hướng dẫn, nhưng gõ lệnh XTD, XDT, LKD không được.

    Trả lờiXóa
  19. Bác đang làm việc ở đâu đó, nếu ở Châu Ổ mình giao lưu nhé, mình hay vào đó công tác

    Trả lờiXóa
  20. Hẹ hẹ Châu Ổ là quê dạo này ít về. Mình đang sống và làm việc ở TP Quảng Ngãi

    Trả lờiXóa

Khi viết nhận xét mong bạn không đứng vai trò nặc danh! Bạn có thể chọn Name/Url trong đó Url là http://duy782006.blogspot.com/ như vậy hay hơn nặc danh bạn nhé.