Chuyển đến nội dung
Diễn đàn CADViet

Tất cả hoạt động

Luồng cập nhật tự động luồng này     

  1. Giờ trước
  2. conghoa

    Lisp thông kê danh mục bản vẽ

    Các bạn có thể dùng thử cái lisp của @gia_bach để tạo danh mục bản vẽ nhé. DanhMucBanVe (ExBlk).zip
  3. limfx

    Hỏi về Lisp (thuật toán, ý tưởng, coding,...)

    Vậy sao anh nói biết dữ liệu đi kèm như: (vlax-dump-object (vlax-ename->vla-object (car (entsel))) [T]) Hình như dumpAllProperties chỉ có trên cad 2024?
  4. tannguyen291

    Hỏi về Lisp (thuật toán, ý tưởng, coding,...)

    dump luôn trả về nil. lệnh này chủ yếu để người dùng theo dõi các thông tin của đối tượng để nghiên cứu thôi. nó giống vlax-dump-object đó
  5. limfx

    Hỏi về Lisp (thuật toán, ý tưởng, coding,...)

    Ủa sao (dumpAllProperties (car (entsel)) 1) nó trả về nil anh?
  6. Hôm nay
  7. alo. Bạn có số điện thoại không?

    Mình muốn nhờ bạn viết lisp hộ mình với. 

    hết bao nhiêu mình gửi

    SĐT của mình 0984 473 255

  8. tannguyen291

    Hỏi về Lisp (thuật toán, ý tưởng, coding,...)

    Mình quên mất 2 hàm dumpallproperties và getpropertyvalue tại ít dùng quá nên không nghĩ đến. không ngờ lại có tác dụng Dùng dump là biết ename có các dữ liệu nào đi kèm thôi
  9. limfx

    Hỏi về Lisp (thuật toán, ý tưởng, coding,...)

    Excellent! Sao anh tìm ra được cái AcDbDynBlockPropertyDistance?
  10. Doan Van Ha

    nhờ sửa lisp tạo block nhanh

    Thế sao than "chủ đề này vậy mà kéo dài quá"? Càng tranh luận càng tốt thôi..
  11. vietduc147258

    nhờ sửa lisp tạo block nhanh

    Có tranh luộn vậy diễn đàn mình mới tồn tại lâu dài chứ
  12. vietduc147258

    nhờ sửa lisp tạo block nhanh

    Cách này nhanh nhất. Nhược điểm là mặc dù tên tạo ra ngẫu nhiên nhưng vẫn bị trùng tên khi copy sang block khác. Cái tên nhìn không được cảm tình cho lắm. Nhưng được cái tên nó gom về 1 chỗ cũng tiện. Khi Rename chọn A&C* là được cả đám rồi. Lisp này nguyên bản thì tên là Newblock+ rất đễ trùng tên. Lấy tên file thì hạn chế bớt nhưng tên block lại dài quá.. Nói chũng cũng khó hoàn hảo lắm
  13. Doan Van Ha

    nhờ sửa lisp tạo block nhanh

    Chủ topic biến lâu rồi. Tự các lisper tranh luận với nhau, giờ trách ai?
  14. conghoa

    nhờ sửa lisp tạo block nhanh

    Mình cũng thấy thế, nên cách tạo block hợp với yêu cầu mà lại nhanh thì nên dùng cách này: 1. Chọn đối tượng cần làm Block rồi: Ctrl + C 2. Ctrl + Shift + V 3. Chèn vào vị trí cần :)
  15. tannguyen291

    Hỏi về Lisp (thuật toán, ý tưởng, coding,...)

    Mình đang nghiên cứu ra rồi nhé. sử dụng hàm (getpropertyvalue [ename] [property]) property là string có dạng : "AcDbDynBlockProperty" + "distance..." nếu có giá trị là hiện nếu error là ẩn. đi kèm với cặp lệnh vl-catch-all-error-p vl-catch-all-apply thì ok luôn. (defun c:test (/ ent lst lstcheck lstparavisible ) (setq ent (car (entsel)) lst (LM:getdynprops (vlax-ename->vla-object ent)) lst (vl-remove-if-not '(lambda (x) (eq 'REAL (type (cdr x)))) lst) lst (mapcar '(lambda (x) (strcat "AcDbDynBlockProperty" (car x)) ) lst) lstcheck (mapcar '(lambda (x) (vl-catch-all-apply 'getpropertyvalue (list ent x))) lst) lstparavisible (mapcar '(lambda (a b) (if (not (vl-catch-all-error-p b)) (cons (substr a 21) b) ) ) lst lstcheck ) ) (vl-remove nil lstparavisible) ) (defun LM:getdynprops (blk) (mapcar '(lambda (x) (cons (vla-get-propertyname x) (vlax-get x 'value)) ) (vlax-invoke blk 'getdynamicblockproperties) ) )
  16. limfx

    Hỏi về Lisp (thuật toán, ý tưởng, coding,...)

    (("BLOCKLINEARPARAMETER" (303 . "DisplacementX") (304 . "DisplacementY") (305 . "Distance1") (306 . "") (307 . "")) ("BLOCKLINEARPARAMETER" (303 . "DisplacementX") (304 . "DisplacementY") (305 . "Distance2") (306 . "") (307 . "")) ("BLOCKVISIBILITYPARAMETER" (301 . "Visibility1") (302 . "") (303 . "State1") (303 . "State2"))) Bước tách cặp ("State1" "Distance1") thì sao a?
  17. Hôm qua
  18. Tuần trước.
  19. Sớm hơn
  20. vuongthan

    nhờ sửa lisp tạo block nhanh

    em đang dùng 1 lisp tạo block nhanh là QB. nhưng lisp tự động tạo tên là newblock+(1+n), các bác có thể sửa lệnh giúp em thành tạo tên block là tên file+(1+n) được không ạ? em xin cám ơn các bác
  1. Tải thêm hoạt động


  • Newsletter

    Want to keep up to date with all our latest news and information?

    Sign Up
×