Đến nội dung


Hình ảnh
- - - - -

[Yêu cầu] Lisp đếm đối tượng Mtext lập thành bảng


  • Please log in to reply
19 replies to this topic

#1 PHAMDUNG77

PHAMDUNG77

    biết zoom

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

Đã gửi 14 December 2011 - 09:10 AM

Chào các anh trên diễn đàn!
Vừa rùi e có post bài lên nhưng sai nội quy nay e post lại sau:
Em có 1 vd sau: http://www.cadviet.c..._mtext_bv_3.dwg

Yêu cầu viết lisp sau:
-Bước 1 :pick chọn những đối tượng trong vùng chứa Mtext.
-Bước 2 :chọn chiều cao chữ.
-Bước 3 :chọn điểm xuất bảng thống kê.
Thanh!
  • 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 14 December 2011 - 11:54 AM

Chào các anh trên diễn đàn!
Vừa rùi e có post bài lên nhưng sai nội quy nay e post lại sau:
Em có 1 vd sau: http://www.cadviet.c..._mtext_bv_3.dwg

Yêu cầu viết lisp sau:
-Bước 1 :pick chọn những đối tượng trong vùng chứa Mtext.
-Bước 2 :chọn chiều cao chữ.
-Bước 3 :chọn điểm xuất bảng thống kê.
Thanh!

Hề hề hề,
Vậy là bạn đã tiếp thu và làm lại cho đúng quy định của diễn đàn, Tuy nhiên bạn chư hiểu rõ nên bài post của bạn không đọc được vì bạn nhét nó vào trong thẻ code. Thẻ này chỉ có tác dụng khi bạn post code chương trình chứ không có tác dụng khi bạn post các văn bản tiếng Việt. Lần này mình giúp bạn sửa lại để mọi người dễ đọc và hiểu yêu cầu của bạ. Lần sau mong bạn lưu ý hơn nhé.
về yêu cầu của bạn đưa ra không quá khó nhưng vẫn cần bạn giải thích rõ hơn vì mình thấy trong bản vẽ bạn post, các mtext bạn cần thống kê có chiều cao khác nhau bạn ạ.
Như vậy bạn muốn chọn chiều cao text theo kiểu nào??? Nếu co phương án chọn khác không dựa vào chiều cao text mà vẫn lấy được các text bạn cần thì có dùng được không????
Kích thước text trong bảng thống kê là do bạn tự chọn hay là cứ đúng như bản vẽ bạn post là OK ?? (vì kích thước này khác với kích thước nghuyên thủy của nó.)
Bạn sử dụng các text ở các lớp khác nhau, vậy khi thống kê vào bảng bạn có muốn giũ nguyên các lớp của nó không hay muốn để nó ở lớp nào cũng được???

Làm lisp ngay cho bạn không khó nhưng sợ rằng bạn sẽ chả dùng nó vì không đúng với yêu cầu của bạn và như thế thì vô nghĩa lắm. Bạn hãy chịu khó trình bày kỹ hơn cái yêu cầu của bạn để người làm lisp khỏi phải mất công bạn 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 PHAMDUNG77

PHAMDUNG77

    biết zoom

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

Đã gửi 14 December 2011 - 02:07 PM

Hề hề hề,
Vậy là bạn đã tiếp thu và làm lại cho đúng quy định của diễn đàn, Tuy nhiên bạn chư hiểu rõ nên bài post của bạn không đọc được vì bạn nhét nó vào trong thẻ code. Thẻ này chỉ có tác dụng khi bạn post code chương trình chứ không có tác dụng khi bạn post các văn bản tiếng Việt. Lần này mình giúp bạn sửa lại để mọi người dễ đọc và hiểu yêu cầu của bạ. Lần sau mong bạn lưu ý hơn nhé.
về yêu cầu của bạn đưa ra không quá khó nhưng vẫn cần bạn giải thích rõ hơn vì mình thấy trong bản vẽ bạn post, các mtext bạn cần thống kê có chiều cao khác nhau bạn ạ.
Như vậy bạn muốn chọn chiều cao text theo kiểu nào??? Nếu co phương án chọn khác không dựa vào chiều cao text mà vẫn lấy được các text bạn cần thì có dùng được không????
Kích thước text trong bảng thống kê là do bạn tự chọn hay là cứ đúng như bản vẽ bạn post là OK ?? (vì kích thước này khác với kích thước nghuyên thủy của nó.)
Bạn sử dụng các text ở các lớp khác nhau, vậy khi thống kê vào bảng bạn có muốn giũ nguyên các lớp của nó không hay muốn để nó ở lớp nào cũng được???

Làm lisp ngay cho bạn không khó nhưng sợ rằng bạn sẽ chả dùng nó vì không đúng với yêu cầu của bạn và như thế thì vô nghĩa lắm. Bạn hãy chịu khó trình bày kỹ hơn cái yêu cầu của bạn để người làm lisp khỏi phải mất công bạn nhé.


Hề hề hề,
Vậy là bạn đã tiếp thu và làm lại cho đúng quy định của diễn đàn, Tuy nhiên bạn chư hiểu rõ nên bài post của bạn không đọc được vì bạn nhét nó vào trong thẻ code. Thẻ này chỉ có tác dụng khi bạn post code chương trình chứ không có tác dụng khi bạn post các văn bản tiếng Việt. Lần này mình giúp bạn sửa lại để mọi người dễ đọc và hiểu yêu cầu của bạ. Lần sau mong bạn lưu ý hơn nhé.
về yêu cầu của bạn đưa ra không quá khó nhưng vẫn cần bạn giải thích rõ hơn vì mình thấy trong bản vẽ bạn post, các mtext bạn cần thống kê có chiều cao khác nhau bạn ạ.
Như vậy bạn muốn chọn chiều cao text theo kiểu nào??? Nếu co phương án chọn khác không dựa vào chiều cao text mà vẫn lấy được các text bạn cần thì có dùng được không????
Kích thước text trong bảng thống kê là do bạn tự chọn hay là cứ đúng như bản vẽ bạn post là OK ?? (vì kích thước này khác với kích thước nghuyên thủy của nó.)
Bạn sử dụng các text ở các lớp khác nhau, vậy khi thống kê vào bảng bạn có muốn giũ nguyên các lớp của nó không hay muốn để nó ở lớp nào cũng được???

