Chuyển đến nội dung
Diễn đàn CADViet
Đăng nhập để thực hiện theo  
LuytBui

Kết hợp COPY và ALIGN - Xin giúp đỡ sửa lỗi lisp

Các bài được khuyến nghị

Em đang viết 1 lisp với ý tưởng là kết hợp lệnh COPY và ALIGN nhưng nảy sinh 2 vấn đề:
- một là, thỉnh thoảng đối tượng được copy nhảy sang chỗ khác không rõ nguyên nhân

- hai là, những đối tượng text khi thao tác ngược chiều thì cũng bị lật ngược và không đọc được, liệu có cách nào khắc phục không

Rất mong được các cao nhân giúp đỡ ạ!

capture.gif

cca COPY ALIGN.lsp

  • Vote giảm 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Sai ở đây:

(command    "copy" ss1 "" "D" 0)

Sửa thành:

(command    "copy" ss1 "" "" "")

ALIGN 2D thì bỏ các điểm p3, p31

  • Like 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

@ndtnv Em cảm ơn anh đã trả lời.
Chuyện copy nhảy lung tung làm theo anh đã giải quyết được.
Còn ý thứ hai, giả sử em muốn copy và lật luôn, giống như tay trái lật thành tay phải thì có cách nào không anh. Với các đối tượng hình học thì lật ok, chỉ riêng với text là gặp vấn đề. Em định tách riêng các đối tượng text và "làm gì đó" với dxf của nó để cho lật thêm lần nữa về bình thường. Nhưng chưa biết "làm gì đó" là làm gì.

  • Vote giảm 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
9 phút trước, LuytBui đã nói:

@ndtnv Em cảm ơn anh đã trả lời.
Chuyện copy nhảy lung tung làm theo anh đã giải quyết được.
Còn ý thứ hai, giả sử em muốn copy và lật luôn, giống như tay trái lật thành tay phải thì có cách nào không anh. Với các đối tượng hình học thì lật ok, chỉ riêng với text là gặp vấn đề. Em định tách riêng các đối tượng text và "làm gì đó" với dxf của nó để cho lật thêm lần nữa về bình thường. Nhưng chưa biết "làm gì đó" là làm gì.

Lật của bạn có phải là Mirror không

 

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Khi chiều xoay p1,p2,p3 là CW nhưng p11,p21,p31 là CCW hoặc ngược lại

thì ss2 align 3D nên DXF 210 /= (0 0 1) => Lỗi text

Giải pháp:

Cách 1. Đổi DXF 210 về (0 0 1)

Cách 2. Nên làm mặc dù phức tạp hơn:

Bỏ p3, p31 và thay bằng "" trong lệnh ALIGN

Sau đó hỏi MIRROR ss2 Y/N ? hoặc Y/N/Undo ?

Nếu Y thì MIRROR ss2 qua line qua p11 và vuông góc p11, p21

  • Like 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Vào lúc 11/5/2021 tại 20:36, Doan Nguyen Van đã nói:

Lật của bạn có phải là Mirror không

 

Lúc đầu em tưởng lật với mirror là như nhau. Ý muốn của em là kiểu như mirror bàn tay trái thành bàn tay phải. Nhưng thực tế, dùng lệnh Align thì bàn tay trái nó lật lại cho trùng khớp bàn tay phải nhưng lớp da lại khác nhau ấy ạ.

 

  • Vote giảm 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

@ndtnv Anh giải thích nên em đã hiểu vấn đề hơn chút. Và em quyết định chỉ dừng lại ở align 2D. 
Để làm sang 3D, chưa nói đến việc code mất thời gian, thì thao tác người dùng cũng phức tạp hơn, không bằng dùng thủ công các lệnh khác sẵn có để đạt được cùng mục đích.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
22 phút trước, LuytBui đã nói:

Lúc đầu em tưởng lật với mirror là như nhau. Ý muốn của em là kiểu như mirror bàn tay trái thành bàn tay phải. Nhưng thực tế, dùng lệnh Align thì bàn tay trái nó lật lại cho trùng khớp bàn tay phải nhưng lớp da lại khác nhau ấy ạ.

 

Bạn gửi file lên để mọi người có thể hiểu rõ hơn (file lsp, file cad mẫu lỗi ...)

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
31 phút trước, LuytBui đã nói:

@Doan Nguyen Van em đính kèm file lisp ở dưới cái hình Gif đấy anh. file cad thì cũng chỉ có 1 cái leader 1 cái text thôi, không phải lỗi do file cad đâu ạ

 

Thế này đúng không nhỉ

ezgif.com-video-to-gif.gif.638dac48236d67b2189958a1828218fc.gif

  • Like 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
2 giờ trước, LuytBui đã nói:

@Doan Nguyen Van hay quá anh ơi, anh làm thế nào đấy ạ?

 

Xét các trường hợp các point có thể xảy ra. Có 4 trường hợp

2 point đầu và cuối đều cùng chiều ( Thuận) 

2 point đầu thuận, 2 point sau nghịch

2 point đầu ngịch, 2 point sau ...

Từ các trường hợp đó, lọc ra 2 trường hợp cần mirror 

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Tạo một tài khoản hoặc đăng nhập để nhận xét

Bạn cần phải là một thành viên để lại một bình luận

Tạo tài khoản

Đăng ký một tài khoản mới trong cộng đồng của chúng tôi. Điều đó dễ mà.

Đăng ký tài khoản mới

Đăng nhập

Bạn có sẵn sàng để tạo một tài khoản ? Đăng nhập tại đây.

Đăng nhập ngay
Đăng nhập để thực hiện theo  

×