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

Lisp Dim hàng loạt (dim qua giao cắt, block, bán kính, vát góc, ...)

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

Vào lúc 8/5/2024 tại 10:40, Duong Nhat Duy đã nói:

Gửi đến các bạn 1 lisp Dim tự động, có thể dim hàng loạt các đối tượng theo các yêu cầu đề bài khác nhau (ví dụ: dim qua giao cắt, block; dim bán kính, vát góc; ...)

Tên lệnh:

     DIMTL - Thiết lập (Dimstyle, layer, khoảng cách chữ đến chân dim, ...)

     DIMLA - Thiết lập dim tự động theo layer

     DA1 - Dim chiều dài các đối tượng riêng lẻ

     DA2 - Dim chiều dài các đối tượng qua giao điểm, điểm đặt Block

     DA3 - Dim chiều dài các đối tượng qua các điểm tùy chọn

     DQ1 - Dim chiều dài giữa 2 đầu đối tượng (tổng chiều dài từng đối tượng)

     DQ2 - Dim chiều dài giữa 2 đầu đối tượng (tổng chiều dài từng đối tượng)

     DB1 - Dim khoảng cách giữa các Block

     VG - Dim vát góc

     DAR1 - Dim chiều dài cung

     DRA1 - Dim bán kính cung

     DLI1 - Dim Linear qua các giao điểm giữa 2 điểm chọn

     DAL1 - Dim Aligned qua các giao điểm giữa 2 điểm chọn

     DCD - Dim khoảng cách giữa 2 điểm chọn

     ?? - Hiển thị bảng tên lệnh

 

Hướng dẫn chi tiết các lệnh:

image.thumb.png.a4a0ddf943f522607435330ba74d6a7b.png

 

Hướng dẫn thiết lập

- DIMTL: Thiết lập thông số

Có thể bỏ qua, lisp sẽ tự động lấy theo các giá trị mặc định

DIMTL.png.f658ab39477e4d2f63e5f02eeb4b9636.png

 

   + Khoảng cách offset: Khoảng cách từ chân dim đến đỉnh dim

Áp dụng cho tất cả các lệnh dim, trừ những lệnh chỉ định trực tiếp đỉnh dim như: DLI1, DAL1

DIMTL_OBJ.png.6e12c4d4def10202dbbd9ac1ac575bf9.pngDIMTL_OBJ_UCS.png.f8817aae5fb6d30bf9ccfe8325a813e7.png

 

   + Khoảng giữa các dim: Khoảng cách giữa dim thành phần và dim tổng. Áp dụng cho các lệnh: DLI1, DAL1

   + Sai số khoảng cách: Sai số để nhận biết giao điểm, nên nhập xấp xỉ cao chữ. Áp dụng cho các lệnh DA2, DA3

   + Các giá trị tối thiểu, tối đa: Nếu khoảng cách cần dim vượt quá các giá trị này thì sẽ không dim

 

- DIMLA: Thiết lập dim tự động

Style, layer, tiền tố, hậu tố của dim tùy biến theo layer của các đối tượng cần dim

DIMLA.gif.00bec36375907a4a56d06e93edcd334a.gif

 

Ví dụ minh họa:

- DA1: Dim chiều dài các đối tượng riêng lẻ (Line, Pline, Arc), cong dim cong, thẳng dim thẳng

DA1.png.e43a6e4ea17a1401b6a85b16771d3294.png

 

- DA2: Dim chiều dài các đối tượng qua giao điểm, điểm đặt Block

(ngoài ra dim tự động ngắt tại đỉnh pline)

DA2.png.de120c36b8561d2001b9998c7f65a797.png

 

- DA3: Dim chiều dài các đối tượng qua các điểm tùy chọn

(vị trí ngắt dim có thể chọn 1 hoặc nhiều các option bên dưới)

DA3.png.78f6721acc54acbd88fbe226cc95718a.png

 

- DQ1, DQ2: Dim chiều dài giữa 2 đầu đối tượng (tổng chiều dài từng đối tượng)

Lưu ý: ở ví dụ bên dưới, kiểu dim hiện hành là dim không có "Dim line 2" nên trông giống như mũi tên, bản chất vẫn là dim bình thường. Lệnh DQ2 có tác dụng đảo ngược hướng mũi tên này. Ngoài ra, nếu dùng các kiểu dim thông thường thì 2 lệnh này cho ra 1 kết quả như nhau.

DQ1.png.9265e884401a80d1f1ceccb1124703aa.pngDQ2.png.6c0148fad50a36eeca686d11a8656c2e.png

 

- DB1: Dim khoảng cách giữa các Block

Có thể lựa chọn thứ tự từ trên xuống dưới, phải qua trái, thứ tự pick chọn,...

DB1.png.b308f31d179cede1f6213b0c98b607b8.png

 

- VG: Dim vát góc

Lưu ý nhập chiều dài vát góc tối đa trong lệnh TL, để tránh dim nhầm các vị trí không phải vát góc

VG.png.11f9a1dd6e9a485a1cbb244e8e83cabd.png

 

- DAR1: Dim chiều dài cung (dùng cho cả Arc và Pline có chứa cung)

DAR1.png.15aa7b7d9f791214dc2efe347e78da4a.png

 

