Đến nội dung


Hình ảnh
* * * - - 1 Bình chọn

[Yêu cầu] viết lisp thống kê bản vẽ


  • Please log in to reply
177 replies to this topic

#121 gia_bach

gia_bach

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 1435 Bài viết
Điểm đánh giá: 1426 (rất tốt)

Đã gửi 19 July 2010 - 10:55 AM

Xin a gia_bach vui lòng giải thích giùm e. E đang xài CAD 2007. Mặc dù đã download về thử nghiệm 3,4 cái trích xuất block thuộc tính ExBlk.vlx, nhưng ko hiểu có sai thao tác nào ko mà sau ghi tạo bảng xong. Bảng trống huơ trống hoắc, các cell ko có contents nào cả. Và lạ là khi click đúp vô thì ô cell tự nhiên biến mất.

Ko biết có ai bị như vầy ko??? :D
Hình đã gửi

Theo phản hồi từ 1 số thành viên, với Cad 2007 kết quả không đuợc như ý.
Rất tiếc là tui không có Cad 2007 nên không thể kiểm tra đuợc.
Với Cad 2008 và 2010 Lisp Trích xuất Block thuộc tính chạy bình thuờng.
  • 1

#122 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

  • Moderator
  • PipPipPipPipPipPipPip
  • 4296 Bài viết
Điểm đánh giá: 3804 (đỉnh cao)

Đã gửi 01 September 2010 - 03:01 PM

LISP sắp xếp thứ tự theo qui tắc : mẫu tự ABC.
do đó bản vẽ của bạn sắp xếp thứ tự theo Tag = SBV sẽ là : E-.... -> FA-.... -> IT-.....
cụ thể là :
1. Bản vẽ chiếu sáng : E-01-01 ; E-01-02…….E-01-09
2. Bản vẽ báo cháy : FA-01-01 ; FA-01-02…….FA-01-09
3. Bản vẽ thông tin : IT-01-01 ; IT-01-02…….IT-01-09

Yêu cầu của bạn có vẻ khó thực hiện. :D
Vì sắp xếp theo thứ tự của bạn ( E -> I -> F) sẽ không tổng quát đối với mọi nguời.
Có lẽ bạn nên đổi cách đặt tên tag SBV :D

To : duonghung1210
Cập nhật theo yêu cầu của bạn. http://www.cadviet.c...es/2/exblk3.zip

Chào anh gia_bach
Em bị lỗi sắp xếp với hàm vl-sort như bài viết số 19 của em trong topic này :
http://www.cadviet.c...showtopic=16609
Em chưa biết cách giải quyết sao cho trọn vẹn vấn đề này.
Mong anh gia_bach hướng dẫn thêm về thuật toán sắp xếp này. Nếu có thể, anh có thể minh họa cho em một đoạn code nhỏ để em về ngâm cứu thêm ạ. Em đang "bí" đoạn sắp xếp này
Cảm ơn anh rất nhiều :D
  • 0

#123 thiep

thiep

    biết dimbaseline

  • Members
  • PipPipPipPipPip
  • 369 Bài viết
Điểm đánh giá: 260 (khá)

Đã gửi 01 September 2010 - 04:29 PM

Xin a gia_bach vui lòng giải thích giùm e. E đang xài CAD 2007. Mặc dù đã download về thử nghiệm 3,4 cái trích xuất block thuộc tính ExBlk.vlx, nhưng ko hiểu có sai thao tác nào ko mà sau ghi tạo bảng xong. Bảng trống huơ trống hoắc, các cell ko có contents nào cả. Và lạ là khi click đúp vô thì ô cell tự nhiên biến mất.

Ko biết có ai bị như vầy ko??? :D
Hình đã gửi


Theo phản hồi từ 1 số thành viên, với Cad 2007 kết quả không đuợc như ý.
Rất tiếc là tui không có Cad 2007 nên không thể kiểm tra đuợc.
Với Cad 2008 và 2010 Lisp Trích xuất Block thuộc tính chạy bình thuờng.

