


tien2005
-
Số lượng nội dung
504 -
Đã tham gia
-
Lần ghé thăm cuối
-
Ngày trúng
56
Bài đăng được đăng bởi tien2005
-
-
-
Ý bạn là muốn chọn leader, dim có dimstyle A chuyển thành dimstyle B là chuẩn cty ?
-
5 giờ trước, enscap đã nói:Mình tìm được lisp trên 1 web lisp này thay đổi kiểu dim
Nhưng không có phần chọn dim, chỉ hiện lên các dim hiện có.
Vậy nhờ các bạn biết về lisp xem giúp và thêm phần chọn kiểu dim để thay đội .
xin chân thành cám ơn !
(defun c:CHDM (/ sclst dms dmlst dcl_id wri)
(setq dmlst '()
obj (vlax-get-acad-object)
doc (vla-get-activedocument obj)
dms (vla-get-dimstyles doc))
(vlax-for x dms (setq dmlst (cons (vla-get-name x) dmlst)))
(setq dcl_id (vl-filename-mktemp nil nil ".dcl")
wri (open dcl_id "w"))
(foreach x '(
"dimsty : dialog"
"{label = \"DimStyle List\";"
":list_box {key = \"dmstyle\";" "multiple_select = false; height=10;}"
"ok_cancel;"
"}"
)
(write-line x wri))
(setq wri (close wri))
(< 0 (setq dcl-load (load_dialog dcl_id))
(if (not (new_dialog "dimsty" dcl-load))(exit)))
(start_list "dmstyle")(mapcar 'add_list dmlst)(end_list)
(action_tile "dmstyle" "(setq sclst (get_tile \"dmstyle\"))")
(action_tile "accept" "(done_dialog)(setq clk t)")
(action_tile "cancel" "(done_dialog)(setq clk nil)")
(start_dialog)
(unload_dialog dcl-load)
(if clk
(if sclst
(progn
(setq secstl (nth (atoi sclst) dmlst))
(vla-put-activedimstyle doc (vla-item (vla-get-Dimstyles doc) secstl)))))
(princ)) lisp trên của bạn giống như chức năng đã có trên cad
thêm phần chọn kiểu dim để thay đội: chưa rõ ý này. Cần thiết thì đưa hình minh hoạ hoặc file cad mô tả cụ thể
-
-
Vào lúc 3/8/2024 tại 16:19, quanghuy0812 đã nói:Thanks bạn đã chia sẻ lisp.
Mình có cái muốn hỏi là Lisp này không nhận nét in trong cùng folder File Cad muốn in đúng ko bác? Do mình thấy mục Plotstyle chỉ hiện nét in trong thư mục mặc định nét in của Cad
trong mục Plotstyle Bạn chọn ADD Plotstyle rồi chỉ đến thư mục chứa plotstyle của Bạn thì lisp sẽ copy các plotstyle có trong thư mục vào thư mục mặc định của cad, đồng thời cũng hiện trong danh sách chọn của lisp
-
Bạn gửi file và lisp in lên đây để mọi người bắt bệnh cho nhanh
-
2 giờ trước, limfx đã nói:Em tìm ra phương án rồi ạ: Lấy 2 điểm trên đối tượng, kiểm tra khoảng cách đến đường màu tím, nếu bằng nhau thì đường đó song song!
12 phút trước, limfx đã nói:Cẩm ơn a tannguyen291 và amateurday: Thêm kiểm tra góc giữa 2 đường nữa là OK. Thanks!
trên polyline tính góc phức tạp hơn. Có thể kiểm tra thêm khoảng cách: p1p3 = p2p4 và p1p2 = p3p4
-
2 giờ trước, amateurday đã nói:Các bác ạ, tình hình là bản vẽ thường xuyên copy qua lại, dẫn đến việc nhiều nét trùng và lệch nhau tí tẹo (phải zoom 1000x mới thấy).
Khi dùng lisp tính tổng chiều dài thì trùng tè le.
Do đó, nhờ các bác giúp cho công cụ xóa trùng, xóa gần, hoặc giúp đánh dấu vị trí trùng để mò xóa bằng tay (chứ cứ quét đối tượng rồi thấy Properties > 1 rồi xóa thì phải dò từng chỗ mệt quá).
Ví dụ như file kèm là chỉ có 100 đường thôi. Em đã thử Overkill bó tay.
Bạn tìm hiểu lệnh overkill
-
1
-
-
-
3 giờ trước, duy782006 đã nói:Trong thực tế bài toán chia đoạn tường rào theo đường cong là có thiệt. Nhưng mình thì rải đuổi 1 đầu, thiếu đủ anh cuối chịu tuỳ thực tế chứ ít chơi cả 2 đầu chịu lắm, và cũng hiếm khi không đủ lại lấy bên đường thẳng qua vì như vậy mất chút đất của ranh thẳng chủ đầu tư sẽ bắt đền đấy.
@duy782006 thực tế làm hàng rào theo ranh đất là không có vid ranh đất là các đoạn thẳng, chia hàng rào thì phải tính thêm khe lún (khe co dãn) giữa các phân đoạn rào
Vào lúc 24/4/2024 tại 16:40, thuyen mai đã nói:@thuyen mai trong video trên của mình chỉ cần nhập các số liệu: 3 điểm xác định góc, chiều dài đoạn, góc lệch giữa các đoạn liền kề ( hoặc nhập số phân đoạn ). Cách làm của Bạn là vẽ cung tròn rồi chia đoạn trên cung, bánh kính cung tròn để vẽ đã đúng chưa, đầu vào không đúng thì kết quả ra không đúng
@All làm cách nào để đưa video từ youtube vào cadviet mà không phải là đường link
-
15 giờ trước, tien2005 đã nói: -
-
@kul.for98 Bạn chọn "Plot to file" để chọn thư mục lưu file sau khi in (nếu chọn cancel thì file được lưu tại thư mục chứa file CAD)
-
@Duong Nhat Duy Bạn nên dùng hàm vl-filename-mktemp để tạo file dcl, file sẽ tự xóa khi kết thúc lisp. Dùng (getvar 'roamablerootprefix) để tạo file dcl có khả năng sẽ không tạo được file
-
1
-
-
thay dòng lệnh trong DT2: (command "-HATCH" "P" "S") bằng 2 dòng sau:
- (setvar "hpname" "SOLID,N") để cài đặt solid normal
- (command "-HATCH" "A" "I" "Y" "") để chọn island detection
-
1
-
-
Đã cập nhật tại bài #1: thêm các lựa chọn sắp xếp khi in, lưu cấu hình của giao diện ra file (trước khi in Bạn phải chọn máy in, giấy và nét in cho phù hợp), fix lỗi
-
2
-
1
-
-
5 giờ trước, davidbeckkham123 đã nói:đây là lisp IMF
Bạn dùng notepad mở file lisp tìm đến dòng lệnh
xht (+ xht (abs (car (mapcar '- p2 p1))))
rồi sửa thành
xht (+ xht (abs (car (mapcar '- p2 p1))) 1000)
lưu file là được rồi
-
1
-
-
Vào lúc 17/11/2023 tại 23:51, Xuân Lộc đã nói:Bác @tien2005em bị lỗi hiểm thị độ phân giải 4k win 11 ạ. Mong bác fix lỗi hiểm thị và lisp có chế độ đổi ngôn ngữ thuần tiếng việt ko ạ
Bạn chụp màn hình rồi đưa lê đây xem như thế nào. ngôn ngữ thuần Việt dễ bị lỗi hiển thị do ngôn ngữ lisp của CAD
-
(defun getDxfs(lstId en)(vl-remove-if-not '(lambda(x)(vl-position (car x) lstId)) (entget en)))
code trên cũng của cadviet
ex: (getDxfs '(10 42)(car(entsel "\nDoi tuong :")))
kq:( (10 598937.0 1.21987e+006) (42 . 0.0) (10 599034.0 1.21995e+006) (42 . -0.368232) (10 599320.0 1.21995e+006) (42 . 0.0) ....)
-
1
-
-
Vào lúc 29/10/2023 tại 10:17, Tranvu2803 đã nói:Cám ơn a đã chia sẻ lisp rất hay này, e đang có vấn đề khi in nhiều bản vẽ với screening khác nhau thì phải làm sao ạ
Lisp chỉ in các bản vẽ được chọn trong file, không can thiệp vào file định nghĩa nét in *.CTB *.STB
Trong file có nhiều screening thì Bạn cài đặt theo màu, mỗi màu tương ứng với các giá trị screening khác nhau
-
Vào lúc 20/8/2023 tại 10:46, tannguyen291 đã nói:Em đang thử viết một hàm Multi plot theo ý muốn của bản thân.
Đang gặp vấn đề lớn ở hàm (vla-PlotToFile (vla-get-Plot adoc) fileplot)
Nếu chỉ có 1 đối tượng để chọn in thì lisp hoạt động tốt.
Tuy nhiên khi chiếu đến đối tượng thứ 2 để in thì sảy ra hiện tượng máy in trong cad đang hoạt động (máy in chạy nền). Gọi hàm vla-PlotToFile sảy ra lỗi
Em nghĩ rằng cần đợi đến khi plot thứ nhất xong thì mới plot lần thứ 2. nhưng làm sao để biết status plot để đợi
Các bác dùng cách nào để giải quyết vấn đề này chỉ em với.
Bạn chú ý đến biến hệ thống BACKGROUNDPLOT = 0
-
1
-
-
Vào lúc 31/5/2023 tại 11:06, PoTi đã nói:Bác review cách dùng và cách sửa lệnh trong lisp cho e tham khảo với
-
@khuong_qn2003Bạn in theo block? vào trong block kiểm tra xem có đối tượng nào nằm ngoài phạm vi khung tên, chú ý khi dùng chuột chọn các MTEXT sẽ thấy các nút màu xanh bao quanh mtext nằm ngoài phamjvi khung tên
-
2
-
-
@HUY2Knó là 1 chế độ chọn đối tượng trong acad giống như chọn window, cross. Để chọn theo fence thì khi yêu cầu chọn đối tượng bạn nhập chữ F rồi sau đó chon, nó giống như bạn vẽ đương pline. các đối tượng nào bị pline cắt qua và nhìn thấy được trên màn hình thì đối tượng đó được chon
Lỗi MText không đè lên Viewport
trong Sử dụng AutoCAD
Đã đăng · Trả lời báo cáo
@linhnguyen7894 Bạn dùng lệnh TEXTTOFRONT thử xem. Nó đưa các đối tượng text, dim lên trên tất cả các dối tượng khác