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

tannguyen291

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

    449
  • Đã tham gia

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

  • Ngày trúng

    43

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


  1. Có 1 lisp của bác @duong Nhat Duy sẽ giúp được bạn trong vấn đề này

    Cách dùng thì giống như việc đánh toạ độ đỉnh pline bạn cần vẽ thêm 1 cái pline theo hướng mà muốn tăng dần.

    https://www.cadviet.com/forum/index.php?app=forums&module=forums&controller=topic&id=173558&tab=comments#comment-431059


  2. Bạn dùng thử cái này nhé. viết nhanh chất lượng thấp nhưng hiệu quả khá tốt.

    B1 thứ nhất chọn các đường dọc

    B2 chọn các đường ngang

    Lệnh FA và chỉ dùng với line thôi nhé. bạn x hết các đường pline ra.

     

    (defun c:FA (/ ss1 ss2 ent p1 p2 lstxl lstpt1 lstpt2)

      (setq

        ss1 (acet-ss-to-list (ssget '((0 . "LINE"))))

        ss2 (acet-ss-to-list (ssget '((0 . "LINE"))))

      )

      (foreach item ss1

        (setq

          ent (entget item)

          p1 (cdr (assoc 10 ent))

          p2 (cdr (assoc 11 ent))

          lstpt1 (append lstpt1 (list p1 p2))

        )

        (vl-cmdf "XLINE" p1 p2 "")

        (setq lstxl (cons (entlast) lstxl))

      )

      (foreach item ss2

        (setq

          ent (entget item)

          lstpt2 (cons (cdr (assoc 10 ent)) lstpt2)

          lstpt2 (cons (cdr (assoc 11 ent)) lstpt2)

        )

      )

      (apply 'vl-cmdf (append '("extend") lstxl '("") lstpt2 '("")))

      (mapcar 'entdel lstxl)

      (apply 'vl-cmdf (append '("extend") ss2 '("") lstpt1 '("")))

      (princ)

    )

     


  3. Để trả lời cái câu hỏi một cách máy móc thì

    với dấu sổ ngắn:  '   bác không thể biến flag thành 2 được. 

    Cần dùng (vl-princ-to-string (read (strcat "(done_dialog " (itoa flag) ")")))    <=== cái này vô nghĩa chả hiểu để làm gì

    Tuy nhiên bác đang viết dialog thì nên làm như bác Hạ bên trên là chuẩn nhất.

     

     

     

    • Like 1

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

    Mình thử thì  sau khi TXTEXP nếu không REG trước khi BO thì nó sẽ không bo được vùng kính phía trong. REG trước rồi mới BO thì mới được chứ nhỉ.

    mình explode ra line thì bo được như vậy :))

    giphy.gif

    • Like 1

  5. 38 phút trước, naturooo đã nói:

    Thì như hướng dẫn các bước của bạn Huy ở trên thì thiếu bước REG mà

    Cái GIF kia là mình dùng lệnh BO không phải dùng REG.

    Vẫn chạy tốt. tuy nhiên lệnh REG tối ưu hơn. cả bài văn dài cũng chiến hết.


  6. Nếu dùng lisp thì sẽ chuyên nghiệp hơn nhưng mình hướng dẫn bạn dùng lệnh có sẵn luôn đi.

    B1: Dùng txtexp để chuyển text thành dạng polyline. (lệnh này rất hay làm sai toạ độ và tỷ lệ của text cần Align lại, kích thước text cũng cần lớn khoảng trên 200 để nét polyline mượt hơn)

    B2: Dùng lệnh REG để đổi toàn bộ đối tượng về dạng region

    B3: Lệnh Union để nối các mảnh region liền lại với nhau

    B4: Lệnh Explode để phá các region về dạng line. (2 lần explode)

    Done!

    • Like 2

  7. 1 giờ trước, hien123@ đã nói:

     CÁCH CỦA BẠN QUÁ THỦ CÔNG, NẾU 1 VÀI CHỮ THÌ NGỒI BO, CÒN NÀY CẢ 1 ĐOẠN VĂN THÌ BO SAO NỔI Ạ.

     ----.>  MỤC ĐÍCH CỦA VIỆC NÀY LÀ ĐỂ CHUYỂN QUA MÁY TIỆN ĐỂ KHẮC CHỮ.

    Vậy thì đừng có nhờ. Dùng bản trả phí đi nhé. hướng dẫn có 3 cái kích chuột còn gân cổ lên. ca này tôi chịu.

    giphy.gif

     

×