Đến nội dung


ketxu

Đăng ký: 17 Nov 2008
Offline Đăng nhập: Hôm qua, 03:47 PM
****-

#411526 Scale Đối Tượng

Posted by ketxu trong 09 December 2016 - 10:41 AM

CAD không chấp nhận nhập phân số mà tử và mẫu ở dạng số thực bác Hạ ơi ^^
Còn chủ OP nói lúc được lúc không khi nhập phân số dạng số nguyên / số nguyên là hoàn toàn chưa có kiểm chứng, ket chưa thấy bao giờ không được
  • 1


#410849 [Nhờ Viết Lisp] Dim Nhanh Giữa Các Line (Hoặc Pl)

Posted by ketxu trong 23 November 2016 - 09:04 AM

Câu hỏi của bạn hoặc là mâu thuẫn hoặc thiếu số liệu. Bạn nhìn hình của bạn xem có bao nhiêu đáp án ?
  • 1


#410674 Vẽ đường hàn

Posted by ketxu trong 17 November 2016 - 03:39 PM

Bạn nghiên cứu lệnh MKLTYPE thuộc bộ Express nhé
  • 1


#410665 Vẽ đường hàn

Posted by ketxu trong 17 November 2016 - 11:46 AM

Bên model không phải là đường đơn bình thường, mà là nó là đường có nét hàn, tuy nhiên tỉ lệ linetype scale quá bé để bạn nhận ra. Bạn chọn vào nó, ấn Ctrl 1, chỉnh phần Linetype Scale to lên bạn sẽ hiểu. Từ bài rep đến giờ mình chưa nói 1 tí nào đến từ DIM
  • 1


#409938 Lisp Tạo Text

Posted by ketxu trong 01 November 2016 - 04:12 PM

Bản thân ket suy nghĩ mãi chưa ra lý do để sử dụng lisp này, mặc dù bác quocmanh đã rất kỳ công cho nó. Làm hẳn 1 tool pallette cho nó có phải nhàn hơn không :D


  • 1


#409743 Xin Lisp Gióng Thẳng Hàng Đối Tượng

Posted by ketxu trong 28 October 2016 - 11:16 AM

Hơi khác yêu cầu của bạn một chút, bạn lấy về dùng tạm cũng được
http://www.cadviet.c...tuong/?p=123433

 

Đến bao giờ bạn có quy luật đầy đủ cho việc thế nào gọi là sắp xếp thẳng hàng thì mình sẽ viết giúp bạn, không hề khó :)


  • 1


#409730 Xin Lisp Tự Động Đo Chiều Dài Nhiều Line (Ko Tính Tổng)

Posted by ketxu trong 28 October 2016 - 08:57 AM

Quick code cho bạn :