- DRA1: Dim bán kính cung (dùng cho cả Arc và Pline có chứa cung)

Lưu ý khai báo bán kính tối thiểu, tối đa trong lệnh TL

DRA1.png.1b103e20767a966b0011fdcbbd0aaaf4.png

 

- DLI1: Dim Linear qua các giao điểm giữa 2 điểm pick chọn

DLI1.png.f7b9527961021046b86779eb004f039c.png

 

- DAL1: Dim Aligned qua các giao điểm giữa 2 điểm pick chọn

Lưu ý: ở ví dụ bên dưới, muốn dim theo phương vuông góc với các đường màu xanh, ta bắt điểm vuông góc với nó là được

DAL1.png.1714c466c052531035b069e300988bf7.png

 

- DCD: Dim khoảng cách giữa 2 điểm pick chọn.

Lệnh này thì đơn giản không có gì để mô tả :)). Lưu ý: có thể nhập khoảng cách điểm thứ 2 so với điểm thứ nhất tùy ý.

 

Lưu ý:

Lisp khá đồ sộ nên mình không share mã nguồn.

Để sử dụng lisp các bạn vui lòng gửi Mã máy (thông báo hiện lên ngay sau khi load lisp), có thể gửi trên forum hoặc qua zalo mình: 0922161194.

Mã máy sau khi được kích hoạt là có thể dùng được ngay, ai gửi mã mà chưa thấy mình phản hồi thì thỉnh thoảng cứ load thử lại lisp, dùng được nghĩa là mình đã kích hoạt rồi.

Hiện tại các bản có thể dùng thử free toàn bộ tính năng, nếu ưng ý thì có thể mua vĩnh viễn.

 

Link download:

https://drive.google.com/drive/u/1/folders/1tAt7uRmllwFAd0UJf6hf-5FnzAI55IDA

 

Change log:

- v1.00 (16/11/23): Phiên bản đầu tiên

- v1.01 (10/04/24):
   + TL: Sửa lại giao diện bảng thiết lập dễ dùng hơn

- v1.02 (29/04/24):
   + Thêm lệnh: DLI1, DAL1, DB1
   + DCD: Sửa lỗi không nhập được khoảng cách

- v1.03 (22/07/24):
   + Sửa lỗi không nhận key

- v1.04 (15/08/24):
   + Sửa tên lệnh: TL->DIMTL; TLD->DIMLA để hạn chế trùng tên lệnh với một số lisp khác
   + Miễn phí sử dụng các lệnh: DLI1, DAL1, DB1

- v1.05 (16/09/24):
   + Sửa lỗi không hiển thị mã máy

 

Chúc các bạn thành công :)))

 

Bác cho mình xin key nhé. Cảm ơn bác nhiều. Mã máy mình: LKD288R012225

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

Dạ bác ơi, bác có thể thêm tính năng dim khoảng cách giữa 2 polyline cứ mỗi độ rộng khác nhau 1 dim như hình dưới được không ạ.
Mong bác phản hồi.
 image.thumb.png.a3abf80da894e0771e7e3fbf05792861.png 

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
3 giờ trước, AnhKS2 đã nói:

Dạ bác ơi, bác có thể thêm tính năng dim khoảng cách giữa 2 polyline cứ mỗi độ rộng khác nhau 1 dim như hình dưới được không ạ.
Mong bác phản hồi.

Cái này giả sử bạn có thuê chắc mình cũng chưa viết nổi nói gì viết free, trông thế mà lằng nhằng lắm đó bạn.

 

@P/S: mình đã kích hoạt các mã máy bên trên rồi 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
3 giờ trước, Duong Nhat Duy đã nói:

Cái này giả sử bạn có thuê chắc mình cũng chưa viết nổi nói gì viết free, trông thế mà lằng nhằng lắm đó bạn.

 

@P/S: mình đã kích hoạt các mã máy bên trên rồi nhé !

Mong bạn suy nghĩ thử tính khả thi, nếu cần kinh phí thì nhắn giúp mình để mình xem xét có khả năng thuê không. 

Cảm ơn bạn!

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
16 giờ trước, AnhKS2 đã nói:

Mong bạn suy nghĩ thử tính khả thi, nếu cần kinh phí thì nhắn giúp mình để mình xem xét có khả năng thuê không. 

Cảm ơn bạn!

Thì mình đã bảo là chịu rồi còn gì, bạn thử liên hệ các cao nhân trên forum xem sao.

  • 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
52 phút trước, Duong Nhat Duy đã nói:

Thì mình đã bảo là chịu rồi còn gì, bạn thử liên hệ các cao nhân trên forum xem sao.

Vâng ạ. Để mình lập topic hỏi nhờ thử xem sao. Cảm ơn bác ạ!

À tiện thể, cho mình hỏi nhờ, sao mình add lisp bác vào thì không thấy nó hiển thị mã máy ở đâu cả, không biết làm thế nào để sử dụng được vậy bác. Bật bảng lệnh lên cũng không thấy. Mình dùng CADLT 2024.

image.png.2231d86a50f98ebc647daceb5d51dfec.png

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
Khách
Chủ đề này bây giờ đã bị đóng lại để trả lời thêm.

×