Làm lisp ngay cho bạn không khó nhưng sợ rằng bạn sẽ chả dùng nó vì không đúng với yêu cầu của bạn và như thế thì vô nghĩa lắm. Bạn hãy chịu khó trình bày kỹ hơn cái yêu cầu của bạn để người làm lisp khỏi phải mất công bạn nhé.

Hi hi...e bị anh phamthanhbinh bắt đúng bệnh rùi.
Một lần nữa xin cảm ơn a.
Về yêu cầu lisp của e xin giải thích sau:
Bước 1: mình đánh dòng lệnh để chọn các Mtext trong phạm vi nhiều bản vẽ đã có.
Bước 2: chọn các đối tượng Mtext trong phạm vi nhiều bv (1 bv có 2 đối tượng Mtext mang 2 layer khác nhau: TEN BAN VE và STT BAN VE).bước này kô cần chọn chiều cao mtext mà chỉ chọn đối tượng bằng layer.
Bước 3: Xuất ra bảng thống kê:
-Người dùng tự chọn chiều cao chữ của bảng thống kê không tùy thuộc vào chiều cao Mtetx cũ.
-Thống kê vào bảng để các text ở các lớp nào cũng được.
http://www.cadviet.c..._mtext_bv_4.dwg
  • 0

#4 PHAMDUNG77

PHAMDUNG77

    biết zoom

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

Đã gửi 14 December 2011 - 02:13 PM

e gửi lại file cad sau:
http://www.cadviet.c...9_dem_mtext.dwg
  • 0

#5 ketxu

ketxu

    Copier - Paster - Editor

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

Đã gửi 14 December 2011 - 10:32 PM

Ví dụ, bạn xem có xài được không ? Sử dụng table style hiện hành, Text cao thấp , font gì ntn là do bạn định dạng table. Lúc tạo bảng xong bạn có thể kéo cái bảng dài rộng cho thoải mái
Lệnh BTK
Close Source ^^
http://www.cadviet.c...24067_btk_1.rar
  • 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


#6 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 15 December 2011 - 03:03 AM

e gửi lại file cad sau: http://www.cadviet.c...9_dem_mtext.dwg

hề hề hề,
Bạn dùng thử cái này coi sao nhé.


(defun c:mtxtc ()
(command "undo" "be" )
(setq oldos (getvar "osmode" ) )
(setvar "osmode" 0 )
(alert "\n Chon cac vung khung ten tung ban ve" )
(setq ssmt (ssget (list (cons 0 "*text") (cons 8 "TEN BAN VE,STT BAN VE" )))
n (sslength ssmt) i 0 lst1 (list) lst2 (list) )
(while (< i n)
(setq e (ssname ssmt i))
(if (= (cdr (assoc 8 (entget e))) "TEN BAN VE")
(setq lst1 (append lst1 (list (cdr (assoc 1 (entget e))))))
(setq lst2 (append lst2 (list (cdr (assoc 1 (entget e))))))
)
(setq i (1+ i))
)
(styleset)
(setq h (getreal "\n Nhap chieu cao text trong bang: ")
p (getpoint "\n Chon diem dat bang " ) )
(command "line" p (setq p1 (polar p 0 (* 40 h))) (setq p2 (polar p1 (* 1.5 pi) (* (1+ (/ n 2)) 3 h))) (setq p3 (polar p2 pi (* 40 h))) "c" )
(command "line" (setq p5 (Polar p 0 (* 5 h))) (polar p5 (* 1.5 pi) (* (1+ (/ n 2)) 3 h)) "" )
(command "line" (setq p6 (Polar p 0 (* 33 h))) (polar p6 (* 1.5 pi) (* (1+ (/ n 2)) 3 h)) "" )
(command "text" "j" "mc" (list (+ (car p) (* 2.5 h)) (- (cadr p) (* 1.5 h))) h 0 "STT" )
(command "text" "j" "mc" (list (+ (car p) (* 19 h)) (- (cadr p) (* 1.5 h))) h 0 "T&#202;N B\\U+1EA2N V\\U+1EBC" )
(command "text" "j" "mc" (list (+ (car p) (* 36.5 h)) (- (cadr p) (* 1.5 h))) h 0 "K&#205; HI\\U+1EC6U")
(setq j 1)
(repeat (/ n 2)
(command "line" (setq p0 (polar p (* 1.5 pi) (* j 3 h))) (polar p0 0 (* 40 h)) "" )
(command "text" "j" "mc" (list (+ (car p0) (* 2.5 h)) (- (cadr p0) (* 1.5 h))) h 0 (rtos j 2 0))
(command "text" "j" "mc" (list (+ (car p0) (* 19 h)) (- (cadr p0) (* 1.5 h))) h 0 (nth (1- j) lst1))
(command "text" "j" "mc" (list (+ (car p0) (* 36.5 h)) (- (cadr p0) (* 1.5 h))) h 0 (nth (1- j) lst2))
(setq j (1+ j))
)
(setvar "osmode" oldos)
(command "undo" "e" )
(princ)
)

(defun styleset ()
(setq stl (getvar "textstyle")
h (getvar "textsize"))
(if (/= h 0) (command "style" stl "" 0 "" "" "" "" ""))
)

Bài viết đã được chỉnh sửa nội dung bởi phamthanhbinh: 15 December 2011 - 01:30 PM
Sửa lại lỗi do code box

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

#7 PHAMDUNG77