(defun c:qdd(/ s sp 3d i dxf rAng rSup e obj) (vl-load-com)
;Quick dim Lines @ketxu 10/2016
(cond
	((setq s (ssget '((0 . "LINE")))) 
	(setq 	sp	(vlax-get (setq ac (vla-get-activedocument (vlax-get-acad-object)))
					(if (> (vla-get-activespace  ac) 0) 'ModelSpace 'PaperSpace)) 
			3d vlax-3d-point
			i -1
			dxf (lambda(i e)(cdr (assoc i (entget e))))
			rAng (lambda(a)(if (and (> a (/ pi 2.)) (<= a (* pi 1.5)))(+ a pi) a))
			rSup (lambda(p)(vlax-put-property obj p 1))
			
	)
	(while (setq e (ssname s (setq i (1+ i))))
			(setq obj 
				(vla-adddimaligned sp 
					(3d (setq p1 (dxf 10 e))) 
                    (3d (setq p2 (dxf 11 e)))     
					(3d (polar p1 (+ (angle p1 p2) (/ pi 2.)) 0))
                )			
			)
			(vla-put-Textrotation obj (rAng (angle p1 p2)))
			(vla-put-TextOverride obj "<>\\P   ")
			(mapcar 'rSup '(DimLine1Suppress DimLine2Suppress ExtLine1Suppress ExtLine2Suppress))
	)	
)
))

  • 1


#409522 [Share] Fonts CAD; 1463 fonts SHX - 2 lúa.

Posted by ketxu trong 24 October 2016 - 04:14 PM

Bác lúa cập nhật link này giúp ket với, ket cần 1 2 loại trong này mà gg từ trưa đến giờ vẫn trật @@


  • 1


#408912 Post Bài Không Thấy Tập Tin Đính Kèm Hoặc Đoạn Lisp Phía Sau.

Posted by ketxu trong 13 October 2016 - 05:25 PM

Mod k giải quyết được vấn đề này bạn nhé :(


  • 1


#408887 Nhờ Viết Lisp Cộng Các Số Trong Text (Hoặc Mtext) Và Output Sang Một Mtext Khác

Posted by ketxu trong 13 October 2016 - 02:40 PM

Quick code xem bạn dùng cái nào thì dùng ^^
Vanilla lisp
(defun c:al(/ s kq i)
(while (not (setq s (ssget (list (cons 0 "*TEXT"))))))
(setq kq 0 i -1)
(entmake 
	(list (cons 0 "MTEXT")
	(cons 100 "AcDbEntity")
	(cons 100 "AcDbMText")
	(assoc 8 (entget (ssname s 0)))
	(cons 1
		(rtos
		(repeat (sslength s)
			(setq kq (+ kq (cond ((distof (cdr (assoc 1 (entget (ssname s (setq i (1+ i))))))))(0))))	
		))
	)
	(cons 10 (getpoint "\nInsert point :"))
	)
)
(princ))
- Visual lisp :
 
(defun c:vl(/ d s l lr)(vl-load-com)		
	(while (not (ssget (list (cons 0 "*TEXT")))))
	(vlax-for x 
		(setq s (vla-get-activeselectionset (setq d  (vla-get-activedocument (vlax-get-acad-object)))))
		(setq l (cons (cond ((distof (vla-get-textstring x)))(0)) l))
		(or lr (setq lr (vla-get-layer x)))
	)
	(vla-put-layer
		(vla-addmtext 
			(vla-get-block (vla-get-activelayout d))
			(vlax-3d-point (getpoint "\nInsert point :"))
			(getvar 'textsize)
			(rtos (apply '+ l))
		)
		lr
	)
	(and s (not(vla-delete s))(vlax-release-object s))
	(princ)
)
- Hoặc kết hợp với acet
(defun c:acet(/ s)
(entmake 
	(list (cons 0 "MTEXT")
	(cons 100 "AcDbEntity")
	(cons 100 "AcDbMText")	
	(cons 1 (rtos
		(apply '+ (mapcar '(lambda(x)(cond ((distof (acet-dxf 1 (entget x))))(0))) (acet-ss-to-list (setq s (ssget (list (cons 0 "*TEXT"))))))))
	)
	(assoc 8 (entget (ssname s 0)))
	(cons 10 (getpoint "\nInsert point :"))
	)
)
(princ))
Lưu ý với bạn là các code trên (kể cả của bác Bee đều k tính đến trường hợp đối tượng chọn là các Mtext có kèm mã như mã xuống dòng, layẻ, màu sắc, chiều cao ....
  • 1


#408597 [Lisp] Tạo Block Siêu Nhanh

Posted by ketxu trong 08 October 2016 - 09:16 AM

- : lệnh ở phiên bản không hộp thoại
_ : lệnh ở phiên bản tiếng Anh

Nếu bạn cần code thì quick code đây :

(defun c:QB (/ ss n p)
	(while (and (setq n (getstring T "\Block name :"))(tblsearch "BLOCK" n)))
	(setq ss (ssget "_:L"))
	(setq p (getpoint "\n Specify insertion point :"))
	(vl-cmdf "_.-Block" n "_non" p ss "")
	(vl-cmdf "_.-insert" n "non" p "" "" "")
	(princ)
)

  • 1


#407697 [Yêu Cầu] Lisp Bỏ Bớt Đỉnh (Vertex) Polyline.

Posted by ketxu trong 16 September 2016 - 02:35 PM

Bác sặc cái gì thế ạ?
Em có ngu thì em mới lên đây hỏi chứ!
Em xin file .lsp là để sửa cái lệnh cho nó ngắn lại thôi.

Mình k nói đến chuyện khôn hay k khôn, ý mình là người ta viết ra, đương nhiên có mã, có điều có muốn gửi mã hay k thôi :)
  • 1


#406900 Export Dữ Liệu Các Bảng Table Trong Cad Sang Excel

Posted by ketxu trong 30 August 2016 - 05:22 PM

Thế bạn bỏ cả hàm check sheet name exist và đoạn for each để đặt biến rn nhé.
  • 1


#406882 Export Dữ Liệu Các Bảng Table Trong Cad Sang Excel

Posted by ketxu trong 30 August 2016 - 02:20 PM

Quick Modify để bạn dùng tạm, lâu k động đến VBA giờ edit cũng khó chứ đừng nói code ^^ Mà mình thấy giải pháp trên mạng cũng kha khá mà

http://www.cadviet.c...port_tables.rar
 


  • 1


#406125 Nhờ Chỉnh Sửa Lisp Cộng Giá Trị Text Của Vật Tư Ngành Nước

Posted by ketxu trong 14 August 2016 - 11:48 AM

Ket thấy có quá nhiều yêu cầu dạng này rồi. Chỉ cần sử dụng lệnh Dataextraction + vài thủ thuật nhỏ bên Excel là có thể có bảng thống kê toàn diện, k hiểu tại sao các bạn làm bên thống kê lại "quên" lệnh này đi mà thích yêu cầu lisp :)

Hơn nữa, khi vẽ cần chuẩn hóa / phân loại dữ liệu đầu vào để sau này trích xuất dữ liệu, nếu các bạn làm tốt thì công việc thống kê cực kỳ dễ dàng. Ví dụ như mỗi loại ống vẽ bằng 1 layer, hay mỗi loại ghi chú cho chiều dài nằm ở 1 layer hoặc 1 att mang giá trị khác nhau ....Chứ kiểu chữa cháy này thì 1 yêu cầu còn phát sinh nhiều yêu cầu tương tự


  • 1