draftsman38751 3 Báo cáo bài đăng Đã đăng Tháng 11 23, 2011 Có bác pro nào giúp viết giúp em lisp như thế này ạh! Yêu cầu lisp là di chuyển các text của dim sang vị trí khác Tên lệnh: nd -chọn 1 dim(hay nhiều dim cùng lúc) -pick 1 điểm phía dưới đường dim thì chữ của dim(nằm trên đường kích thước) sẽ nhảy xuống phía dưới đường dim(thẳng hàng với điểm mình pick)(Nếu di chuyển được sang trái hay phải thì tốt quá) Công việc của em nhiều khi dim phải di chuyển text (số)bằng tay từng cái một.Thanks nhiều lắ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
phamthanhbinh 3.146 Báo cáo bài đăng Đã đăng Tháng 11 23, 2011 Có bác pro nào giúp viết giúp em lisp như thế này ạh! Yêu cầu lisp là di chuyển các text của dim sang vị trí khác Tên lệnh: nd -chọn 1 dim(hay nhiều dim cùng lúc) -pick 1 điểm phía dưới đường dim thì chữ của dim(nằm trên đường kích thước) sẽ nhảy xuống phía dưới đường dim(thẳng hàng với điểm mình pick)(Nếu di chuyển được sang trái hay phải thì tốt quá) Công việc của em nhiều khi dim phải di chuyển text (số)bằng tay từng cái một.Thanks nhiều lắm! Hề hề hế, Chả biết các bác nghĩ sao chứ chơi lisp với thằng dimension này mệt lắm. Theo mình cách thông dụng và dễ dàng là bạn nên vào dimstyle để mà chỉnh sao cho nó vừa ý rồi dim sẽ tốt hơn cả bạn ạ. Việc độ chế dim rất dễ gây hậu quả khó lường. Và cũng chớ có dại dột nổ tung dim ra để chỉnh sửa. Khi đó lúc cần modify bản vẽ sẽ là một cực hình. Hề hề hề, Chúc bạn may mắ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
draftsman38751 3 Báo cáo bài đăng Đã đăng Tháng 11 23, 2011 Hề hề hế, Chả biết các bác nghĩ sao chứ chơi lisp với thằng dimension này mệt lắm. Theo mình cách thông dụng và dễ dàng là bạn nên vào dimstyle để mà chỉnh sao cho nó vừa ý rồi dim sẽ tốt hơn cả bạn ạ. Việc độ chế dim rất dễ gây hậu quả khó lường. Và cũng chớ có dại dột nổ tung dim ra để chỉnh sửa. Khi đó lúc cần modify bản vẽ sẽ là một cực hình. Hề hề hề, Chúc bạn may mắn. Bác phamthanhbinh ơi!Lúc trước em co search trên CV thấy có lisp đổi font cho text của dim ấy!Nên em nghĩ sẽ có cách làm cho text của dim di chuyển theo ý mì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
ketxu 2.984 Báo cáo bài đăng Đã đăng Tháng 11 23, 2011 Có bác pro nào giúp viết giúp em lisp như thế này ạh! Yêu cầu lisp là di chuyển các text của dim sang vị trí khác Tên lệnh: nd -chọn 1 dim(hay nhiều dim cùng lúc) -pick 1 điểm phía dưới đường dim thì chữ của dim(nằm trên đường kích thước) sẽ nhảy xuống phía dưới đường dim(thẳng hàng với điểm mình pick)(Nếu di chuyển được sang trái hay phải thì tốt quá) Công việc của em nhiều khi dim phải di chuyển text (số)bằng tay từng cái một.Thanks nhiều lắm! Làm đượ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
draftsman38751 3 Báo cáo bài đăng Đã đăng Tháng 11 24, 2011 Làm được Vậy bác Ketxu giúp em nhé!Thanks bác nhiều nha! 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
ketxu 2.984 Báo cáo bài đăng Đã đăng Tháng 11 25, 2011 Vậy bác Ketxu giúp em nhé!Thanks bác nhiều nha! Ồ, mình cứ tếu táo vậy thôi. Dạo này bận quá, lên đâm chọt 1 2 câu rồi lại té, k có thời gian đọc kỹ bài của mọi người ^^ Lisp dịch chuyển text dim theo vecto, lệnh mtd : http://www.cadviet.com/upfiles/3/24067_mtd_dich_chuyen_text_dim.rar 2 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
nhatquyelec 1 Báo cáo bài đăng Đã đăng Tháng 11 25, 2011 Xin lỗi mọi người, cho mình mượn đề tài này và hỏi lệch sang một tí nhé Cũng về cái text của Dimention, Mình muốn xuất những cái text này sang Excel được không nhỉ (mình nghĩ chắc phải dùng LIsp rồi) Mình Click chuột phải vào một "Aligned Dimension" để xem thuộc tính thì mình thấy trong mục Text có cái thuộc tính "Mesurement"(nó thể hiện cho cái text đó), và giờ mình muốn làm một Lisp, khi Click chọn vào các "Aligned Dimension" thì nó sẽ xuất các "Mesurement" của các "Aligned Dimension" đã chọn sang Excel (lưu ý là phải theo thứ tự đã chọn) Mình chỉ biết cái hướng là như vậy thôi chứ cũng không biết phải viết như thế nào, mong mọi người giúp đỡ 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
Doan Van Ha 3.191 Báo cáo bài đăng Đã đăng Tháng 11 25, 2011 Xin lỗi mọi người, cho mình mượn đề tài này và hỏi lệch sang một tí nhé Cũng về cái text của Dimention, Mình muốn xuất những cái text này sang Excel được không nhỉ (mình nghĩ chắc phải dùng LIsp rồi) Mình Click chuột phải vào một "Aligned Dimension" để xem thuộc tính thì mình thấy trong mục Text có cái thuộc tính "Mesurement"(nó thể hiện cho cái text đó), và giờ mình muốn làm một Lisp, khi Click chọn vào các "Aligned Dimension" thì nó sẽ xuất các "Mesurement" của các "Aligned Dimension" đã chọn sang Excel (lưu ý là phải theo thứ tự đã chọn) Mình chỉ biết cái hướng là như vậy thôi chứ cũng không biết phải viết như thế nào, mong mọi người giúp đỡ Tôi nhớ là đã viết giùm bạn nào đó cái y/c này rồi nhưng bây giờ mò đường link không ra nên đành post lên lại cho bạn vậy. ;Doan Van Ha - CADViet.com. Xuat Text, Mtext, Dimension ra file. (defun C:HA( / lst fn fw index x y z txt) (princ "\nChon cac Text/Mtext/Dimension can xuat ra file...") (setq lst (acet-ss-to-list (ssget '((0 . "*TEXT,DIMENSION")))) fn (getfiled "Chon file de save" "" "csv" 1) fw (open fn "w") index 0 x 1 y 1 z 1) (repeat (length lst) (cond ((= (cdr (assoc 0 (entget (nth index lst)))) "TEXT") (setq txt (strcat (cdr (assoc 1 (entget (nth index lst)))) "," "text" (itoa x)) x (1+ x))) ((= (cdr (assoc 0 (entget (nth index lst)))) "MTEXT") (setq txt (strcat (cdr (assoc 1 (entget (nth index lst)))) "," "mtext" (itoa y)) y (1+ y))) ((= (cdr (assoc 0 (entget (nth index lst)))) "DIMENSION") (if (= (cdr (assoc 1 (entget (nth index lst)))) "") (setq txt (strcat (rtos (cdr (assoc 42 (entget (nth index lst))))) "," "dim" (itoa z)) z (1+ z)) (setq txt (strcat (cdr (assoc 1 (entget (nth index lst)))) "," "dim" (itoa z)) z (1+ z))))) (princ (strcat txt "\n") fw) (setq index (1+ index))) (close fw)) 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
bach1212 4 Báo cáo bài đăng Đã đăng Tháng 11 26, 2011 Tôi nhớ là đã viết giùm bạn nào đó cái y/c này rồi nhưng bây giờ mò đường link không ra nên đành post lên lại cho bạn vậy. ;Doan Van Ha - CADViet.com. Xuat Text, Mtext, Dimension ra file. (defun C:HA( / lst fn fw index x y z txt) (princ "\nChon cac Text/Mtext/Dimension can xuat ra file...") (setq lst (acet-ss-to-list (ssget '((0 . "*TEXT,DIMENSION")))) fn (getfiled "Chon file de save" "" "csv" 1) fw (open fn "w") index 0 x 1 y 1 z 1) (repeat (length lst) (cond ((= (cdr (assoc 0 (entget (nth index lst)))) "TEXT") (setq txt (strcat (cdr (assoc 1 (entget (nth index lst)))) "," "text" (itoa x)) x (1+ x))) ((= (cdr (assoc 0 (entget (nth index lst)))) "MTEXT") (setq txt (strcat (cdr (assoc 1 (entget (nth index lst)))) "," "mtext" (itoa y)) y (1+ y))) ((= (cdr (assoc 0 (entget (nth index lst)))) "DIMENSION") (if (= (cdr (assoc 1 (entget (nth index lst)))) "") (setq txt (strcat (rtos (cdr (assoc 42 (entget (nth index lst))))) "," "dim" (itoa z)) z (1+ z)) (setq txt (strcat (cdr (assoc 1 (entget (nth index lst)))) "," "dim" (itoa z)) z (1+ z))))) (princ (strcat txt "\n") fw) (setq index (1+ index))) (close fw)) Lisp của bạn rất tuyệt Mình thử dùng "ha" cho các text có nội dung như này: D400,L30. Nó là đường kính cống tròn và chiều dài của nó.Cũng xuất ra được excel gồm 2 cột là 2 text D400 và L30 Bạn có cách nào lọc được các số 30 sau chữ L rồi tính tổng của chúng => kết quả vừa hiện trên dòng command vừa có lựa chọn thay vào 1 text có sẵn trên bản vẽ luôn không? Giúp mình với. Mình cần lấy tổng chiều dài của nhiều đoạn cống đã được ghi chú như thế mà không phải cộng tay từng đoạn một.Thanks trước 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
phamthanhbinh 3.146 Báo cáo bài đăng Đã đăng Tháng 11 26, 2011 Lisp của bạn rất tuyệt Mình thử dùng "ha" cho các text có nội dung như này: D400,L30. Nó là đường kính cống tròn và chiều dài của nó.Cũng xuất ra được excel gồm 2 cột là 2 text D400 và L30 Bạn có cách nào lọc được các số 30 sau chữ L rồi tính tổng của chúng => kết quả vừa hiện trên dòng command vừa có lựa chọn thay vào 1 text có sẵn trên bản vẽ luôn không? Giúp mình với. Mình cần lấy tổng chiều dài của nhiều đoạn cống đã được ghi chú như thế mà không phải cộng tay từng đoạn một.Thanks trước nhé Hề hề hề, Cách thì nhiều lắm nhưng bạn ưng cách chi??? Đây là một cách mà bạn có thể ứng dụng ngay cái lisp của bác DoanVanHa là chỉ cần bạn thêm một dấu phẩy vào sau ký tự L rồi chạy lisp là nó sẽ xuất cái số 30 thành một cột nằm sau cột chứa ký tự L. Rồi tùy bạn muốn chém hay mổ nó thế nào cũng được. Hề hề hề. 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
draftsman38751 3 Báo cáo bài đăng Đã đăng Tháng 11 26, 2011 Ồ, mình cứ tếu táo vậy thôi. Dạo này bận quá, lên đâm chọt 1 2 câu rồi lại té, k có thời gian đọc kỹ bài của mọi người ^^ Lisp dịch chuyển text dim theo vecto, lệnh mtd : http://www.cadviet.c...en_text_dim.rar Thanks bac Ketxu phát nha!lisp này đúng ý em rồi.nhưng file bác gửi ko phải la .lsp nên cũng hơi bất tiện.Vì em muốn gộp các file lisp mình hay dùng chung vào 1 chỗ ý 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
ketxu 2.984 Báo cáo bài đăng Đã đăng Tháng 11 26, 2011 Thanks bac Ketxu phát nha!lisp này đúng ý em rồi.nhưng file bác gửi ko phải la .lsp nên cũng hơi bất tiện.Vì em muốn gộp các file lisp mình hay dùng chung vào 1 chỗ ý mà! Cái này thực chất cũng chỉ dùng command, n mình k public ^^, nếu bạn thích thì gửi file lisp của bạn cho mình, mình giúp gộp lại trong 1 file vlx toa ^^ 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
phamquoctuan 0 Báo cáo bài đăng Đã đăng Tháng 11 26, 2011 nhân tiện nói chuyện về dim, các anh cho em hỏi chút, trước em đã từng dùng cái lisp, gần giống cutdim nhưng mà là điều chỉnh vị trí đường ghi số kích thước chứ khôg phải đường gióng kích thước, ai biết chỉ giùm em được không ạ, cám ơn rất nhiều các anh quản trị tha tội cho e lần này nhé, 1 lần thô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
ketxu 2.984 Báo cáo bài đăng Đã đăng Tháng 11 26, 2011 Gọi là lisp gióng dim, mình nghĩ bạn tìm trên diễn đàn hoặc GG sẽ thấy ^^ 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
phamquoctuan 0 Báo cáo bài đăng Đã đăng Tháng 11 26, 2011 Anh MOD ah, tìm trên dd hay google đều không ra ( http://www.google.com.vn/search?q=lisp+giong+dim&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a#sclient=psy-ab&hl=vi&client=firefox-a&hs=OJN&rls=org.mozilla:en-US%3Aofficial&source=hp&q=lisp+gi%C3%B3ng+dim&pbx=1&oq=lisp+gi%C3%B3ng+dim&aq=f&aqi=&aql=&gs_sm=e&gs_upl=20644l29252l0l29797l18l11l5l0l0l2l337l2848l2-9.2l13l0&bav=on.2,or.r_gc.r_pw.,cf.osb&fp=c9e6ba04769cc936&biw=1440&bih=836) anh giúp em vớ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
ketxu 2.984 Báo cáo bài đăng Đã đăng Tháng 11 26, 2011 Anh MOD ah, tìm trên dd hay google đều không ra ( http://www.google.co...iw=1440&bih=836) anh giúp em với ạ! Mình có cả tên và Nick bạn ạ http://www.cadviet.com/forum/index.php?showtopic=53990 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
phamquoctuan 0 Báo cáo bài đăng Đã đăng Tháng 11 27, 2011 em xin nhận lỗi về khoản xưng hô, khi đó em vội quá, cám ơn anh ketxu 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
bach1212 4 Báo cáo bài đăng Đã đăng Tháng 11 28, 2011 Hề hề hề, Cách thì nhiều lắm nhưng bạn ưng cách chi??? Đây là một cách mà bạn có thể ứng dụng ngay cái lisp của bác DoanVanHa là chỉ cần bạn thêm một dấu phẩy vào sau ký tự L rồi chạy lisp là nó sẽ xuất cái số 30 thành một cột nằm sau cột chứa ký tự L. Rồi tùy bạn muốn chém hay mổ nó thế nào cũng được. Hề hề hề. Dấu phẩy chỉ được phép trước chữ L thui mà bạn. Đó là cách ghi chú của bản vẽ rồi, không được sửa. Mình cần kết quả có thể thể hiện ngay trên bản vẽ cad như đã yêu cầu, mà không cần mất các thao tác lưu ra excel rùi lại mở excel lên cộng vào mới biết kết quả được. Hề hề, bạn có cách rùi thì làm giúp mình như yêu cầu đi 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
ketxu 2.984 Báo cáo bài đăng Đã đăng Tháng 11 28, 2011 Dấu phẩy chỉ được phép trước chữ L thui mà bạn. Đó là cách ghi chú của bản vẽ rồi, không được sửa. Mình cần kết quả có thể thể hiện ngay trên bản vẽ cad như đã yêu cầu, mà không cần mất các thao tác lưu ra excel rùi lại mở excel lên cộng vào mới biết kết quả được. Hề hề, bạn có cách rùi thì làm giúp mình như yêu cầu đi mà. Bạn xem lại nội quy box. Chỉ lời diễn tả suông sẽ không khiến mọi người có hứng thú để giúp bạn. Ở đây ít nhất bạn cũng phải có cái file để người ta test khi viết 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
phamthanhbinh 3.146 Báo cáo bài đăng Đã đăng Tháng 11 28, 2011 Dấu phẩy chỉ được phép trước chữ L thui mà bạn. Đó là cách ghi chú của bản vẽ rồi, không được sửa. Mình cần kết quả có thể thể hiện ngay trên bản vẽ cad như đã yêu cầu, mà không cần mất các thao tác lưu ra excel rùi lại mở excel lên cộng vào mới biết kết quả được. Hề hề, bạn có cách rùi thì làm giúp mình như yêu cầu đi mà. Hề hề hề, 1/- Cần gì thì hãy post bản vẽ lên. 2/- Ai cấm bạn thêm vào rồi sau khi add vào Excel lại xóa đi, bản vẽ vẫn gin. 3/- Bạn cần cách chi, mình có nhiều cách nên chả biết chọn cách chi cho phù hợp với sự khó tính của 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
nhatquyelec 1 Báo cáo bài đăng Đã đăng Tháng 11 29, 2011 Bạn "Doan Van Ha" ơi, Cái Lisp "ha" của bạn mình tải về rồi nhưng chạy sao khong được nơi, Đánh "ha" vào rồi thì nó bảo chọn đối tượng, mình chọn các Aligned Dimension, sau đó enter, thì không thấy gì cả ?? sao vậy hè 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
bach1212 4 Báo cáo bài đăng Đã đăng Tháng 11 30, 2011 Hề hề hề, 1/- Cần gì thì hãy post bản vẽ lên. 2/- Ai cấm bạn thêm vào rồi sau khi add vào Excel lại xóa đi, bản vẽ vẫn gin. 3/- Bạn cần cách chi, mình có nhiều cách nên chả biết chọn cách chi cho phù hợp với sự khó tính của bạn. Hic, cho em sory 2 bác phamthanhbinh và ketxu nhé vì không post bản vẽ lên. File bản vẽ của em đây ah: http://www.cadviet.c...nh_do_tnm_2.rar Em hứa sẽ bắt đầu học lisp để có thể.....lại được chào hỏi các bác nhiều hơn. :D. Hic, mấy câu lệnh với code để viết lisp là e dốt lém ah. Yêu cầu em nêu ra vẫn là: không cần thêm bớt gì nữa cũng như không phải thao tác trên excel nữa bác ah, mà dùng lisp để thao tác trực tiếp trên cad để cho ra được tổng của các số sau chữ L trong chuỗi text có dạng: D600,L40 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
Doan Van Ha 3.191 Báo cáo bài đăng Đã đăng Tháng 12 1, 2011 Bạn "Doan Van Ha" ơi, Cái Lisp "ha" của bạn mình tải về rồi nhưng chạy sao khong được nơi, Đánh "ha" vào rồi thì nó bảo chọn đối tượng, mình chọn các Aligned Dimension, sau đó enter, thì không thấy gì cả ?? sao vậy hè Sau khi enter và bị lỗi, bạn bấm F2 và lấy kết quả đó paste lên đây xem lỗi gì, và Cad của bạn đã cài Express tool chưa hè? 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
840244 0 Báo cáo bài đăng Đã đăng Tháng 12 8, 2011 Chủ đề này rất hay, và rất hữu ích. Các anh trên diễn đàn viết lisp này để anh em cùng dùng được 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
gia_bach 1.549 Báo cáo bài đăng Đã đăng Tháng 12 8, 2011 Hic, cho em sory 2 bác phamthanhbinh và ketxu nhé vì không post bản vẽ lên. File bản vẽ của em đây ah: http://www.cadviet.c...nh_do_tnm_2.rar Em hứa sẽ bắt đầu học lisp để có thể.....lại được chào hỏi các bác nhiều hơn. . Hic, mấy câu lệnh với code để viết lisp là e dốt lém ah. Yêu cầu em nêu ra vẫn là: không cần thêm bớt gì nữa cũng như không phải thao tác trên excel nữa bác ah, mà dùng lisp để thao tác trực tiếp trên cad để cho ra được tổng của các số sau chữ L trong chuỗi text có dạng: D600,L40 Thường thì những yêu cầu "chen ngang" như vầy ít đuợc mọi nguời quan tâm. Tuy nhiên để động viên bạn bắt đầu học lisp và hơn nữa .. nick của bạn có 1 phần giống nick của tui ... :) Mời bạn tham khảo : (defun c:ctext(/ e i kqua num obj ss ssle tmp str zero); Calculator (vl-load-com) (or ssle (setq ssle 2)) (setq tmp (getint (strcat "\nSo so le <" (itoa ssle) ">: "))) (if tmp (setq ssle tmp)) (prompt "\nChon text de Cong:") (if (setq ss (ssget (list (cons 0 "TEXT")(cons 1 "*L*")))) (progn (setq kqua 0 i -1) (while (setq e (ssname ss (setq i (1+ i)))) (setq str (vla-get-TextString (vlax-ename->vla-object e) ) num (substr str (+ 2(vl-string-position (ascii"L") str nil t) ))) (if (setq num (distof num)) (setq kqua (+ kqua num)))) (setq zero (getvar "dimzin")) (setvar "dimzin" 0) (princ (strcat "\nKet qua = " (setq kqua (rtos kqua 2 ssle)) "")) (if (and (setq obj (entsel "\nChon text de ghi ket qua hay Enter de ket thuc.")) (setq obj (vlax-ename->vla-object (car obj))) (eq (vlax-get obj 'ObjectName) "AcDbText") ) (vla-put-TextString obj kqua) ) (setvar "dimzin" zero))) (princ)) Ps : Cách giữ lời hứa tốt nhất là 'Đừng hứa gì cả" 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