PHAMDUNG77

    biết zoom

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

Đã gửi 15 December 2011 - 08:19 AM

<p></p>
<p>hề hề hề,</p>
<p>Bạn dùng thử cái này coi sao nhé.</p>
<p>

</p>
<p> </p>
<div>(defun c:mtxtc ()</div>
<div>(command &quot;undo&quot; &quot;be&quot; )</div>
<div>(setq oldos (getvar &quot;osmode&quot; ) )</div>
<div>(setvar &quot;osmode&quot; 0 )</div>
<div>(alert &quot;\n Chon cac vung khung ten tung ban ve&quot; )</div>
<div>(setq ssmt (ssget (list (cons 0 &quot;*text&quot;) (cons 8 &quot;TEN BAN VE,STT BAN VE&quot; )))</div>
<div> n (sslength ssmt) i 0 lst1 (list) lst2 (list) )</div>
<div>(while (&lt; i n)</div>
<div> (setq e (ssname ssmt i))</div>
<div> (if (= (cdr (assoc 8 (entget e))) &quot;TEN BAN VE&quot;)</div>
<div> (setq lst1 (append lst1 (list (cdr (assoc 1 (entget e))))))</div>
<div> (setq lst2 (append lst2 (list (cdr (assoc 1 (entget e))))))</div>
<div> )</div>
<div> (setq i (1+ i))</div>
<div>)</div>
<div>(styleset)</div>
<div>(setq h (getreal &quot;\n Nhap chieu cao text trong bang: &quot;)</div>
<div> p (getpoint &quot;\n Chon diem dat bang &quot; ) )</div>
<div>(command &quot;line&quot; p (setq p1 (polar p 0 (* 40 h))) (setq p2 (polar p1 (* 1.5 pi) (* (1+ (/ n 2)) 3 h))) (setq p3 (polar p2 pi (* 40 h))) &quot;c&quot; )</div>
<div>(command &quot;line&quot; (setq p5 (Polar p 0 (* 5 h))) (polar p5 (* 1.5 pi) (* (1+ (/ n 2)) 3 h)) &quot;&quot; )</div>
<div>(command &quot;line&quot; (setq p6 (Polar p 0 (* 33 h))) (polar p6 (* 1.5 pi) (* (1+ (/ n 2)) 3 h)) &quot;&quot; )</div>
<div>(command &quot;text&quot; &quot;j&quot; &quot;mc&quot; (list (+ (car p) (* 2.5 h)) (- (cadr p) (* 1.5 h))) h 0 &quot;STT&quot; )</div>
<div>(command &quot;text&quot; &quot;j&quot; &quot;mc&quot; (list (+ (car p) (* 19 h)) (- (cadr p) (* 1.5 h))) h 0 &quot;T&#202;N B\\U+1EA2N V\\U+1EBC&quot; )</div>
<div>(command &quot;text&quot; &quot;j&quot; &quot;mc&quot; (list (+ (car p) (* 36.5 h)) (- (cadr p) (* 1.5 h))) h 0 &quot;K&#205; HI\\U+1EC6U&quot;)</div>
<div>(setq j 1)</div>
<div>(repeat (/ n 2)</div>
<div> (command &quot;line&quot; (setq p0 (polar p (* 1.5 pi) (* j 3 h))) (polar p0 0 (* 40 h)) &quot;&quot; ) </div>
<div> (command &quot;text&quot; &quot;j&quot; &quot;mc&quot; (list (+ (car p0) (* 2.5 h)) (- (cadr p0) (* 1.5 h))) h 0 (rtos j 2 0))</div>
<div> (command &quot;text&quot; &quot;j&quot; &quot;mc&quot; (list (+ (car p0) (* 19 h)) (- (cadr p0) (* 1.5 h))) h 0 (nth (1- j) lst1))</div>
<div> (command &quot;text&quot; &quot;j&quot; &quot;mc&quot; (list (+ (car p0) (* 36.5 h)) (- (cadr p0) (* 1.5 h))) h 0 (nth (1- j) lst2))</div>
<div> (setq j (1+ j))</div>
<div>)</div>
<div>(setvar &quot;osmode&quot; oldos)</div>
<div>(command &quot;undo&quot; &quot;e&quot; )</div>
<div>(princ)</div>
<div>) </div>
<div> </div>
<div>(defun styleset ()</div>
<div>(setq stl (getvar &quot;textstyle&quot;)</div>
<div> h (getvar &quot;textsize&quot;))</div>
<div>(if (/= h 0) (command &quot;style&quot; stl &quot;&quot; 0 &quot;&quot; &quot;&quot; &quot;&quot; &quot;&quot; &quot;&quot;))</div>
<div>) </div>
<div>
</div>


<p></p>
<p>hề hề hề,</p>
<p>Bạn dùng thử cái này coi sao nhé.</p>
<p>

</p>
<p> </p>
<div>(defun c:mtxtc ()</div>
<div>(command &quot;undo&quot; &quot;be&quot; )</div>
<div>(setq oldos (getvar &quot;osmode&quot; ) )</div>
<div>(setvar &quot;osmode&quot; 0 )</div>
<div>(alert &quot;\n Chon cac vung khung ten tung ban ve&quot; )</div>
<div>(setq ssmt (ssget (list (cons 0 &quot;*text&quot;) (cons 8 &quot;TEN BAN VE,STT BAN VE&quot; )))</div>
<div> n (sslength ssmt) i 0 lst1 (list) lst2 (list) )</div>
<div>(while (&lt; i n)</div>
<div> (setq e (ssname ssmt i))</div>
<div> (if (= (cdr (assoc 8 (entget e))) &quot;TEN BAN VE&quot;)</div>
<div> (setq lst1 (append lst1 (list (cdr (assoc 1 (entget e))))))</div>
<div> (setq lst2 (append lst2 (list (cdr (assoc 1 (entget e))))))</div>
<div> )</div>
<div> (setq i (1+ i))</div>
<div>)</div>
<div>(styleset)</div>
<div>(setq h (getreal &quot;\n Nhap chieu cao text trong bang: &quot;)</div>
<div> p (getpoint &quot;\n Chon diem dat bang &quot; ) )</div>
<div>(command &quot;line&quot; p (setq p1 (polar p 0 (* 40 h))) (setq p2 (polar p1 (* 1.5 pi) (* (1+ (/ n 2)) 3 h))) (setq p3 (polar p2 pi (* 40 h))) &quot;c&quot; )</div>
<div>(command &quot;line&quot; (setq p5 (Polar p 0 (* 5 h))) (polar p5 (* 1.5 pi) (* (1+ (/ n 2)) 3 h)) &quot;&quot; )</div>
<div>(command &quot;line&quot; (setq p6 (Polar p 0 (* 33 h))) (polar p6 (* 1.5 pi) (* (1+ (/ n 2)) 3 h)) &quot;&quot; )</div>
<div>(command &quot;text&quot; &quot;j&quot; &quot;mc&quot; (list (+ (car p) (* 2.5 h)) (- (cadr p) (* 1.5 h))) h 0 &quot;STT&quot; )</div>
<div>(command &quot;text&quot; &quot;j&quot; &quot;mc&quot; (list (+ (car p) (* 19 h)) (- (cadr p) (* 1.5 h))) h 0 &quot;T&#202;N B\\U+1EA2N V\\U+1EBC&quot; )</div>
<div>(command &quot;text&quot; &quot;j&quot; &quot;mc&quot; (list (+ (car p) (* 36.5 h)) (- (cadr p) (* 1.5 h))) h 0 &quot;K&#205; HI\\U+1EC6U&quot;)</div>
<div>(setq j 1)</div>
<div>(repeat (/ n 2)</div>
<div> (command &quot;line&quot; (setq p0 (polar p (* 1.5 pi) (* j 3 h))) (polar p0 0 (* 40 h)) &quot;&quot; ) </div>
<div> (command &quot;text&quot; &quot;j&quot; &quot;mc&quot; (list (+ (car p0) (* 2.5 h)) (- (cadr p0) (* 1.5 h))) h 0 (rtos j 2 0))</div>
<div> (command &quot;text&quot; &quot;j&quot; &quot;mc&quot; (list (+ (car p0) (* 19 h)) (- (cadr p0) (* 1.5 h))) h 0 (nth (1- j) lst1))</div>
<div> (command &quot;text&quot; &quot;j&quot; &quot;mc&quot; (list (+ (car p0) (* 36.5 h)) (- (cadr p0) (* 1.5 h))) h 0 (nth (1- j) lst2))</div>
<div> (setq j (1+ j))</div>
<div>)</div>
<div>(setvar &quot;osmode&quot; oldos)</div>
<div>(command &quot;undo&quot; &quot;e&quot; )</div>
<div>(princ)</div>
<div>) </div>
<div> </div>
<div>(defun styleset ()</div>
<div>(setq stl (getvar &quot;textstyle&quot;)</div>
<div> h (getvar &quot;textsize&quot;))</div>
<div>(if (/= h 0) (command &quot;style&quot; stl &quot;&quot; 0 &quot;&quot; &quot;&quot; &quot;&quot; &quot;&quot; &quot;&quot;))</div>
<div>) </div>
<div>
</div>

A phamthanhbinh thức sáng đêm viết lisp cho e ha.
E không biết cảm ơn a phamthanhbinh như thế nào đây.
Khi nào có dịp a vô đà nẵng a,e mình làm một chầu nhé.
Ừ mà a sao lisp của a e download về rùi apload lên nhưng đánh dòng lệnh mtxtc thì chương trình cad lại kô nhận và báo F1 a.
A xem lại dùm cho e nhé.
  • 0

#8 quochuyksxd

quochuyksxd

    biết lệnh fillet

  • Members
  • PipPipPipPip
  • 201 Bài viết
Điểm đánh giá: 24 (tàm tạm)

Đã gửi 15 December 2011 - 08:31 AM

<p></p>
<p>hề hề hề,</p>
<p>Bạn dùng thử cái này coi sao nhé.</p>
<p>

</p>
<p> </p>
<div>(defun c:mtxtc ()</div>
<div>(command &quot;undo&quot; &quot;be&quot; )</div>
<div>(setq oldos (getvar &quot;osmode&quot; ) )</div>
<div>(setvar &quot;osmode&quot; 0 )</div>
<div>(alert &quot;\n Chon cac vung khung ten tung ban ve&quot; )</div>
<div>(setq ssmt (ssget (list (cons 0 &quot;*text&quot;) (cons 8 &quot;TEN BAN VE,STT BAN VE&quot; )))</div>
<div> n (sslength ssmt) i 0 lst1 (list) lst2 (list) )</div>
<div>(while (&lt; i n)</div>
<div> (setq e (ssname ssmt i))</div>
<div> (if (= (cdr (assoc 8 (entget e))) &quot;TEN BAN VE&quot;)</div>
<div> (setq lst1 (append lst1 (list (cdr (assoc 1 (entget e))))))</div>
<div> (setq lst2 (append lst2 (list (cdr (assoc 1 (entget e))))))</div>
<div> )</div>
<div> (setq i (1+ i))</div>
<div>)</div>
<div>(styleset)</div>
<div>(setq h (getreal &quot;\n Nhap chieu cao text trong bang: &quot;)</div>
<div> p (getpoint &quot;\n Chon diem dat bang &quot; ) )</div>
<div>(command &quot;line&quot; p (setq p1 (polar p 0 (* 40 h))) (setq p2 (polar p1 (* 1.5 pi) (* (1+ (/ n 2)) 3 h))) (setq p3 (polar p2 pi (* 40 h))) &quot;c&quot; )</div>
<div>(command &quot;line&quot; (setq p5 (Polar p 0 (* 5 h))) (polar p5 (* 1.5 pi) (* (1+ (/ n 2)) 3 h)) &quot;&quot; )</div>
<div>(command &quot;line&quot; (setq p6 (Polar p 0 (* 33 h))) (polar p6 (* 1.5 pi) (* (1+ (/ n 2)) 3 h)) &quot;&quot; )</div>
<div>(command &quot;text&quot; &quot;j&quot; &quot;mc&quot; (list (+ (car p) (* 2.5 h)) (- (cadr p) (* 1.5 h))) h 0 &quot;STT&quot; )</div>
<div>(command &quot;text&quot; &quot;j&quot; &quot;mc&quot; (list (+ (car p) (* 19 h)) (- (cadr p) (* 1.5 h))) h 0 &quot;T&#202;N B\\U+1EA2N V\\U+1EBC&quot; )</div>
<div>(command &quot;text&quot; &quot;j&quot; &quot;mc&quot; (list (+ (car p) (* 36.5 h)) (- (cadr p) (* 1.5 h))) h 0 &quot;K&#205; HI\\U+1EC6U&quot;)</div>
<div>(setq j 1)</div>
<div>(repeat (/ n 2)</div>
<div> (command &quot;line&quot; (setq p0 (polar p (* 1.5 pi) (* j 3 h))) (polar p0 0 (* 40 h)) &quot;&quot; ) </div>
<div> (command &quot;text&quot; &quot;j&quot; &quot;mc&quot; (list (+ (car p0) (* 2.5 h)) (- (cadr p0) (* 1.5 h))) h 0 (rtos j 2 0))</div>
<div> (command &quot;text&quot; &quot;j&quot; &quot;mc&quot; (list (+ (car p0) (* 19 h)) (- (cadr p0) (* 1.5 h))) h 0 (nth (1- j) lst1))</div>
<div> (command &quot;text&quot; &quot;j&quot; &quot;mc&quot; (list (+ (car p0) (* 36.5 h)) (- (cadr p0) (* 1.5 h))) h 0 (nth (1- j) lst2))</div>
<div> (setq j (1+ j))</div>
<div>)</div>
<div>(setvar &quot;osmode&quot; oldos)</div>
<div>(command &quot;undo&quot; &quot;e&quot; )</div>
<div>(princ)</div>
<div>) </div>
<div> </div>
<div>(defun styleset ()</div>
<div>(setq stl (getvar &quot;textstyle&quot;)</div>
<div> h (getvar &quot;textsize&quot;))</div>
<div>(if (/= h 0) (command &quot;style&quot; stl &quot;&quot; 0 &quot;&quot; &quot;&quot; &quot;&quot; &quot;&quot; &quot;&quot;))</div>
<div>) </div>
<div>
</div>

Đã load về và không sử dụng được bạn ah
  • 0

#9 ketxu

ketxu

    Copier - Paster - Editor

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

Đã gửi 15 December 2011 - 08:39 AM

Tag code đang bị lỗi, bác Bình vứt vô Quote tạm cho người ta kéo về vậy ^^
  • 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


#10 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

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

Đã gửi 15 December 2011 - 08:47 AM



A phamthanhbinh thức sáng đêm viết lisp cho e ha.
E không biết cảm ơn a phamthanhbinh như thế nào đây.
Khi nào có dịp a vô đà nẵng a,e mình làm một chầu nhé.
Ừ mà a sao lisp của a e download về rùi apload lên nhưng đánh dòng lệnh mtxtc thì chương trình cad lại kô nhận và báo F1 a.
A xem lại dùm cho e nhé.


Do khi bác PTB up lên thì CadViet bị lỗi. Tôi sửa giùm cho bạn đây.
Bác PTB thức đến hơn 3h sáng để viết cho bạn, nên ngoài thanks+bia bạn cần nhấn nút "Like This" cho bác ấy đi nhé!

;; free lisp from cadviet.com
;;; this lisp was downloaded from [url="http://www.cadviet.com/forum/index.php?showtopic=61182"]http://www.cadviet.c...showtopic=61182[/url]
(defun c:mtxtc ()
(command "undo" "be" )
(setq oldos (getvar "osmode" ))
(setvar "osmode" 0 )
(alert "\n Chon cac vung khung ten tung ban ve" )
(setq ssmt (ssget (list (cons 0 "*text") (cons 8 "TEN BAN VE,STT BAN VE" )))
n (sslength ssmt) i 0 lst1 (list) lst2 (list))
(while (< i n)
(setq e (ssname ssmt i))
(if (= (cdr (assoc 8 (entget e))) "TEN BAN VE")
(setq lst1 (append lst1 (list (cdr (assoc 1 (entget e))))))
(setq lst2 (append lst2 (list (cdr (assoc 1 (entget e)))))))
(setq i (1+ i)))
(styleset)
(setq h (getreal "\n Nhap chieu cao text trong bang: ")
p (getpoint "\n Chon diem dat bang " ))
(command "line" p (setq p1 (polar p 0 (* 40 h))) (setq p2 (polar p1 (* 1.5 pi) (* (1+ (/ n 2)) 3 h))) (setq p3 (polar p2 pi (* 40 h))) "c" )
(command "line" (setq p5 (Polar p 0 (* 5 h))) (polar p5 (* 1.5 pi) (* (1+ (/ n 2)) 3 h)) "" )
(command "line" (setq p6 (Polar p 0 (* 33 h))) (polar p6 (* 1.5 pi) (* (1+ (/ n 2)) 3 h)) "" )
(command "text" "j" "mc" (list (+ (car p) (* 2.5 h)) (- (cadr p) (* 1.5 h))) h 0 "STT" )
(command "text" "j" "mc" (list (+ (car p) (* 19 h)) (- (cadr p) (* 1.5 h))) h 0 "T\U+00CAN B\U+1EA2N V\U+1EBC" )
(command "text" "j" "mc" (list (+ (car p) (* 36.5 h)) (- (cadr p) (* 1.5 h))) h 0 "S\U+1ED0 HI\U+1EC6U")
(setq j 1)
(repeat (/ n 2)
(command "line" (setq p0 (polar p (* 1.5 pi) (* j 3 h))) (polar p0 0 (* 40 h)) "" )
(command "text" "j" "mc" (list (+ (car p0) (* 2.5 h)) (- (cadr p0) (* 1.5 h))) h 0 (rtos j 2 0))
(command "text" "j" "mc" (list (+ (car p0) (* 19 h)) (- (cadr p0) (* 1.5 h))) h 0 (nth (1- j) lst1))
(command "text" "j" "mc" (list (+ (car p0) (* 36.5 h)) (- (cadr p0) (* 1.5 h))) h 0 (nth (1- j) lst2))
(setq j (1+ j)))
(setvar "osmode" oldos)
(command "undo" "e" )
(princ))
(defun styleset ()
(setq stl (getvar "textstyle")
h (getvar "textsize"))
(if (/= h 0) (command "style" stl "" 0 "" "" "" "" "")))

  • 3

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


#11 PHAMDUNG77

PHAMDUNG77

    biết zoom

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

Đã gửi 15 December 2011 - 09:01 AM

e dùng được rùi.
Một lần nữa Thanh! ban diễn đàn nhé!
Chúc diễn đàn ngày càng thành công!
  • 0

#12 kt.v2quang

kt.v2quang

    biết zoom

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

Đã gửi 15 December 2011 - 09:24 AM

có 1 điều mình đang ban khoan là:
1.Phải tạo layer giống như trong lisp là " TEN BAN VE, STT BAN VE", còn layer tên khác là không được. Nên viết lại các dòng nhắc lệnh như sau:
-kích chọn vùng thống kê:
-(nên thêm 1 đoạn lisp phía dưới)
-kích chọn layer có mtext tên bản vẽ:
-kích chọn layer có mtext số thứ tự bản vẽ:
-Kích chọn điểm xuất bảng thống kế: (cài này đã có)
2.Nên thêm 1 đoạn lisp như sau:
khi aray hoạc coppy nhiều khung tên, sau đó quét chọn vùng cần điền số thứ tự khung tên thì số thứ tự tự động nhảy
các dòng nhắc lệnh như sau:
-kích chọn vùng thống kê:
-chọn số bắt đầu điền số thứ tự bản vẽ:
3.nếu được như thế này thì quá tuyệt vời. cảm ơn mọi người đã có 1 ngày hạnh phúc trọn vẹn.
cảm ơn bạn phamthanhbinhDoan Van Ha
  • 0

#13 ketxu

ketxu

    Copier - Paster - Editor

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

Đã gửi 15 December 2011 - 10:53 AM

có 1 điều mình đang ban khoan là:
1.Phải tạo layer giống như trong lisp là " TEN BAN VE, STT BAN VE", còn layer tên khác là không được. Nên viết lại các dòng nhắc lệnh như sau:
-kích chọn vùng thống kê:
-(nên thêm 1 đoạn lisp phía dưới)
-kích chọn layer có mtext tên bản vẽ:
-kích chọn layer có mtext số thứ tự bản vẽ:
-Kích chọn điểm xuất bảng thống kế: (cài này đã có)
2.Nên thêm 1 đoạn lisp như sau:
khi aray hoạc coppy nhiều khung tên, sau đó quét chọn vùng cần điền số thứ tự khung tên thì số thứ tự tự động nhảy
các dòng nhắc lệnh như sau:
-kích chọn vùng thống kê:
-chọn số bắt đầu điền số thứ tự bản vẽ:
3.nếu được như thế này thì quá tuyệt vời. cảm ơn mọi người đã có 1 ngày hạnh phúc trọn vẹn.
cảm ơn bạn phamthanhbinhDoan Van Ha

Có vẻ yêu cầu ngày càng dài nhỉ :)
Xem lisp làm được tới đâu nào :
http://www.cadviet.c...24067_btk_2.rar

- BTK
- Chọn lần lượt 2 Text chứa TBV + Ký Hiệu
- Chọn điểm đặt BTK, chiều cao chữ, số bắt đầu đánh

Ghi chú : lisp lấy :
- TextStyle của text bạn chọn làm Style của bảng
- Sắp xếp bảng theo thứ tự tăng dần của Ký hiệu (bất kể thứ tự chọn). Trong trường hợp các Ký hiệu bản vẽ không có số để so sánh thì nó làm việc bình thường theo thứ tự chọn
- Lisp tạo bảng bằng Table, những đời CAD chưa có Table thì khỏi down ^^

- Ngoài ra tương lai có thể :
+ Gán Field để tự động cập nhật tên, số hiệu (như TKBV của bác gia_bach)
+ Cho phép nốt tiếp vào 1 bảng có sẵn ...
+....
+ => cuối năm rồi bỏ ngỏ đó th :D
  • 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


#14 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 15 December 2011 - 01:28 PM



A phamthanhbinh thức sáng đêm viết lisp cho e ha.
E không biết cảm ơn a phamthanhbinh như thế nào đây.
Khi nào có dịp a vô đà nẵng a,e mình làm một chầu nhé.
Ừ mà a sao lisp của a e download về rùi apload lên nhưng đánh dòng lệnh mtxtc thì chương trình cad lại kô nhận và báo F1 a.
A xem lại dùm cho e nhé.

Hề hề hề.
Lỗi có lẽ là do cái code box có vấn đề. khi làm xonng post lên là mình đi ng3 luôn chứ không kiểm tra lại.Xin lỗi mọi người để mình sửa lại 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.

#15 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 15 December 2011 - 01:37 PM

có 1 điều mình đang ban khoan là:
1.Phải tạo layer giống như trong lisp là " TEN BAN VE, STT BAN VE", còn layer tên khác là không được. Nên viết lại các dòng nhắc lệnh như sau:
-kích chọn vùng thống kê:
-(nên thêm 1 đoạn lisp phía dưới)
-kích chọn layer có mtext tên bản vẽ:
-kích chọn layer có mtext số thứ tự bản vẽ:
-Kích chọn điểm xuất bảng thống kế: (cài này đã có)
2.Nên thêm 1 đoạn lisp như sau:
khi aray hoạc coppy nhiều khung tên, sau đó quét chọn vùng cần điền số thứ tự khung tên thì số thứ tự tự động nhảy
các dòng nhắc lệnh như sau:
-kích chọn vùng thống kê:
-chọn số bắt đầu điền số thứ tự bản vẽ:
3.nếu được như thế này thì quá tuyệt vời. cảm ơn mọi người đã có 1 ngày hạnh phúc trọn vẹn.
cảm ơn bạn phamthanhbinhDoan Van Ha

Hề hề hề,
Thực ra nếut đưa ra yêu cầu này trước đó thì chắc cũng không quá khó để làm. Xong vì mình làm theo ý của người yêu cầu nên chưa trùng ý bạn, Mình sẽ tìm cách bổ sung sau 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.

#16 kt.v2quang

kt.v2quang

    biết zoom

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

Đã gửi 15 December 2011 - 03:50 PM

[Nhờ chỉnh sửa] nhờ mấy bác sửa dùm nhìn thế nhưng nhiều người dùng lắm. công việc tưởng chừng đơn giản nhưng quá mất công. Nhờ cai lisp này mà mấy anh em giảm bớt công sức để dành cho các công việc khác. Nếu viết theo ý của minh được thì quá tốt. Mong mọi người tham gia để kết thúc có 1 cái lisp hay, áp dụng thực thế hiều và hiệu quả.
  • 0

#17 ketxu

ketxu

    Copier - Paster - Editor

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

Đã gửi 15 December 2011 - 09:58 PM

[Nhờ chỉnh sửa] nhờ mấy bác sửa dùm nhìn thế nhưng nhiều người dùng lắm. công việc tưởng chừng đơn giản nhưng quá mất công. Nhờ cai lisp này mà mấy anh em giảm bớt công sức để dành cho các công việc khác. Nếu viết theo ý của minh được thì quá tốt. Mong mọi người tham gia để kết thúc có 1 cái lisp hay, áp dụng thực thế hiều và hiệu quả.

Có tham gia nhưng không thấy phản hồi >"<
Hy vọng sớm có kết quả phù hợp với ý bạn. Gluck Guys ^^
  • 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


#18 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 15 December 2011 - 10:21 PM

<strong>[Nhờ chỉnh sửa]</strong> nhờ mấy bác sửa dùm nhìn thế nhưng nhiều người dùng lắm. công việc tưởng chừng đơn giản nhưng quá mất công. Nhờ cai lisp này mà mấy anh em giảm bớt công sức để dành cho các công việc khác. Nếu viết theo ý của minh được thì quá tốt. Mong mọi người tham gia để kết thúc có 1 cái lisp hay, áp dụng thực thế hiều và hiệu quả.

Hề hề hề,
Không biết cái này đã thỏa mãn yêu cầu của bạn hay chưa, song mình cứ post lên để hy vọng có thêm sự chỉ bảo của các bác khác. Cái này có khác một chút với cái truớc ở chỗ chỉ cần quét chọn toàn bộ các bản vẽ một lần chứ không phải chọn mỗi bản vẽ một lần theo thứ tự. Tuy nhiên do không thấy có yêu cầu nên mình không sắp xếp lại trật tự các bản vẽ theo bất kỳ một quy luật nào cả (như bác ketxu đã làm) mà cái trật tự các bản vẽ trong bảng này do cái trật tự của nó trong bộ chọn đượctạo thành khi quét chọn. cái trật tự này nhiều khi cũng khá oái oăm chứ chả phải đẹp như mơ đâu. Nếu bạn thấy khó chịu với cái trật tự này thì hãy tự trách mình đã nhé.
Tuy vậy do dựa vào cái bản vẽ đã post bên trên nên bạn lưu ý trong trường hợp khung tên của có cấu trúc khác so với cái khung tên đó thì có thể lisp sẽ không tìm được các ký hiệu của bản vẽ bạn nhé. Khi đó bạn chịu khó đọc lisp và sửa lại cái vùng chọn cho thích hợp là Ok.
Lisp sử dụng style hiện hành nên nếu bạn để bản vẽ ở style không sử dụng font tiếng Việt thì cái text bạn sẽ thấy không giống ai đâu. Vì thế hãy chuyển style cho thích hợp trước kh chạy lisp.
Lisp này cũng sửa lỗi của lisp trước khi tên bản vẽ có nhiều dòng.
Rất vui khi bạn tham gia vào topic này.

(defun c:mtxtc ( / oldos l1 l2 ssmt1 n lst1 lst2 i t1 lst2 pt ssmt2 h p p1 p2 p3 p5 p6 p0 )
(command "undo" "be" )
(setq oldos (getvar "osmode" ) )
(setvar "osmode" 0 )
(setq l1 (cdr (assoc 8 (entget (car (entsel "\n Chon mot text ten ban ve can thong ke")))))
l2 (cdr (assoc 8 (entget (car (entsel "\n Chon mot text Ky hieu ban ve can thong ke")))))
)
(alert "\n Chon cac ban ve can thong ke" )
(setq ssmt1 (ssget (list (cons 0 "*text") (cons 8 l1)))
n (sslength ssmt1) i 0 lst1 (list) lst2 (list) )
(while (< i n)
(setq e (ssname ssmt1 i))
;;;;(if (= (cdr (assoc 8 (entget e))) "TEN BAN VE")
(setq t1 (ACET-STR-REPLACE "\\P" "" (cdr (assoc 1 (entget e)))))
(setq lst1 (append lst1 (list t1)))
;;;;(setq lst2 (append lst2 (list (cdr (assoc 1 (entget e))))))
;;;;;;;;; )
(setq pt (if (or (= (cdr (assoc 0 (entget e))) "MTEXT") (= 0 (cdr (assoc 72 (entget e))) (cdr (assoc 73 (entget e)))))
(cdr (assoc 10 (entget e))) (cdr (assoc 11 (entget e))) ))
(setq ssmt2 (acet-ss-to-list (ssget "c" pt (list (+ (car pt) 9000) (- (cadr pt) 5000)) (list (cons 0 "*text") (cons 8 l2)))))
(setq lst2 (append lst2 (list (cdr (assoc 1 (entget (car ssmt2)))))))
(setq i (1+ i))
)
(styleset)
(setq h (getreal "\n Nhap chieu cao text trong bang: ")
p (getpoint "\n Chon diem dat bang " ) )
(command "line" p (setq p1 (polar p 0 (* 40 h))) (setq p2 (polar p1 (* 1.5 pi) (* (1+ n) 3 h))) (setq p3 (polar p2 pi (* 40 h))) "c" )
(command "line" (setq p5 (Polar p 0 (* 5 h))) (polar p5 (* 1.5 pi) (* (1+ n) 3 h)) "" )
(command "line" (setq p6 (Polar p 0 (* 33 h))) (polar p6 (* 1.5 pi) (* (1+ n) 3 h)) "" )
(command "text" "j" "mc" (list (+ (car p) (* 2.5 h)) (- (cadr p) (* 1.5 h))) h 0 "STT" )
(command "text" "j" "mc" (list (+ (car p) (* 19 h)) (- (cadr p) (* 1.5 h))) h 0 "T&#202;N B\\U+1EA2N V\\U+1EBC" )
(command "text" "j" "mc" (list (+ (car p) (* 36.5 h)) (- (cadr p) (* 1.5 h))) h 0 "K&#205; HI\\U+1EC6U")
(setq j 1)
(repeat n
(command "line" (setq p0 (polar p (* 1.5 pi) (* j 3 h))) (polar p0 0 (* 40 h)) "" )
(command "text" "j" "mc" (list (+ (car p0) (* 2.5 h)) (- (cadr p0) (* 1.5 h))) h 0 (rtos j 2 0))
(command "text" "j" "mc" (list (+ (car p0) (* 19 h)) (- (cadr p0) (* 1.5 h))) h 0 (nth (1- j) lst1))
(command "text" "j" "mc" (list (+ (car p0) (* 36.5 h)) (- (cadr p0) (* 1.5 h))) h 0 (nth (1- j) lst2))
(setq j (1+ j))
)
(setvar "osmode" oldos)
(command "undo" "e" )
(princ)
)

(defun styleset ()
(setq stl (getvar "textstyle")
h (getvar "textsize"))
(if (/= h 0) (command "style" stl "" 0 "" "" "" "" ""))
)
Chúc bạn vui.
@ bác ketxu: do mình xài CAD2004 nên chả thể có ý kiến phản hồi với bài post của bác được. Hề hề hề, hãy đợi khi mình xài được CAD2008 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.

#19 akay_arch

akay_arch

    biết zoom

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

Đã gửi 05 January 2012 - 09:53 AM

Có vẻ yêu cầu ngày càng dài nhỉ :)
Xem lisp làm được tới đâu nào :
http://www.cadviet.c...24067_btk_2.rar

- BTK
- Chọn lần lượt 2 Text chứa TBV + Ký Hiệu
- Chọn điểm đặt BTK, chiều cao chữ, số bắt đầu đánh

Ghi chú : lisp lấy :
- TextStyle của text bạn chọn làm Style của bảng
- Sắp xếp bảng theo thứ tự tăng dần của Ký hiệu (bất kể thứ tự chọn). Trong trường hợp các Ký hiệu bản vẽ không có số để so sánh thì nó làm việc bình thường theo thứ tự chọn
- Lisp tạo bảng bằng Table, những đời CAD chưa có Table thì khỏi down ^^

- Ngoài ra tương lai có thể :
+ Gán Field để tự động cập nhật tên, số hiệu (như TKBV của bác gia_bach)
+ Cho phép nốt tiếp vào 1 bảng có sẵn ...
+....
+ => cuối năm rồi bỏ ngỏ đó th :D


Nhờ bạn Ketxu xem lại lisp hộ cái. mình test thử thì thấy bảng thống kê bị ngược giữa tên bản vẽ và ký hiệu. mình test trên bản vẽ của chủ topic up lên đấy. ví dụ: MẶT BẰNG THOÁT NƯỚC MƯA ký hiệu là TNM:01 thì khi cho ra bảng thống kê lại là TNM:04 và ngược lại. Thanks
  • 0

#20 ketxu

ketxu

    Copier - Paster - Editor

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

Đã gửi 05 January 2012 - 10:08 AM

Nhờ bạn Ketxu xem lại lisp hộ cái. mình test thử thì thấy bảng thống kê bị ngược giữa tên bản vẽ và ký hiệu. mình test trên bản vẽ của chủ topic up lên đấy. ví dụ: MẶT BẰNG THOÁT NƯỚC MƯA ký hiệu là TNM:01 thì khi cho ra bảng thống kê lại là TNM:04 và ngược lại. Thanks

Rất tiếc là lisp mình viết khá mất công nhưng chủ topic k thèm ưng test nên mình cũng vứt xó, hiện chưa tìm được code nguồn. Nếu bạn cần thì khi nào rỗi mình sẽ cố tìm lại, hoặc vui lòng sử dụng cái của các bác khác trong cùng topic ^^ ^^
  • 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