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

Bee

Thành viên
  • Số lượng nội dung

    553
  • Đã tham gia

  • Lần ghé thăm cuối

  • Ngày trúng

    37

Bài đăng được đăng bởi Bee


  1. 15 phút trước, NHUNGLE_HD đã nói:

    Mình cảm ơn bạn Bee nhiều, mình rất mừng. Bạn Bee gửi mình số TK, mình mời bạn ly cafe như đã hẹn ước.

    Sẵn bạn xem dùm mình vì sao sau khi tạo được Block, mình dùng lệnh LAYISO thì nó biến đâu mất tiêu, bạn giúp luôn phần này. Cảm ơn bạn

    Chủ thớt add zalo mình nhé: 0397100480


  2. 2 giờ trước, NHUNGLE_HD đã nói:

    Việc Block  block attribute thì mình cũng đang sử dụng, copy ra và sửa Text, nhưng mình gặp khó khăn nên mới nhờ giúp đỡ và nó không vô lý, vì mình

    đang cần nó. Bạn Bee hiểu dùm. Và ở đây mình không sửa Text

    Test cho chủ thớt. Creat block.rar

    Nếu đúng ý thì inbox mình cốc cafe  (theo trend)

     

    ^_^

    • Like 1

  3. 4 phút trước, NHUNGLE_HD đã nói:

    Cảm ơn bạn Doan Van Ha góp ý. Có thể bạn chưa hiểu ý của mình. mình chỉ lấy ví dụ để thực hiện cho 3 cái điển hình, nhưng áp dụng thực tế thì số lượng sẽ nhiều hơn, mình thì không rành nên mới hỏi và nhờ giúp đỡ, ở đây mình không đề cập đến block  attribute, chỉ nhờ giúp đóng nó lại thành Block thôi và điểm Point của Block này nằm ở tâm của đường tròn. Nếu bạn có khả năng thì giúp mình công việc này. 

     

     

    Thực tế chẳng ai làm công tác trục này mà mỗi trục 1 block như vậy.

    1 là để nguyên text thế còn chỉnh sửa.

    2 là block attribute để còn chỉnh sửa (chỉ tạo block 1 lần còn lại copy ra chỉnh)

    Mọi người đều viết đc lisp cho chủ thớt nhưng nó vô lý nên ko muốn viết thôi. Nhiều khi trao đổi rõ ràng về cách vẽ trong CAD có khi nhanh hơn ngồi viết lisp. 


  4. 1 giờ trước, HOABAN_QD đã nói:

    Nhờ ECE trên diễn đàn giúp đỡ.

    Trong Acad có lệnh MATCHPROP (lệnh tắt là MA), có lisp nào tương tự để Dim b có được text overide ABC. Thanks!

    MATCHROP TEXT OVERIDE.dwg

    Chủ thớt test hàng họ nhé ^_^

    (defun c:MD ()
      (vlax-put (vlax-ename->vla-object (car (entsel "\nChon Dim matchprop: "))) 'TextOverride (vlax-get (vlax-ename->vla-object (car (entsel "\nChon Dim goc: "))) 'TextOverride))
      (princ)
      )

     


  5. 1 giờ trước, Horse_xd đã nói:

    Nhờ ACE giúp lisp chuyển hướng vector của Pline

    Quét chọn cùng một lúc hai đối tượng sau đó nhập lệnh lisp và chuyển vector của nó ngược lại, Thanks!

    DOI HUONG VEVTOR PLINE.dwg

    Hàng của bạn đây. ^_^

    (defun c:reverse_mpline ()
      (if (setq ss (ssget '((0 . "LWPOLYLINE"))))
        (command "_pedit" "M" ss "" "R" "")
        )
      )

     


  6. 6 phút trước, Doan Nguyen Van đã nói:

    Chắc bạn k hiểu ý bạn Cuongtk, muốn đổi tên biến,.  Nếu find thì sẽ đổi nhầm cả các tên khác giống tên biến.

    Find cũng là 1 nghệ thuật mà. 

    Căn bản nếu viết 1 chương trình phức tạp thì cũng phải chia nhỏ nhiều defun con. Cách đặt tên funtion hay defun cũng quan trọng. Nếu compile tốt thì tên tuổi các biến cũng tương đối là chuẩn rồi thì find hay replace tương đối là dễ dàng.

    Ý kiến mình chút xíu zậy thoai.

    Còn lại hóng tiếp. ^_^


  7. 29 phút trước, cuongtk2 đã nói:

    Tròn VLIDE có chức năng rename toàn bộ biến hay tham số không ?

    Ví dụ:

    (defun ham (a b)( + a b))

    (defun test ( / point1 point2)

    (setq point1 (getpoint) point2 (polar point1 0 1000)))

     

    Mình muốn rename toàn bộ a thành a1  hoặc point1 thành p1 trong hàm thì làm thế nào?

     

    Find and replace như bình thường mà chủ thớt.

    image.png.578485ff03015dfa34aeeb67caa25521.png

    • Like 1

  8. 19 giờ trước, le_na đã nói:

    Chào các bác

    Em có 01 bản vẽ bị tình trạng như sau: khi em dim đường kính hình tròn bất kỳ thì cái mũi tên dim nó cứ cố định chỗ (hình đính kèm), em đã chọn lên bất kỳ điểm nào trên đường tròn thì cái mũi tên dim vẫn giữ nguyên chỗ ( 1 góc độ cố định) trong khi cái test thì vẫn đặt tự do được. Trong 01 bản vẽ khác thì khi em dùng lệnh DLI xong chọn điểm bất kỳ trên đường tròn thì mũi tên dim sẽ hiện ra ngay vị trí đó luôn, em đã có mò trong bảng Dimension Style Manager mà vẫn không biết chỗ nào để chỉnh. Bác nào đã gặp tình trạng này  & biết chỉnh chỗ này thì chỉ em với. Em cám ơn các bác

    Capture.PNG

    Có thể có lỗi đơn giản là lock layer. ^_^ Do vậy không có bản vẽ không ai check thử được cho chủ thớt đâu.


  9. 10 giờ trước, 888x888x888 đã nói:

    Mình tìm nhiều nhưng toàn lisp kiểu này mà toàn cái phức tạp quá mức mình cần thiết

    Mình muốn nhờ các bác làm hộ mình 1 cái lisp thật đơn giản thế này, pick vào line rồi xuất vào text có sẵn, chỉ vậy thôi, như cái lisp mình đang dùng mà ko phải pick điểm đầu, điểm cuối nữa mà pick vào line luôn (cả pline thì tốt) 

    Cảm ơn các bác

    Lisp mình đang dùng đây:

    (defun c:gt (/ p1 p2 txt etxt d)
    (setq p1 (getpoint "\n Chon diem thu nhat")
              p2 (getpoint "\n Chon diem thu hai ")
              txt (car (entsel "\n Chon text can thay" ))
              d (distance p1 p2)
             etxt (entget txt)
             etxt (subst (cons 1 (rtos d 2 2)) (assoc 1 etxt) etxt)
    )
    (entmod etxt)
    (princ)
    ) 

    Lisp đây chủ thớt nhé:

    (defun c:gt1  (/ line txt etxt d)
      (setq line (car (entsel "\Chon line: ")))
      (setq d (distance (cdr (assoc 10 (entget line))) (cdr (assoc 11 (entget line)))))
      (setq txt  (car (entsel "\n Chon text can thay"))
            etxt (entget txt)
            etxt (subst (cons 1 (rtos d 2 2)) (assoc 1 etxt) etxt)
            )
      (entmod etxt)
      (princ)
      )

     

    • Like 1

  10. 15 giờ trước, pdhuyxn2 đã nói:

    Bác có thế Chỉnh Sửa LISP Copy từ EXCEL hàng Dọc PAS sang CAD hàng ngang được không A?

    Nhờ Các Bác trên Diễn Đàn Giúp đỡ. Cám ơn các Bác nhiều ạ...

    Chỉnh thì chỉnh được, hơi mất công thêm chút. Bạn gửi chút phí mình ngồi cafe rồi chỉnh cho ^_^

     


  11. 9 phút trước, Chutuyen đã nói:

    em làm theo hướng dẫn mà không được bác à?

       (setq s1 (vl-sort (ss_vla s2)
                     '(lambda (a b)
                    (< (car (vlax-get a 'InsertionPoint))
                       (car (vlax-get b 'InsertionPoint))
                    )
                      )
              )
        )

        (setq s2 (vl-sort (ss_vla s2)
                     '(lambda (a b)
                    (< (car (vlax-get a 'InsertionPoint))
                       (car (vlax-get b 'InsertionPoint))
                    )
                      )
              )
        ) 

    thay cả 2 dòng này chưa ?

×