Đến nội dung


Hình ảnh
- - - - -

Nhờ viết lisp: vẽ hình của các tọa độ nhập và xuất ra bảng thông tin


  • Please log in to reply
4 replies to this topic

#1 phuongtran613

phuongtran613

    biết zoom

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

Đã gửi 23 April 2012 - 02:04 PM

Nhờ các cao thủ viết dùm em lisp vẽ các đường thẳng nối các tọa độ mình nhập vào máy (trục x và y), sau khi hoàn tất thì xuất ra bảng thông tin các tọa độ đó.
Cụ thể như sau: ở bản vẽ mặt bằng, sau khi đánh lệnh thì lisp sẽ yêu cầu chọn vị trí gốc 0,0, sau đó lisp sẽ yêu cầu nhập tọa độ các điểm 1-2-3,... khi đến điểm cuối cùng thì mình sẽ nhấn phím "C" để nối kín hình. Sau khi vẽ xong hình thì lisp sẽ xuất ra 1 bảng tổng hợp các tọa độ mình đã nhập. Nếu mà mình muốn điều chỉnh vị trí của 1 điểm thì có thể điều chỉnh tọa độ trục x hoặc y trong bảng tổng hợp này.
Mong các bác cao thủ giúp đỡ.
Cảm ơn
  • 0

#2 dunguss3581

dunguss3581

    biết lệnh rotate

  • Advance Member
  • PipPipPip
  • 139 Bài viết
Điểm đánh giá: 5 (bình thường)

Đã gửi 23 April 2012 - 02:25 PM

(defun c:btd ()
(princ "\dai ca van dung")
(Command "-osnap" "")
(command "style" "textbangtoado" ".Vnarial narrowH" 0.5 "" "" "n" "n")
(setq
diemgoc (getpoint "\n chän ®iÓm chÌn b¶ng")
sodiem (getint "\n sè l­îng ®iÓm cÇn xuÊt")
)
(setq
x (car diemgoc)
y (cadr diemgoc)
z (caddr diemgoc)
)

(setq soline (+ sodiem 2))
(setq caobang (+ soline 0))
(setq y1(- y 1))
(setq y2(- y caobang))
(setq diemchan1 (list x y1 x))
(setq diemchan2 (list x y2 z))
(command "line" diemgoc "@14<0" "")
(repeat soline
(command "copy" "L" "" diemgoc "@1<-90")
)
(command "line" diemchan1 diemchan2 "")
(command "copy" "L" "" diemgoc "@1<0")
(command "copy" "L" "" diemgoc "@2<0")
(command "copy" "L" "" diemgoc "@4<0")
(command "copy" "L" "" diemgoc "@4<0")
(command "copy" "L" "" diemgoc "@3<0")
(command "line" diemgoc diemchan1 "")
(command "copy" "L" "" diemgoc "@14<0")
; ghi ten bang
(setq xtenbang (+ x 7))
(setq ytenbang (- y 0.5))
(setq tenbang (list xtenbang ytenbang 0))
(command "text" "j" "mc" tenbang 0 "B&#182;ng To&#185; &#174;&#233;" "")
; ghi stt
(setq xstt (+ x 0.5))
(setq ystt (- y 1.5))
(setq stt (list xstt ystt 0))
(command "text" "j" "mc" stt 0 "TT" "")
; ghi TEN DIEM
(setq tendiem (polar stt 0 1.5))
(command "text" "j" "mc" tendiem 0 "T&#170;n" "")
; ghi X
(setq textx (polar stt 0 4.5))
(command "text" "j" "mc" textx 0 "x" "")
; ghi Y
(setq texty (polar stt 0 8.5))
(command "text" "j" "mc" texty 0 "y" "")
; ghi z
(setq textz (polar stt 0 12))
(command "text" "j" "mc" textz 0 "z" "")
; DA VE XOONG BANG
; ******************
(setq i 0)
(repeat sodiem
(command "_osnap" "Node")
(setq point(getpoint "\nCh&#228;n &#174;i&#211;m c&#199;n xu&#202;t to&#185; &#174;&#233;"))
(setq ten(getstring "\n Nh&#203;p t&#170;n &#174;i&#211;m"))
(setq i (1+ i))
(setq gocquay (/ (* 3 pi) 2))
(setq textstt (polar stt gocquay i)
texttendiem (polar textstt 0 1.5)
textpointx (polar textstt 0 4.5)
textpointy (polar textstt 0 8.5)
textpointz (polar textstt 0 12)
)
(setq
xpoint (rtos (car point))
ypoint (rtos (cadr point))
zpoint (rtos (caddr point))
)
(Command "-osnap" "")
(command "text" "j" "mc" textstt 0 i "")
(command "text" "j" "mc" texttendiem 0 ten "")
(command "text" "j" "mc" textpointx 0 ypoint "")
(command "text" "j" "mc" textpointy 0 xpoint "")
(command "text" "j" "mc" textpointz 0 zpoint "")
)
;(repeat sodiem
;(setq ssp (getpoint))
; (setq ent (ssname ssp i)
; i (1+ i)
; p (cdr (assoc 10 (entget ent)))
; x (car p)
; y (cadr p)
; z (caddr p)
; )

;(setq linegoc (ssget "L"))
)

  • 0

#3 ketxu

ketxu

    Copier - Paster - Editor

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

Đã gửi 23 April 2012 - 02:43 PM

Cái bạn yêu cầu = Lệnh Pline + lisp xuất tọa độ đã có trong diễn đàn. Theo chiều ngược lại thì lại có thể dùng lệnh Pline kết hợp với thủ thuật Excel.
Dù sao thì bài viết của bạn cũng vi phạm nội quy về tiêu đề, mong bạn đọc lại ở dưới chữ ký của mình - và rút kinh nghiệm lần sau
  • 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 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 23 April 2012 - 03:04 PM


(princ "\dai ca van dung")

Hề hề hề,
Còn cái vụ link các số liệu trong bảng với điểm ngoài bản vẽ thì sao "dai ca" hè????
Cái dòng code trên đây của dại ca có vẻ như chưa đúng ý đồ của dai ca thì phải?????
  • 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 dunguss3581

dunguss3581

    biết lệnh rotate

  • Advance Member
  • PipPipPip
  • 139 Bài viết
Điểm đánh giá: 5 (bình thường)

Đã gửi 23 April 2012 - 03:17 PM

Hề hề hề,
Còn cái vụ link các số liệu trong bảng với điểm ngoài bản vẽ thì sao "dai ca" hè????
Cái dòng code trên đây của dại ca có vẻ như chưa đúng ý đồ của dai ca thì phải?????

hi...
sẵn có lisp tui viêt lâu rồi để làm KHảo sát xây dựng thui mà.
  • 0