Chuyển đến nội dung
Diễn đàn CADViet
  • Thông báo

    • Nguyen Hoanh

      CADViet đã hoàn tất nâng cấp   14/09/2017

      Chào các bạn, CADViet đã hoàn tất việc nâng cấp lên phiên bản mới. Tất cả các chức năng đã hoạt động theo kỳ vọng của ban quản trị. Nếu có vấn đề gì cần phản hồi, các bản post ở đây nhé: Trân trọng, Nguyễn Hoành.
Đăng nhập để thực hiện theo  
proconeng86

[yêu cầu] lisp scale dynamic block sao cho dim trong block cũng thay đổi theo

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

Mình có 2 dynamic block như file đính kèm

http://www.cadviet.com/upfiles/3/9928_dynamic_block_cot_thep.dwg

Đây là block ghi chú cốt thép sàn của mình

Mình có tạo thêm mấy attribute để có thể hiển thị chiều dài và số thanh thép bố trí (att trong lớp Defpoint, phía trên đầu hình tròn), như vậy sẽ rất tiện cho thống kê

tuy nhiên có 1 vấn đề đó là khi scale block thì các dim và các distance trong block đó không biến đổi theo, do đó sang tỉ lệ khác thì các att thống kê của mình sẽ bị sai và lại phải tạo 1 cái mới cho tỉ lệ đó, việc này tốn khá nhiều công sức. Đặc biệt phải đổi khung bản vẽ thì bản vẽ cũ của mình coi như vứt đi, không dùng được nữa, phải làm lại mới, đây là nhược điểm rất lớn khi làm block này

Do đó mình muốn nhờ các bạn viết hộ mình 1 lisp mà khi scale các dynamic block của mình thì các dim và các distance trong block cũng bị scale theo

Cám ơn các bạn rất nhiều

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

Mình có 2 dynamic block như file đính kèm

http://www.cadviet.com/upfiles/3/9928_dynamic_block_cot_thep.dwg

Đây là block ghi chú cốt thép sàn của mình

Mình có tạo thêm mấy attribute để có thể hiển thị chiều dài và số thanh thép bố trí (att trong lớp Defpoint, phía trên đầu hình tròn), như vậy sẽ rất tiện cho thống kê

tuy nhiên có 1 vấn đề đó là khi scale block thì các dim và các distance trong block đó không biến đổi theo, do đó sang tỉ lệ khác thì các att thống kê của mình sẽ bị sai và lại phải tạo 1 cái mới cho tỉ lệ đó, việc này tốn khá nhiều công sức. Đặc biệt phải đổi khung bản vẽ thì bản vẽ cũ của mình coi như vứt đi, không dùng được nữa, phải làm lại mới, đây là nhược điểm rất lớn khi làm block này

Do đó mình muốn nhờ các bạn viết hộ mình 1 lisp mà khi scale các dynamic block của mình thì các dim và các distance trong block cũng bị scale theo

Cám ơn các bạn rất nhiều

 

Bạn lạm dựng vô lisp nhiều nhỉ? ^_^

Tại sao không đưa thêm thêm hệ số tỉ lệ (scaleX hoặc scaleY) vô field luôn?

  • Vote tăng 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

Trong mấy ngày gần đây thấy bạn chiếm lĩnh topic Autolisp hơi quá đáng.

Ai cũng có nhu cầu. Nhưng không phải ai cũng rảnh để phục vụ cho 1 người, bởi còn nhiều người khác cũng có những y/c khác.

Hãy vì cộng đồng nhé!

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

Bạn lạm dựng vô lisp nhiều nhỉ? ^_^

Tại sao không đưa thêm thêm hệ số tỉ lệ (scaleX hoặc scaleY) vô field luôn?

 

Ý của bạn rất hay nhưng chỉ áp dụng được với block không có dim thôi, còn block có dim thì ko dc, dim giữ nguyên chiều cao đó, ko thay đổi được

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

Trong mấy ngày gần đây thấy bạn chiếm lĩnh topic Autolisp hơi quá đáng.

Ai cũng có nhu cầu. Nhưng không phải ai cũng rảnh để phục vụ cho 1 người, bởi còn nhiều người khác cũng có những y/c khác.

Hãy vì cộng đồng nhé!

 

Điều này thì mình không đồng ý với bạn Ha lắm

Đúng là đầu tiên mình vì mục đích của mình, mình không phủ nhận điều đó nhưng ngoài ra cũng là vì cộng đồng đó chứ. Người nào chưa biết thì có thể học hỏi cách của mình, người nào biết rồi có thể thảo luận để nâng cao hiểu biết, giúp mọi người cùng tiến bộ, điều đó là rất tốt mà, đó không phải là mục đích của diễn đàn uh.

Thử hỏi ko ai hỏi, ko ai đưa ra ý kiến thì liệu mọi người có tiến bộ được không, diễn đàn còn tồn tại được không

Với lại mình biết ai cũng có công việc riêng, ai cũng bận cả, các bạn có kiến thức rộng về lập trình CAD, giúp mọi người là rất quí rồi, mình cũng chỉ muốn là khi nào rỗi các bạn xem xét giúp chứ có yêu cầu luôn gì đâu

và ai cũng có câu hỏi riêng, câu hỏi nào các bạn thấy được nhiều người quan tâm, có ích cho nhiều người thì các bạn giúp trước, còn lại giúp sau, có vấn đề gì đâu

Chỉnh sửa theo proconeng86

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

Ý của bạn rất hay nhưng chỉ áp dụng được với block không có dim thôi, còn block có dim thì ko dc, dim giữ nguyên chiều cao đó, ko thay đổi được

Bạn sử dụng thử. Lệnh DTL

http://www.cadviet.com/upfiles/3/4652_dtl.zip

  • Vote tăng 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

Bạn sử dụng thử. Lệnh DTL

http://www.cadviet.com/upfiles/3/4652_dtl.zip

 

Cám ơn bạn Tue_NV nhé. Lisp này làm dim trong block đổi được rồi nhưng còn mấy cái distance bên trong block thì chưa đổi được, bạn sửa lại chút cho mình nhé

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

Cám ơn bạn Tue_NV nhé. Lisp này làm dim trong block đổi được rồi nhưng còn mấy cái distance bên trong block thì chưa đổi được, bạn sửa lại chút cho mình nhé

 

Distance của block dynamic (các Linear parameter) thì nó nhận kích thước thật trên bản vẽ. Khi scale thì đã tự động đổi rồi bạn?

Hay ý khác của bạn? Vui lòng nói rõ...........

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

Distance của block dynamic (các Linear parameter) thì nó nhận kích thước thật trên bản vẽ. Khi scale thì đã tự động đổi rồi bạn?

Hay ý khác của bạn? Vui lòng nói rõ...........

 

Ý mình đúng là Linear parameter đó, mình scale thấy nó có biến đổi theo đâu nhỉ.

Bạn để ý mấy cái att ở trên đầu vòng tròn, mình để ở layer Defpoint đó, cái đó là mình chèn field từ Linear parameter. nhưng khi mình scale nó không biến đổi theo mà

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  

×