Chào funnyzui và bác Giabach.
Tuy không đọc được mã Lisp trích xuất Block thuộc tính của giabach, nhưng Thiep đoán rằng giabach đã dùng các hàm VL xử lý Table chỉ từ cad2008 mới có. Nếu đúng vậy thì giabach nên dùng các hàm (vlax-method-applicable-p objmethod), (vlax-property-available-p obj prop [check-modify]) để kiểm tra chúng. Ví dụ:
(if (vlax-property-available-p
TblObj
'RepeatTopLabels
)
(vla-put-RepeatTopLabels TblObj :vlax-true)
)
hoặc:
(if
(vlax-property-available-p TblObj 'BreakSpacing)
(vla-put-BreakSpacing TblObj (* 3 tsi))
); tsi=textsize
Chúc bác giabach thành công!
  • 1

#124 ketxu

ketxu

    Copier - Paster - Editor

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

Đã gửi 02 September 2010 - 12:32 AM

Lâu lâu phải thêm tí "gia vị" cho nó đậm đà chứ Bác!
Không thì chỉ diễn đàn chỉ toàn là "mẹ hát con khen hay"

Bác hỏi "dựa theo tiêu chuẩn nào?" thì em pó tay
Cái đó phải chờ Bộ Xây dựng (việc này khó khả thi)
Cho nên mới gọi là "áp đặt"

Có một thực tế 100% Hồ sơ bản vẽ gồm nhiều bộ môn và 100% các Bộ môn đều không sắp xếp theo thứ tự abc
(Không biết việc này đủ thuyết phục gia_bach khỏi vẹn vẹo mình nữa k?)


Đọc hết 2 phần Viết Lisp theo yêu cầu,không khỏi dị ứng với thái độ của bác này...Góp ý toàn kiểu châm chọc,khích bác,so sánh giữa ACA với LISP...Thường thì nên giữ thái độ đó nếu mình làm tốt hơn người ta khi ở cùng 1 địa vị
  • 1

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


#125 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

  • Moderator
  • PipPipPipPipPipPipPip
  • 4296 Bài viết
Điểm đánh giá: 3804 (đỉnh cao)

Đã gửi 02 September 2010 - 06:24 AM

Đọc hết 2 phần Viết Lisp theo yêu cầu,không khỏi dị ứng với thái độ của bác này...Góp ý toàn kiểu châm chọc,khích bác,so sánh giữa ACA với LISP...Thường thì nên giữ thái độ đó nếu mình làm tốt hơn người ta khi ở cùng 1 địa vị

Tue_NV rất tâm đắc câu nói này của bác trinhvqh và thật sự đúng là như vậy
Thế đấy, Cuộc đời, nếu không “tranh cãi” thì không thể tiến bộ được :D

ACA & SU (tt)
--------
Tâm lý chung của người dùng là luôn luôn so sánh các Phần mềm với nhau
Đã không biết bao nhiêu cuộc tranh cãi về Autocad, SketchUp, Revit, 3Dmax,.. để xem ai là cao thủ trong giới đồ họa.
Phải nên biết rằng mọi so sánh đều khập khiễng
Vì mục đích và công dụng của mỗi phần mềm là khác nhau
- Nếu lấy tiêu chí Render ảnh chất lượng cao để so sánh thì làm sao Revit có thể bằng 3Dmax?
- Còn nếu lấy việc quản lý bản vẽ thì làm sao Max lại chuyên nghiệp bằng Revit được?
- Ngay cả ACA và Revit tương đồng nhau về nhiều mặt. Autodesk cũng đã xác nhận ACA là thế hệ thứ 2, Revit là thế hệ thứ 3.
Nhưng để so sánh cũng đều là khập khiễng.

Trước đây, tôi cứ nghĩ rằng ACA là phù hợp nhất với công việc của mình rồi.
ACA là nhất rồi: Tiện dụng hơn CAD, chuyên nghiệp hơn CAD,… và quan trọng là Ít đụng hàng.
Thế rồi gặp một người bạn lúc đó đang sử dụng SketchUp.

Chắc các bạn cũng đoán được thế nào rồi. 02 con người “ham hố”, “hiếu thắng” ngồi lại bàn chuyện chuyên môn thì tránh sao khỏi những tranh cãi nảy lửa.
Mỗi người đều tìm cách đưa ra những “tuyệt chiêu” để quảng cáo cho “sản phầm” mình đang sử dụng.
Tranh luận sôi nổi, cãi lộn um sùm, kết thúc không ai chịu ai, ai về nhà nấy,…

Hôm sau gặp nhau cả hai đều thừa nhận, mỗi phần mềm đều có những “lấn cấn”.
Để “thuyết phục”. Người bạn kia dạy tôi SU; Còn tôi sẽ truyền lại ACA.

Sự kết hợp này giúp cả hai nâng cao tay nghề, bước sang một giải đoạn mới.
Từ đó Cùng bắt tay tìm hiểu về Revit (lúc đó được thầy Thiện ca ngợi tận mây xanh); Chief Architect,..

Nếu không có tranh luận ấy. Có lẽ đến bây giờ Tôi vẫn đang khổ sở trong khâu vẽ trang trí hoàn thiện.
Còn bạn tôi vẫn loay hoay mãi với việc quản lý và thống kê.

Thế đấy, Cuộc đời, nếu không “tranh cãi” thì không thể tiến bộ được

--------------------------
--------------------------

Chào funnyzui và bác Giabach.
Tuy không đọc được mã Lisp trích xuất Block thuộc tính của giabach, nhưng Thiep đoán rằng giabach đã dùng các hàm VL xử lý Table chỉ từ cad2008 mới có. Nếu đúng vậy thì giabach nên dùng các hàm (vlax-method-applicable-p objmethod), (vlax-property-available-p obj prop [check-modify]) để kiểm tra chúng.
---------

Chào bác Thiep
Các hàm các hàm VL xử lý Table thì đã có từ CAD2006 rồi bác ạ. Có 1 điều mà Tue_NV không thể hiểu nổi là cái Table lại bị "trống rỗng" như tình trạng của funnizui.
Bác có thể giải thích rõ hơn 1 chút nữa về cách làm của bác thể hiện trong Code trên được không? Cảm ơn bác

@Anh gia_bach : Bài giải về sự sắp xếp chuỗi trong topic này em "bí rị" rồi anh ạ. :D
Rất mong sự hướng dẫn của anh và mọi người.
Tue_NV xin cảm ơn.
Chúc anh gia_bach và bác Thiep dồi dào sức khỏe và thành công :D

Chào anh gia_bach
Em bị lỗi sắp xếp với hàm vl-sort như bài viết số 19 của em trong topic này :
http://www.cadviet.c...showtopic=16609
Em chưa biết cách giải quyết sao cho trọn vẹn vấn đề này.
Mong anh gia_bach hướng dẫn thêm về thuật toán sắp xếp này. Nếu có thể, anh có thể minh họa cho em một đoạn code nhỏ để em về ngâm cứu thêm ạ. Em đang "bí" đoạn sắp xếp này
Cảm ơn anh rất nhiều :D


  • 0

#126 gia_bach

gia_bach

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 1435 Bài viết
Điểm đánh giá: 1426 (rất tốt)

Đã gửi 02 September 2010 - 03:35 PM

Chào anh gia_bach
Em bị lỗi sắp xếp với hàm vl-sort như bài viết số 19 của em trong topic này :
http://www.cadviet.c...showtopic=16609
Em chưa biết cách giải quyết sao cho trọn vẹn vấn đề này.
Mong anh gia_bach hướng dẫn thêm về thuật toán sắp xếp này. Nếu có thể, anh có thể minh họa cho em một đoạn code nhỏ để em về ngâm cứu thêm ạ. Em đang "bí" đoạn sắp xếp này
Cảm ơn anh rất nhiều Hình đã gửi

Như Tue_NV đã biết : Hàm vl-sort nó sắp xếp các kí tự chuỗi theo alphabet.
Vậy ý tưởng là đối với các kí tự số. trước khi so sánh ta convert các chuỗi này thành chuỗi có chiều dài bằng nhau bằng cách thêm các kí tự không (zero) phía trước nó.

Vd : (setq L (list "1" "2" "10" "11" "12" "98" "99" "100"))
chuyển thành : (setq L (list "001" "002" "010" "011" "012" "098" "099" "100"))

hay : (list "KC-1" "KC-2" "KC-10" "KC-12" "KC-105" "KC-200")
chuyển thành : (list "KC-001" "KC-002" "KC-010" "KC-012" "KC-105" "KC-200")
thì hàm vl-sort luôn cho kết quả chính xác.

Vấn đề đặt ra : Trong các số đã cho làm sao tìm được số lớn nhất (số có chiều dài lớn nhất) ?
Đây là bài toán liên quan đến chi phí thời gian và độ chính xác.
Nghĩa là khi yêu cầu độ chính xác cao thì chi phí thời gian sẽ tăng tỉ lệ thuận.
Trong bài toán Thống kê bản vẽ, thông thường các số lên đến hàng trăm (hàng ngàn ?).
Như vậy chọn chiều dài là 4 (hàng vạn) có thể chấp nhận được. :cheers:

Đây là hàm đổi các chuỗi có kí tự số thành chuỗi có chiều dài bàng nhau (chiều dài của các chuỗi số bằng 4 )
(defun NormalizeNumberInString (str / ch i pat ret count buf)  (setq i 	0	pat   '("0" "1" "2" "3" "4" "5" "6" "7" "8" "9")	ret   ""	count 4 )  (while (/= (setq ch (substr str (setq i (1+ i)) 1)) "")    (if (vl-position ch pat)      (progn	(setq buf ch)	(while (vl-position (setq ch (substr str (setq i (1+ i)) 1)) pat)  	(setq buf (strcat buf ch)))	(while (< (strlen buf) count) (setq buf (strcat "0" buf)))	(setq ret (strcat ret buf))) )    (setq ret (strcat ret ch)) )  ret)

cách sử dụng :
(setq lst (list "KC-1" "KC-2" "KC-10" "KC-12" "KC-105" "KC-200"))

(setq lst (vl-sort lst '(lambda (x y) (< (NormalizeNumberInString x) (NormalizeNumberInString y)) ) ) )


Chào funnyzui và bác Giabach.
Tuy không đọc được mã Lisp trích xuất Block thuộc tính của giabach, nhưng Thiep đoán rằng giabach đã dùng các hàm VL xử lý Table chỉ từ cad2008 mới có. Nếu đúng vậy thì giabach nên dùng các hàm (vlax-method-applicable-p objmethod)
......

Cám ơn thiep đã có góp ý.
Việc sử dụng hàm (vlax-property-available-p) chỉ cho biết là trong trường hợp này hàm đó có sử dụng được hay không.
Nếu không sử dụng được, câu hỏi đặt ra là : Vậy có hàm nào có chức năng tương tự hay không ?
Câu trả lời chỉ có được khi có Cad 2007 đã Install.

Đọc hết 2 phần Viết Lisp theo yêu cầu,không khỏi dị ứng với thái độ của bác này...Góp ý toàn kiểu châm chọc,khích bác,so sánh giữa ACA với LISP...Thường thì nên giữ thái độ đó nếu mình làm tốt hơn người ta khi ở cùng 1 địa vị

to : ketxu
Đồng ý với ý kiến của Tue_NV :
Thế đấy, Cuộc đời, nếu không "tranh cãi" thì không thể tiến bộ được
  • 1

#127 thiep

thiep

    biết dimbaseline

  • Members
  • PipPipPipPipPip
  • 369 Bài viết
Điểm đánh giá: 260 (khá)

Đã gửi 04 September 2010 - 11:44 AM

Cám ơn thiep đã có góp ý.
Việc sử dụng hàm (vlax-property-available-p) chỉ cho biết là trong trường hợp này hàm đó có sử dụng được hay không.
Nếu không sử dụng được, câu hỏi đặt ra là : Vậy có hàm nào có chức năng tương tự hay không ?
Câu trả lời chỉ có được khi có Cad 2007 đã Install.

Chào Giabach, vấn đề là để lisp chạy một mạch trơn tru từ đầu đến cuối, khi viết lisp nếu biết các version Cad mới có các lệnh mới thì chúng ta phải dùng các hàm (vlax-method-applicable-p objmethod), (vlax-property-available-p obj prop [check-modify]) cho các version cad cũ vẫn chạy lisp được. Ví dụ: từ cad 2004 mới có hàm addTable, từ cad 2008 mới có hàm RepeatTopLabels, BreakSpacing ... Khi chạy lisp với cad có version cũ, đụng đến hàm không thực hiện được thì sẽ có 1 thông báo cho người dùng biết là người dùng đang sử dụng Cad đời cũ, lisp sẽ chạy tiếp phần còn lại, người viết lisp nên lường trước và có những mã lisp xử lý cho thích hợp để giảm thiểu các tình huống lỗi xảy ra. Vì lisp của Giabach không xử lý trường hợp này nên mới có hiện tượng như Tue_NV nói:
"Các hàm các hàm VL xử lý Table thì đã có từ CAD2006 rồi bác ạ. Có 1 điều mà Tue_NV không thể hiểu nổi là cái Table lại bị "trống rỗng" như tình trạng của funnizui.
Bác có thể giải thích rõ hơn 1 chút nữa về cách làm của bác thể hiện trong Code trên được không? Cảm ơn bác"
funnyzui chạy lisp chỉ đến khi tạo đến table thì dừng đột ngột vì không hiểu các hàm mới lạ.
Là dậy đó... chúc các bạn thành công!
  • 1

#128 gia_bach

gia_bach

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 1435 Bài viết
Điểm đánh giá: 1426 (rất tốt)

Đã gửi 04 September 2010 - 03:24 PM

Chào Giabach, vấn đề là để lisp chạy một mạch trơn tru từ đầu đến cuối, khi viết lisp nếu biết các version Cad mới có các lệnh mới thì chúng ta phải dùng các hàm (vlax-method-applicable-p objmethod), (vlax-property-available-p obj prop [check-modify]) cho các version cad cũ vẫn chạy lisp được. Ví dụ: từ cad 2004 mới có hàm addTable, từ cad 2008 mới có hàm RepeatTopLabels, BreakSpacing ... Khi chạy lisp với cad có version cũ, đụng đến hàm không thực hiện được thì sẽ có 1 thông báo cho người dùng biết là người dùng đang sử dụng Cad đời cũ, lisp sẽ chạy tiếp phần còn lại, người viết lisp nên lường trước và có những mã lisp xử lý cho thích hợp để giảm thiểu các tình huống lỗi xảy ra. Vì lisp của Giabach không xử lý trường hợp này nên mới có hiện tượng như Tue_NV nói:
"Các hàm các hàm VL xử lý Table thì đã có từ CAD2006 rồi bác ạ. Có 1 điều mà Tue_NV không thể hiểu nổi là cái Table lại bị "trống rỗng" như tình trạng của funnizui.
Bác có thể giải thích rõ hơn 1 chút nữa về cách làm của bác thể hiện trong Code trên được không? Cảm ơn bác"
funnyzui chạy lisp chỉ đến khi tạo đến table thì dừng đột ngột vì không hiểu các hàm mới lạ.
Là dậy đó... chúc các bạn thành công!

" ... đụng đến hàm không thực hiện được thì sẽ có 1 thông báo cho người dùng biết là người dùng đang sử dụng Cad đời cũ, lisp sẽ chạy tiếp phần còn lại, ..."
Chạy tiếp phần còn lại để làm gì ?
Viết LISP tạo bảng mà "cái Table lại bị trống rỗng" thì vứt LISP đi cho rồi, để làm chi ?

Có lẽ cách tốt nhất là ngay từ đầu, kiểm tra và thông báo :
LISP này không chạy được với CAD 2006, 2007 ....
Bạn muốn sài thì nâng cấp lên cad2008 hay 2010.
  • 0

#129 thiep

thiep

    biết dimbaseline

  • Members
  • PipPipPipPipPip
  • 369 Bài viết
Điểm đánh giá: 260 (khá)

Đã gửi 04 September 2010 - 06:14 PM

" ... đụng đến hàm không thực hiện được thì sẽ có 1 thông báo cho người dùng biết là người dùng đang sử dụng Cad đời cũ, lisp sẽ chạy tiếp phần còn lại, ..."
Chạy tiếp phần còn lại để làm gì ?
Viết LISP tạo bảng mà "cái Table lại bị trống rỗng" thì vứt LISP đi cho rồi, để làm chi ?

Có lẽ cách tốt nhất là ngay từ đầu, kiểm tra và thông báo :
LISP này không chạy được với CAD 2006, 2007 ....
Bạn muốn sài thì nâng cấp lên cad2008 hay 2010.

Không đâu bác Giabach ạ, bác đừng có nóng vội, nếu bỏ các hàm xử lý table mà Cad 2007 không có, hoặc "rào" thêm các hàm (vlax-method-applicable-p objmethod), (vlax-property-available-p obj prop [check-modify]) như Thiep nói, thì Cad 2007 vẫn tạo ra table có data. Bác cứ thử xem! cái Table không bị trống rỗng đâu!
  • 0

#130 trinhvqh

trinhvqh

    biết lệnh block

  • Members
  • PipPipPipPipPipPip
  • 408 Bài viết
Điểm đánh giá: 222 (khá)

Đã gửi 17 September 2010 - 11:43 AM

Mấy hôm nay có dịp xài Lisp Thống kê bản vẽ của gia_bach để làm mục lục bàn vẽ cho các Bộ môn
Phải nói rằng Lisp rất hợp thời, chạy rất ổn.

Một yêu cầu nhỏ nữa thôi nhờ gia-bach chỉnh sửa
Đó là: Có thể tắt Form giới thiệu ban đầu khi load lênh ExBlk.VLX được k?
Vì mỗi lần mở CAD thì nó hiện ra không cần thiết.

Chân thành cảm ơn!
  • 0

#131 newmember

newmember

    Chưa sử dụng CAD

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

Đã gửi 11 November 2010 - 10:49 AM

Yêu cầu này thực hiện lâu rồi.
trinhvqh sử dụng link ở bài 125 : http://www.cadviet.c...o...ost&p=96140

Chào các bác , em là thành viên mới , em có sử dụng Lisp thống kê bản vẽ của bác Gia Bạch nhưng không hiểu sao Lisp của bác cứ chạy được 1 thời gian thì lại mất tác dụng ( cụ thể : khi dùng lệnh : Exblk thì có hiện bảng chọn thuộc tính lên , sau khi chọn xong , nhấp OK thì không thấy có tác dụng gì hết . Em đã thử lại trên những bản vẽ đã thống kê đều không dùng được nữa ) . Lấy lisp đó sang máy khác thì xài được nhưng 1 thời gian thì lại hết ( giống như bác Gia bạch set thời gian , số lần sử dụng vậy ) . Có ai bị trường hợp này chưa hướng dẫn em với , Thanks . :iluvyousmiley:
  • 0

#132 duyhung

duyhung

    biết vẽ rectang

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

Đã gửi 11 November 2010 - 11:43 AM

Chào các bác , em là thành viên mới , em có sử dụng Lisp thống kê bản vẽ của bác Gia Bạch nhưng không hiểu sao Lisp của bác cứ chạy được 1 thời gian thì lại mất tác dụng ( cụ thể : khi dùng lệnh : Exblk thì có hiện bảng chọn thuộc tính lên , sau khi chọn xong , nhấp OK thì không thấy có tác dụng gì hết . Em đã thử lại trên những bản vẽ đã thống kê đều không dùng được nữa ) . Lấy lisp đó sang máy khác thì xài được nhưng 1 thời gian thì lại hết ( giống như bác Gia bạch set thời gian , số lần sử dụng vậy ) . Có ai bị trường hợp này chưa hướng dẫn em với , Thanks . :iluvyousmiley:

Có thể có một bài hướng dẫn sử dụng lisp này thì hay, mình copy về mà ko biết dùng như thế nào cho chuẩn cả.
  • 0
Song va chien dau!

#133 nguoi_tho_mo

nguoi_tho_mo

    biết vẽ arc

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

Đã gửi 17 November 2010 - 06:38 PM

Yêu cầu này thực hiện lâu rồi.
trinhvqh sử dụng link ở bài 125 : http://www.cadviet.c...o...ost&p=96140

Cảm ơn bác Gia_bach.
Lisp của bác rất hữu ích Nhưng em vẫn chưa sử dụng được.
Em có thể "ghi ra file" nhưng không "tạo bảng" được
Rất mong các anh trên diễn đàn hướng dẫn và sửa lỗi

Hình đã gửi
sau khi bấm vào "tao bang" thì không ra bảng
Thanks
  • 0

#134 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 17 November 2010 - 08:38 PM

Cảm ơn bác Gia_bach.
Lisp của bác rất hữu ích Nhưng em vẫn chưa sử dụng được.
Em có thể "ghi ra file" nhưng không "tạo bảng" được
Rất mong các anh trên diễn đàn hướng dẫn và sửa lỗi

Hình đã gửi
sau khi bấm vào "tao bang" thì không ra bảng
Thanks

Hề hề hề,
Có nhẽ cái CAD của bạn đang xài không có phần hỗ trợ tạo bảng chăng??? Bạn xài CAD nào và đã cài Express Tool chưa hè????
  • 1
Chúc các quý Anh trên diễn đàn luôn khỏe, đẻ thêm được nhiều thứ để mót.

#135 nguoi_tho_mo

nguoi_tho_mo

    biết vẽ arc

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

Đã gửi 17 November 2010 - 09:02 PM

Hề hề hề,
Có nhẽ cái CAD của bạn đang xài không có phần hỗ trợ tạo bảng chăng??? Bạn xài CAD nào và đã cài Express Tool chưa hè????

Ước gì có thể tặng bác "more than a thank you" thật vinh dự được bác giúp 2 topic liền
1. Cad của em 2007 và 2011 đều không tạo bảng và đã sử dụng được thống kê block (tạo bảng) của bac Gia_bach http://www.cadviet.c...amp;#entry94041
2. Sau khi dùng một số lisp như inan, thống kê... thì lisp không có tác dụng nữa >>> phải ghost lại máy.
3. giờ thì em dùng vacxin của anh Nguyen Hoanh http://www.cadviet.c...mp;#entry102588

Nhờ các cao thủ bắt bệnh
  • 0

#136 nguoi_tho_mo

nguoi_tho_mo

    biết vẽ arc

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

Đã gửi 18 November 2010 - 10:08 AM

Chào newmember, nguoi_tho_mo.
Cám ơn các bạn đã sử dụng và góp ý.
Lisp thống kê bản vẽ đang có vấn đề ! <_<
Sẽ Update trong thời gian sớm nhất.

Cám ơn bác gia_bach đã quan tâm tới lỗi của em.
Rất mong bác sớm hoàn thiện phục vụ cho bà con nông dân như em
  • 0

#137 gia_bach

gia_bach

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 1435 Bài viết
Điểm đánh giá: 1426 (rất tốt)

Đã gửi 19 November 2010 - 09:13 AM

Chào Giabach, vấn đề là để lisp chạy một mạch trơn tru từ đầu đến cuối, khi viết lisp nếu biết các version Cad mới có các lệnh mới thì chúng ta phải dùng các hàm (vlax-method-applicable-p objmethod), (vlax-property-available-p obj prop [check-modify]) cho các version cad cũ vẫn chạy lisp được. Ví dụ: từ cad 2004 mới có hàm addTable, từ cad 2008 mới có hàm RepeatTopLabels, BreakSpacing ... Khi chạy lisp với cad có version cũ, đụng đến hàm không thực hiện được thì sẽ có 1 thông báo cho người dùng biết là người dùng đang sử dụng Cad đời cũ, lisp sẽ chạy tiếp phần còn lại, người viết lisp nên lường trước và có những mã lisp xử lý cho thích hợp để giảm thiểu các tình huống lỗi xảy ra. ............

Chào thiep
Vấn đề ở Cad 2007 là do hàm vla-MergeCells :
- Cad 2007 bị lỗi khi gọi (vla-MergeCells TblObj 0 0 0 col)

- khắc phục bằng cách bẫy lỗi :
(vl-catch-all-error-p (vl-catch-all-apply (function(lambda () (vla-MergeCells TblObj 0 0 0 col)) )))
Cám ơn nhiều.

Chào newmember, nguoi_tho_mo.
Cám ơn các bạn đã sử dụng và góp ý.
Lisp thống kê bản vẽ đang có vấn đề ! <_<
Sẽ Update trong thời gian sớm nhất.

Update Lisp thống kê bản vẽ
(fix lỗi trong CAD 2007)
  • 3

#138 trinhvqh

trinhvqh

    biết lệnh block

  • Members
  • PipPipPipPipPipPip
  • 408 Bài viết
Điểm đánh giá: 222 (khá)

Đã gửi 19 November 2010 - 09:28 AM

Update Lisp thống kê bản vẽ
(fix lỗi trong CAD 2007)

link download here


Tại sao không gộp BlkQty và ExBlk thành một nhỉ?
Như vậy có phải là tiện hơn k?
  • 0

#139 trinhvqh

trinhvqh

    biết lệnh block

  • Members
  • PipPipPipPipPipPip
  • 408 Bài viết
Điểm đánh giá: 222 (khá)

Đã gửi 19 November 2010 - 09:33 AM

Theo ý tại hạ thì nên gộp chung các lệnh về thống kê thành một lệnh
Khi thực hiện lệnh Thongke thì hiện ra Form trong đó có nhiều Tab để người dùng lựa chọn
  • 1

#140 nguyentuyen6

nguyentuyen6

    biết lệnh chamfer

  • Advance Member
  • PipPipPipPip
  • 213 Bài viết
Điểm đánh giá: 124 (tàm tạm)

Đã gửi 19 November 2010 - 10:12 AM

Chào thiep
Vấn đề ở Cad 2007 là do hàm vla-MergeCells :
- Cad 2007 bị lỗi khi gọi (vla-MergeCells TblObj 0 0 0 col)

- khắc phục bằng cách bẫy lỗi :
(vl-catch-all-error-p (vl-catch-all-apply (function(lambda () (vla-MergeCells TblObj 0 0 0 col)) )))
Cám ơn nhiều.
Update Lisp thống kê bản vẽ
(fix lỗi trong CAD 2007)

link download here


Em vừa dùng thử trên cad 2007 thì không tạo đc bảng bác ạ. ấn tạo bảng nó không hiện lên gì cả.Khi dùng trên 2008 thì tốt nhưng sao e đã để font mặc định là font của các tag cần thống kê mà nó vẫn lỗi font. phải vào bảng chỉnh lại font thì nó mới ra đúng. Thank
  • 0

Lisp In bản vẽ hàng loạt:
http://www.cadviet.c...ndpost&p=139860