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

Danh Cong

Moderator
  • Số lượng nội dung

    1387
  • Đã tham gia

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

  • Ngày trúng

    117

Bài đăng được đăng bởi Danh Cong


  1. 10 giờ trước, thanh96 đã nói:

    Em lại gặp lỗi nữa nhờ anh giúp ak.

    Nếu vẫn lisp cũ ý ak. Gặp trường hợp 2 đầu thanh đó bẻ neo thì nó chưa xử lí được tại mình đang để break ra sau đó vẽ 1 đường line khác.

    Có cách nào xử lí được không ak.

    Trước em chưa xử lí hết trg hợp giờ làm mới thấy ak.

    Em cảm ơn ak.

    Noi 40d.lsp

    Chịu. Gặp Polyline thì rắc rối nên tôi chịu.

    • Vote giảm 1

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

    Anh giúp em với sửa mãi nó cứ lỗi kiểu gì ý ak.

    Em cản ơn ak

    Tôi đã sửa lại một số chỗ. Bạn chạy thử xem thế nào.

    (defun c:1 ( / A1 A2 B1 B2  OBJ OLDOS P1 P2 P3 P4 VL-OBJ )
    (command "cmdecho" 0)
    (setq oldos (getvar "osmode"))
    (or duongkinhthep (setq duongkinhthep 16))
    (setq duongkinhthep (cond ((getreal (strcat "\nDuong Kinh Thep: < " (rtos duongkinhthep 2 0) " >:")))(duongkinhthep))) 
      
    (setq     obj (entsel "Select object: ")
        VL-Obj (vlax-ename->vla-object (car obj ))
        p-end (vlax-curve-getEndPoint VL-Obj )
        p-start (vlax-curve-getStartPoint VL-Obj )
        p1 (getpoint "chon diem Break: "))
    (if (< (car p-end) (car p-start)) (setq p2 p-start) (setq p2 p-end))
    (setvar "osmode" 0)  
    (setq     a1 (- (car p1) (* 40 duongkinhthep))
            a2 (- (cadr p1) 100)    
             b1 (car p2)            
             b2 (- (cadr p2) 100))
      
    (setq   p3 (list a1 b2)
            p4 (list b1 b2))
    (command "break" p2 p1)
    (command ".line" p4 p3 "")
    (setvar "osmode" oldos)
    (princ)
     )

    • Vote giảm 2

  3. 7 giờ trước, thanh96 đã nói:

     

    1.lsp

    Em viết như này  cơ mà nó đang còn dính lỗi cái điểm P3 ý em gắn vậy cơ mà nó không nhảy điểm là do gì ak.

    Với để dim 2 điểm trong lisp ak.

    Em cảm ơn ak

    (defun c:1 ( / )
    (setq obj (entsel "Select object: ")
        d (getreal "\n Duong kinh:"))
    (setq    VL-Obj (vlax-ename->vla-object (car obj )))
    (setq    p2 (vlax-curve-getEndPoint VL-Obj ))
    (setq    p1 (getpoint "chon diem cut: "))
    (setq     a1 (- (car p1) (* 40 d))
        a2 (- (cadr p1) 100)    
         b1 (car p2)            
         b2 (- (cadr p2) 100))
    (setq    p3 (list a1 b2)
            p4 (list b1 b2))
    (command "break" p2 p1)
    (command ".line" p4 p3 "")
     )

    + Bạn viết được vậy cũng là khá rồi. Cố thêm ít nữa chắc sẽ ok :))

    Tôi nghĩ bạn nên bổ xung điều sau cho lisp:

    + Tắt chế độ bắt điểm (setvar "osmode" 0) Sau khi chọn hết, nhập hết số liệu để tránh trường hợp máy bắt điểm nhầm.

    + Lisp này hiện tại chỉ hoạt động với đường thẳng nằm ngang. Vậy đường xiên thì sao?

    + Điểm EndPoint của đường thẳng có thể nằm ở 1 trong 2 đầu. Vì thế đoạn nối lúc thì bên trái, lúc thì bên phải. Bạn sẽ giải quyết thế nào ?

    + Nếu là đường thẳng, thay vì Break thì bạn có hết toạ độ rồi. Vậy vẽ xừ nó 2 đường thẳng mới,rồi xoá đường thẳng cũ đi. Liệu có ok hơn không :))) hề hề.

    • Vote giảm 2

  4. 14 phút trước, Doan Van Ha đã nói:

    Cớ sự là do 25.4. Lẽ nào bản vẽ ngoài đã vào file acad.lin để sửa?

    "Bình thường, nếu xét về khoảng cách dãn. Thì chỉ cần nhân tỷ lệ 25.4 với 1 trong 2 đường --->  khoảng cách giãn phải giống nhau. Nhưng ở đây lại không giống như thế ?? 

    + Thấy cũng có phần ảnh hưởng của Annotation. Bác #DoanVanHa không chọn đối tượng nào, thử bật Property lên, mục Misc: thì thấy tỷ lệ Annotation Scale khác nhau lè lưỡi. Chỉnh cho nó giống nhau thì khoảng cách giãn còn khác nhau rất lớn ( Chênh 25400 lần @@). 

    • Like 1

  5. 9 phút trước, Minh Trọng đã nói:

    Khác nhau thật, nhưng bên mình nó đều là nét liền.

     

    10 phút trước, Doan Van Ha đã nói:

    Thế nào là "định nghĩa khác nhau" vậy, khi chúng đều được load từ "acad.lin" ?

    Lại có cả trường hợp của bạn Minh Trọng ở trên nữa à?

    + Minh Trọng: Liền hay không liền là do bạn để tỷ lệ Line Scale nhỏ quá hoặc to quá. Chỉnh lại vừa vừa là thấy sự khác nhau.


  6. 28 phút trước, HUUTUYEN_NIKE đã nói:

    Em chào mọi người ạ. Mọi người cho e hỏi khi e dùng lệnh PL và đã chỉnh độ dày của nét nhưng nó ko ra nét dày mà ra 1 hình chữ nhật mà ko hiển thị nét dày. vậy mong các bác chỉ giáo giúp em ạ. Em cảm ơn

    Thử FILL---> ON, rồi Regen lại xem thế nào.


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

     

    cảm ơn bạn nhiều nhé. Có cách nào rút ngắn chuỗi lệnh này ko. Mình muốn sử gõ lệnh xong nó mặc định luôn là lựa chọn <home>: h

    Mất hết cả đất diễn rồi...

    Định đùa bác này tẹo nữa nhưng bị bác QuocManh trả lời mất,,, thế nên lại thôi.... ^^ 

    Gõ lệnh tắt thế này nhé @@

    (defun c:ABCDEFGH ()
      (command "_Dimedit" "Home" pause)
      (princ))

    • Like 1

  8. 5 phút trước, nội thất Đô My đã nói:

    bạn bị chuyển đổi các nét vẽ, mình cũng đang bị tương tự nhưng chưa tìm được cách khắc phục

    http://mancuadomy.com/Tu-van/rem-van-phong-dep-va-cach-bao-quan-23.html

    Xóa ngay đi cái Link đính kèm. Ko thì tôi khóa nick trong vòng 2h tới.

     

    33 phút trước, ChiPheo123456 đã nói:

    file của mình toàn file nặng, éo up lên đc. nói chung là nét vẽ mảnh bị đổi thành nét vẽ đậm, tất cả các bản vẽ luôn.

    nét vẽ by_layer mặc định bị đổi hết thành nét default

     

    Tìm hiểu thêm về các lệnh hiển thị nét đậm của bản vẽ : Ví dụ như LineWeight. Tốt nhất bạn nên sử dụng công cụ tìm kiếm của diễn đàn. Rất nhiều.

    • Like 1

  9. 1 giờ} trướ}c, jangboko đã nói:

    Xin lỗi các bác. Em đã thử tìm trên diễn đàn rồi mà chưa thấy cái Lisp hay lệnh cad nào phù hợp với yêu cầu của em ( có thể e tìm chưa kĩ mong các bác thông cảm)

    + Do tìm chưa kỹ: Hoặc bạn chưa dám mày mò nghịch ngợm để làm được. @@

    Vốn dĩ cái họ nhà Dim nó thẳng như hình 2 rồi. Vậy thì phải hỏi cớ sao nó lại có đường nối như hình 1: Túm lại là chỉnh DimStyle các thông số sau:

    Lưu ý: Việc chỉnh này chỉ áp dụng với các Dim không bị thay đổi vị trí Text. Nếu thay đổi thì sẽ có thêm phần gay cấn khác ^^

     

     

    CadViet.png

    • Like 2

  10. 1. Chọn đường line. Nhấn Ctrl+1 xem Property của line đấy, xem mục "Color"  có phải là "By Layer" không ? 

    Nếu mới học thì chắc cũng biết bật thanh công cụ "Layer", "Style".... Vậy thì giờ bật thêm thanh công cụ "Property" lên để hiểu rõ.  ( Màu sắc , đường nét các loại...")

    2. Nét vẽ   : Phụ thuộc vào chế độ đặt in: Tìm hiểu trên diễn đàn về cách in ấn:

    3. Cỡ chữ: "Phụ thuộc vào cỡ chữ bên Model và tỷ lệ khung nhìn bên layout.  Vấn đề này cứ tìm hiểu trên diễn đàn về in ấn, rất nhiều.


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

    Cách mình thường làm là dùng lệnh joint các đường, arc  bằng lệnh PE với tham số Fuzz Distance lớn (fuzz distance nhập phải lớn hơn hoặc bằng khoảng các giữa các đầu mút lớn nhất của các đối tượng sẽ nối vào nhau) 

    File ví dụ của mình  bạn làm ok, chọn fuzz distance = 20 

    Bạn dùng Cad đời nào vậy? Có thể chụp cái ảnh màn hình chỉnh thông số Fuzz Distance lên được không ? Tôi dùng Cad 2012, dùng mãi mà không thấy có điều này, 1 Vote cho bạn.


  12. + Bạn đăng bài rất tốt, có tiêu đề, nội dung, trình bày rất rõ ràng. Diễn đàn hoan nghênh bạn điều này :)) 1 Vote luôn.

    + Về thắc mắc của bạn : Nếu bạn dùng máy tính khác thì các vấn đề này đơn giản, ai cũng chỉ cho bạn được. Nhưng với hệ điều hành của Macbook thì bản thân tôi cũng chịu. Do ko dùng và rất ít tiếp xúc. ( Ngay cả Cad 2017 có phần dành riêng cho hệ điều hành Mac cũng là điêù tôi ko biết luôn).

    Đành để các bác khác giúp bạn điều này. ( Nếu có lời khuyên thì tôi khuyến khích bạn sử dụng Cad 2012 hơn, vì nó đơn giản, cài nhẹ nhưng rất ổn )

     


  13. + Định viết lisp. Nhưng chợt nhận ra: "Cần cái méo gì lisp khi Cad đã có Attribute !!". Thế là tìm được cái này. Bạn đọc rồi tự tìm hiểu, nó giải quyết trường hợp cho bạn: 

     

    Ngoài lề: Định ko trả lời nữa, nhưng nếu bạn còn sử dụng diễn đàn thì lập 1 tài khoản mới đi. Cái tên cũ "mayhoigitao", tôi nói thật, nó ko tôn trọng diễn đàn chúng tôi. Chúng tôi có thể xoá tài khoản này nếu mọi người ko trân trọng diễn đàn. Mong bạn tiếp thu điều này.

×