phamthanhbinh
-
Số lượng nội dung
5864 -
Đã tham gia
-
Lần ghé thăm cuối
-
Ngày trúng
184
Bài đăng được đăng bởi phamthanhbinh
-
-
Cảm ơn Bạn đã quan tâm.
Về vấn đề này thì Bản vẽ mà mình gửi lên sẽ được hiểu như sau:
+ Mặt cắt dọc có cao độ thiết kế của tim đường hầm ( giống tim ống cống vậy)
+ Từ cao độ có trên mặt cắt dọc chúng ta gán vào đường Tim của đường hầm trên mặt bằng ( Chiếu bằng)
+ Khi dựng xong mô hình 3D thì ta có đường hầm (ống cống) đúng theo tuyến thiết kế và độ dốc.
Hề hề hề,
Ý tưởng của bạn đúng rồi. Vấn đề chỉ là bạn sẽ phải tạo đường tim thực tế trong không gian 3D nữa mà thôi. Theo thiển ý của mình thì bạn có thể tạo đường tim này bằng polyline thay thế cho các đoạn cong. Nếu muốn chính xác hơn bạn có thể chia nhỏ các đoạn cong này theo khoảng cách thích hợp là OK. Sau đó bạn có thể sweep thoải mái.
Chúc bạn thành công.
-
1
-
-
đường chéo 80 đó làm s vẽ ạ !! E không biết vẽ mấy đường chéo như vậy !!

Hề hề hề.
Hòa thượng muốn vẽ được như vậy cần phải tu thêm vài tuần Cad nữa ạ.
-
Bác cho em xem tí ... ti code.
Em chưa thấy là em chưa tin ạ,
cái zụ này người trong cuộc thường không tĩnh táo cho lắm, lúc nào cũng nói là "em chả làm gì cả mà nó cứ ...gây hậu quả nghiêm trọng".
Hề hề hề,
Muốn code thì có code đây:
Lưu ý rằng trong hàm (alert ....) nếu thay (itoa (loga2 (1+ i))) bằng hàm (itoa i) sẽ thấy sự khác nhau giữa giá trị của i và số bước đệ quy thực tế.
(defun chua ( a / b b1 b2 b3 b4 ) ;;;;;(setq i 0) (while (not (equal a 6174 0.1)) (setq ;;;;;a (getint "\n Nhap so co 4 chu so: ") b (itoa a) b1 (+ (atoi (substr b 1 1)) 0.1) b2 (+ (atoi (substr b 2 1)) 0.2) b3 (+ (atoi (substr b 3 1)) 0.3) b4 (+ (atoi (substr b 4 1)) 0.4) bls1 (vl-sort (list b1 b2 b3 b4) '(lambda (x y) (>= x y))) bls2 (vl-sort (list b1 b2 b3 b4) '(lambda (x y) (<= x y))) bmax (atoi (strcat (itoa (fix (nth 0 bls1))) (itoa (fix (nth 1 bls1))) (itoa (fix (nth 2 bls1))) (itoa (fix (nth 3 bls1))))) bmin (atoi (strcat (itoa (fix (nth 0 bls2))) (itoa (fix (nth 1 bls2))) (itoa (fix (nth 2 bls2))) (itoa (fix (nth 3 bls2))))) a (- bmax bmin) ) (setq i (1+ i)) (if (>= a 1000) (progn (chua a) ) (progn (if (>= a 100) (setq a (* a 10)) (setq a (* a 100)) ) (chua a) ) ) ) a ) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (defun c:test (/ a i) (setq i 0) (setq a (getint "\n Nhap so tu nhien co 4 chu so: ")) (chua a) (alert (strcat "\n So " (itoa a) " tro thanh So cua chua 6174 sau " (itoa (loga2 (1+ i))) " buoc lap")) ) ;;;;;;;;;;;;;;;;; (defun loga2 ( a / ) (setq i 0) (while (/= a 1) (setq a (/ a 2) i (1+ i) ) ) i )
-
Hề hề hề,
Xin hỏi các bác một vấn đề như sau.
Trong quá trình sử dụng lisp, tôi có gặp một vấn đề là tìm số lần đệ quy để thực hiện được nhiệm vụ yêu cầu. Vì vậy tôi có dùng biến đếm số lần đệ quy, Tuy nhiên kết quả ra rất không đúng. Mày mò mãi mới phát hiện ra rằng cứ mỗi lần thực hiện đệ quy thì cái biến đếm này tăng lên với giá trị 2^n (với n là số lần thực hiện đệ quy).
Thực lòng tôi không hiểu sao lại như vậy nên rất mong các bác có thể giải đáp vì sao lại như vậy.
-
Không phải tiết kiệm lời mà tưởng nói như vậy là hiểu rồi chứ.
Trong diễn đàn có lisp copy tăng giảm với một hằng số cho trước. nhưng mình muốn một lisp copy tăng giảm theo độ dốc cho trước.
Nó có dạng kiểu như thế này: Ta copy một số từ điểm A đến điểm B. Đầu tiên nó tự nhận text tại điểm A, sau đó ta nhập dộ dốc cần copy, sau đó copy đến điểm B, lisp tự nhận khoảng cách từ A đến B và cộng hoặc trừ với khoảng chênh lệch do độ dốc từ A đến B.
VD như sau: Từ A đến B có độ dốc 2%. điểm A có cao độ 10m, khoảng cách từ A đến B là 10m (cái khoảng cách này là mình VD thôi, còn lisp trong bài toán nó sẽ tự nhận khi copy từ A sang B). Như vậy khi copy từ A đến B sẽ cho giá trị tại điểm B là: 10.2m (B = 10+2%*10 = 10.2m) và cứ thế ta copy đến điểm C, D ... nó sẽ tự cho các kết quả
Lisp này theo mình nghĩ giống lisp copy tăng giảm trên diễn đàn nhưng khác là thông số nhập vào là % tăng giảm theo độ dốc và lisp tự nhận khoảng cách trong quá trình ta copy.
AE ai rành về lisp có thể giúp mình với. Mình cảm ơn nhiều!
Hề hề hề,
Gửi bạn cái này để bạn tham khảo. Không biết có đúng ý bạn không. Nếu đúng thì tốt và nếu không đúng càng tốt hơn bởi bạn sẽ hiểu rằng không phải mọi người đều giỏi như bạn.. Vì thế bạn cần có bản vẽ để mô tả chính xác điều bạn cần nhé.
http://www.cadviet.com/upfiles/5/5194_copycaodo.lsp
(defun c:cpd (/ oldos h els els1 txt dd dd1 h1 p0 p1 ) (setq oldos (getvar "osmode")) (setvar "osmode" 0) (setq h (atof (cdr (assoc 1 (setq els (entget (setq txt (car (entsel "\n Chon text cao do bat dau: ")))))))) dd 0.0 ) (if (or (= (cdr (assoc 0 els)) "MTEXT") (and (= (cdr (assoc 0 els)) "TEXT") (= (cdr (assoc 72 els)) 0) (= (cdr (assoc 73 els)) 0))) (setq p0 (cdr (assoc 10 els))) (setq p0 (cdr (assoc 11 els))) ) (command "undo" "be") (while (setq p1 (getpoint p0 "\n Nhap diem tiep theo")) (if (not (setq dd1 (getreal "\n Nhap do doc tiep theo: "))) (setq dd1 dd) ) (setq len (distance p0 p1) h1 (+ h (* len dd1)) ) (command "copy" txt "" p0 p1) (setq txt (entlast) els1 (entget txt) els1 (subst (cons 1 (rtos h1 2 2)) (assoc 1 els1) els1) ) (entmod els1) (setq p0 p1 h h1 dd dd1) ) (command "undo" "e") (setvar "osmode" oldos) (princ) )
-
Quá ít thông tin để giúp bạn. Gì cũng lisp, mà k thèm mô tả nó làm cái j. Diễn đàn giờ nhiều bạn kiệm lời quá :)
Hề hề hề,
Không phải là kiệm lời mà là quá tự tin, cho rằng mọi người ai cũng gỏi như mình nên cứ nói ít hiểu nhiều vậy thôi. Ai không hiểu thì tự tìm mà hiểu, không cần giải thích nhiều. Cơ khổ.
-
Nhờ Viết Lisp
trong AutoLisp
Em chào các bác ! Em đang làm hoàn công đường, em muốn có một lisp làm các công việc như thế này các bác ạ:
1. Pick điểm gốc ( Điểm tim Cắt ngang )
2. pick cao độ gốc.
3. pick điểm thứ 1.
4. Ghi ( Thay thế) khoảng cách ngang từ điểm gốc đến điểm thứ 1.
5. Ghi ( thay thế) cao độ của thứ 1.
6..... làm tương tự với các điểm còn lại cho đến khi mình thoát lệnh.
Em không biết gì về lisp mà tìm trên mạng đỏ mắt cũng chưa thấy có cái nào tương tự thế này.
Em nhờ các bác cao thủ giúp ! Thank all
Hề hề hề,
Pick cao độ gốc ở đâu????
-
1
-
-
Bác Bình thì cao thủ rồi. em cũng không hiểu ssget là gì. Nếu được bác chỉ rõ cụ thể trường hợp bị lỗi như thế nào cho em biết rồi sửa giùm để e hoàn thiện hơn. Thanks bác!
Hề hề hề,
Bạn có thể xem tham khảo cái hàm (ssget .... ) của bác pphung183 ở phía trên về bộ lọc cho hàm ssget. Ở đây bác pphung183 mới lọc sơ bộ là chỉ chọn các điểm. Bạn có thể thêm vào bộ chọn chẳng hạn như lọc theo lớp chứa điểm cần ghi hay chọn theo mầu sắc của điểm cần ghi .....
Vì hàm ssget cho phép chọn nhiều loại đối tượng với các thuộc tính khác nhau nên nên không có bộ lọc rất dễ bị chọn nhầm đối tượng chẳng hạn như thay vì chỉ chọn điểm nó lại chọn thêm các text, các line hay các cung tròn, elip thì khi đó việc ghi cao độ sẽ bị sai không đúng với yêu cầu hoặc thậm chí lisp không chạy được.
-
CÓ AI GIẢI GIÚP MÌNH BÀI TOÀN NÀY VỚI
SAU KHI DIM KÍCH THƯỚC XONG MÌNH MUỐN LẤY SÔ KÍCH THƯỚC ĐÓ CHO VÀO 1 BANG TRONG CAD LUÔN. DIM KÍCH THƯỚC XONG MÌNH CỨ PHẢI COPY RỒI PASTE LÂU QUÁ. CÒN NHẬP BẰNG TAY ĐÔI KHI VẪN BỊ SAI.
Hề hề hề,
Chưa hiểu cái bảng của bạn ra sao cả....
Bạn có thể tham khảo lisp dưới đây và chế biến cho hợp ý bạn nhé.
http://www.cadviet.com/upfiles/5/5194_dimline.lsp
(defun c:DL ( / ans e dt pt ) (setq ans (getstring "\n Chon dimlinear <Y or N> : ")) (if (= (strcase ans) "Y") (command "_dimlinear" (getpoint "\n Nhap diem dau cua kich thuoc can do") (getpoint "\n Nhap diem cuoi cua kich thuoc can do") (getpoint "\n Nhap diem dat cua kich thuoc can do")) (command "_dimaligned" (getpoint "\n Nhap diem dau cua kich thuoc can do") (getpoint "\n Nhap diem cuoi cua kich thuoc can do") (getpoint "\n Nhap diem dat cua kich thuoc can do")) ) (setq e (entlast) es (entget e) dt (rtos (cdr (assoc 42 es)) 2 2) pt (getpoint "\n Nhap diem dat cua text kich thuoc") ) (command "text" "J" "MC" "non" pt 2 0 dt) (princ) )
-
Trước hết thấy bạn muốn ăn sẵn quá. Tôi không biết viết lisp nhưng mà bạn nên biết cách chon lọc và dùng sao cho hợp với mình thôi.
Có cái này gửi bạn. Theo tôi nghĩ là đúng ý bạn.
http://www.cadviet.com/upfiles/5/70461_caodo1dien_cao_do_cho_point.lsp
Hề hề hề,
Chủ thớt khi dùng lisp này cần lưu ý việc chọn điểm phải đúng các điểm cần ghi bởi nếu chọn không đúng các điểm này sẽ có thể làm lisp bị lỗi. Theo ý cá nhân tôi thì nên tạo bộ lọc cho hàm ssget để có thể hạn chế việc chọn sai các điểm này.
-

Hề hề hề,
Sử dụng dimstyle với hệ số tỷ lệ là 1/150
-
1
-
-
Hề hề hề,
Lệnh là Du-text
-
Xin Giúp Đỡ Về Đồ Gá
trong Cơ khí
1/ Bác Phamthanhbinh không dòm kỹ hình vẽ của chủ thớt rồi!
Bản vẽ của chủ thớt đã định chi tiết đủ đủ 6 bậc tự do: Mặt đáy hẹp 3 bậc tự do + mặt đứng hẹp 1 bậc tự do + mặt cạnh rộng 2 bậc tự do = 6 btd.
Còn một phương án định vị nữa tạm gọi là phương án 2: Mặt đáy hẹp 2 bậc tự do + mặt đứng hẹp 1 bậc tự do + mặt cạnh rộng 3 bậc tự do = 6 btd
Nếu định vị theo phương án 2, có thể kẹp phôi theo hướng vuông góc với mặt cạnh và dùng cơ cấu kẹp bằng chêm để có thể định vị và kẹp chặt được
2 phôi cùng một lúc, sẽ cho năng suất cao.
2/ Kết cấu đế gá hơi cồng kềnh, không cần thiết phải làm gân tăng cứng cho thân gá. Nên đúc lõm mặt đáy để giảm bớt bề mặt phải gia công, đỡ mòn dao phay.
3/ Tấm dẫn khoan chỉ cần tấm phẳng là được, không cần phải rườm rà làm kếtca cấu hình chữ L cho tốn kém
4/ Chi tiết của anh nhỏ bé xinh xinh trong sản xuất loạt lớn hàng khối, phải chia nhỏ ra thành 3 NC là Khoan, khoét và dao, sẽ cho năng xuất cao vời vợi.
5/ Kết cấu đầu kẹp vẽ sai cơ bản, cần mở tài liệu ra xem lại và vẽ lại cho đúng. Cắt qua trục nói chung và cắt qua vit kẹp của anh nói riêng, Tiêu chuẩn vẽ kỹ thuật cho khi vẽ mặt cắt qua trục hoặc hoặc qua vít mà không có lỗ bên trong thì không cần phải gạch mặt cắt.
9/ Anh đã thể hiện hình chiếu cạnh sai quy ước vẽ kỹ thuật,
10/ Bản vẽ đồ gá của anh, chỉ cần vẽ hình bằng và hình đứng . (Bổ xung thêm hình cắt vị trí của 1 cái chốt định vị vuông góc với mặt đứng)
Không cần phải thể hiện hình cạnh , vẽ thừa không cần thiết trong trường hợp đồ gá của anh, người đọc cũng hiểu được!
@ anh bogialk123:

Em có gửi 01 bài trong chủ đề Xin giúp đỡ về qtcn tấm kẹp đầu bào nhưng tìm kiếm không thấy???
Có phải anh đã xóa hoặc nhờ người khác xóa, rất mong anh sớm giả nhời câu hỏi của em!!!!
Hề hề hề,
Đúng là mình không hiểu đúng ý của chủ thớt, mình cứ nghĩ rằng chỉ có các chi tiết màu Cyan là chi tiết định vị mà không nghĩ rằng chủ thớt còn dùng các chi tiết màu Blue để định vị nữa. Xin thành thật xin lỗi chủ thớt và mọi người.
-
Xin Giúp Đỡ Về Đồ Gá
trong Cơ khí
anh ơi vậy còn bậc nào chưa khống chế vậy anh ,anh chỉ cụ thể cho em với ,lần đầu em làm đồ gá hihi
Hề hề hề,
Đồ gá khoan phải định vị đủ 6 bậc tự do. của bạn theo mình thấy mới chỉ có 3 bậc tự do thôi.
-
Xin Giúp Đỡ Về Đồ Gá
trong Cơ khí
Chào mấy anh nhờ mấy anh chỉ giúp em cái đồ gá khoan khoet doa này lỗi chỗ nào không ạ http://www.cadviet.com/upfiles/5/147620_dogacuakhang_1.dwg
Hề hề hề,
Lỗi nặng, không đủ yếu tố định vị.
-
3/ và 4/ siêu tưởng quá anh Hai Lúa ơi!!! :) :) :)
Anh thử siêu tưởng kiểu nhìn hình tóm chữ xem sao:
http://www.cadviet.com Nhìn hình tóm chữ xem sao???

Hề hề hề,
Lao động là vinh quang, nhưng mà cái vinh quang này nhỏ hơn Trộm cắp và luôn nằm dưới trộm cắp cho dù trộm cắp có thể dẫn tơi máu chảy tòe loe.
-
1
-
-
Hoằn nên học cách làm văn kể chuyện của anh Hiệp với cách hành văn cứng rắn, cương quyết , súc tích và dễ hiểu, đặc biệt là cách dẫn chương trình ra đầu ra đũa có ngọn có ngành, thật đúng là một tấn bi kịch hoành tá tràng:
Em đoán mò nghề tay trái của anh Hiệp là dẫn chương trình đám cưới, không biết có đúng không??? Và bỗng dưng em chợt nhớ đến mấy câu thơ:
"Chủ hôn nói một lúc lâu
Bỗng nhiên Mic tịt ( đầu dây bị chờn)
Chả biết làm cách nào hơn
Chủ hôn ngồi xuống kệ con... bà mày..."
Cho em xin được cảm ơn bác Phamthanhbinh, anh Hai Lúa và Hoằn đã chia sẻ kinh nghiệm và góp ý chân tình về thắc mắc của em là có nên cho trẻ học trước tuổi không???
Giờ thì em đã hiểu ra vấn đề rồi, em sẽ không cho cháu đi học trước tuổi nữa, mà tập trung thời gian dạy cháu học ăn học nói học gói học mở...
Em sợ rằng nếu dạy trước tuổi, khi đi học thì mọi thứ đã biết rồi, cháu sẽ nhàm chán, không có hứng khi nghe thầy cô giảng bài nữa! Em sợ rằng ngồi trong lớp nhàn cư vi bất thiện, cháu sẽ vẽ bậy, viết bậy, nghịch bậy , nghĩ bậy và nghĩ ...tệ như cô Hoằn! :) :) :)
Hề hề hề,
Dạy cái chi cũng tốt cả, miễn rằng cháu nó khoái. Đừng bắt cháu phải học cái mình khoái mà nó không thích cho dù là học ăn học nói. Tỷ như bắt chau phải ăn sầu riêng trong khi cháu nó lại cho rằng giống như ăn mít trong chuồng xí chẳng hạn.... Cái quan trọng là các cháu phải học được rằng có những điều mình khoái mà vẫn không được làm và nếu mình làm cái chi thì trước hết phải do cái sự khoái của mình mà thôi. Các cháu cần biết rằng cho dù là ở nhà , ở trường , hay ở ngoài xã hội thì đều có những quy định để ngăn cản cái sự khoái của chúng ở trong giới hạn được phép và nếu biết kiềm chế cái khoái của mình chúng sẽ được khoái nhiều hơn. Hiểu được những điều đó thì ắt chúng sẽ có cách học kiến thức tối ưu với chúng.
-
1
-
-
giúp e với
Hề hề hề,
Kiểm tra lại dimstyle hiện hành khi bạn sửa chữa.
-
Lệnh là drawpline. Không phải SPLIT.
Hề hề hề,
Trong lisp này có sử dụng hàm con split (chắc là để tách chuỗi đọc được thành danh sách các tọa độ). Song người post lisp đả quên không post kèm cả cái hàm con này nên khi chạy lệnh drawpline lisp mới báo lỗi như vầy bác ạ.
-
Không phải cong cớn đâu, chị Hà ạ, số người đang cãi nhau như mổ bò vẫn đang ngày một tăng :
FTV News cũng xì xà ...xì xồ...: như buôn bạc giả:
Hề hề hề,
Té ra cái đống này to phết nhể?????
-
1
-
-
Cảm ơn anh Duy đã nhắc nhở !
Em nghĩ trong Lisp có thể Scale Block theo kích thước bu lông, nếu không được thì có thể giữ nguyên, chỉ cần lấy vị trí tim bu lông là được.
Em chỉ cần hình vẽ bản mã, các ghi chú, DIM kích thước thì không cần. Mục đích của em chỉ là có được cái chi tiết bản mã một cách nhanh nhất.
Yêu cầu của em : Lisp vẽ bản mã, Nhập kích thước bản mã (dài x rộng), Nhập số lượng bu lông, Nhập đường kính bu lông (nếu có thể ), Nhập khoảng cách 2 hàng bu lông tính tại tim theo phương ngang, Nhập các khoảng cách 1, khoảng cách 2, khoảng cách 3… theo phương dọc như trong hình. Các kích thước, ghi chú không cần chỉ cần cái chi tiết bản mã là được.
Không biết còn thiếu thông tin gì nữa không :D
Hề hề hề,
Vậy nếu có 40 hàng lỗ thì cũng nhập 39 lần khoảng cách ư????
-
Cảm ơn phamthanhbinh! Bản mã của mình luôn là hình chữ nhật, số lượng lỗ có thể 4,6,8.... Các lỗ này đều đối xứng qua tim bản mã và có chung đường kính và chỉ có 2 hàng lỗ theo phương ngang.Trong lệnh có thể hiện dòng G=.. rồi lệnh tự chia đều ra 2 phía chẳng hạn. :)
Hề hề hề,
Vậy khi nào thì 4 lỗ, khi nào thì 6 lỗ và khi nào thì 8 lỗ????? Chia đều ra 2 phía theo nguyên tắc nào nhỉ??? Theo khoảng cách tâm lỗ hay theo khoảng cách từ mép bàn mã tới tâm lỗ biên????
-
1
-
-
Bác nào rảnh giúp em với nhé, em cần lắm ạ!
Hề hề hề,
Rảnh cũng thua bởi chả hiểu bạn nói cái chi??? Bản vẽ không có? TCS1 là gì trên bản vẽ?? L1 là cái gì trên bản vẽ??? Giời hiểu nên chờ giời giúp nhé.
-
Lần đầu lên diễn đàn post bài hỏi anh em, còn nhiều bỡ ngỡ mong anh em thông cảm.
Mình có tìm kiếm trong 4rom các lisp " xoay text theo đường PL". Nhưng dowload về load lên đều không dùng được ( không nhận lệnh). A e nào co cho mình xin. Cam on ạ.
Hề hề hề,
Không rõ bạn đã download ra sao nhưng mình thử dowload từ diễn đàn vẫn thấy ngon lành và lisp vẫn chạy phe phé mà. Bạn hãy thử lại xem sao. Nếu không được thì cho địa chỉ mail mình sẽ gửi cho.
Xin Lisp Copy Tăng Giảm Theo Độ Dốc
trong Sử dụng AutoCAD
Đã đăng · Trả lời báo cáo
Hề hề hề,
Nếu trúng rồi thì bạn chỉ cần bỏ toàn bộ đoạn code sau:
(if (or (= (cdr (assoc 0 els)) "MTEXT") (and (= (cdr (assoc 0 els)) "TEXT") (= (cdr (assoc 72 els)) 0) (= (cdr (assoc 73 els)) 0)))
(setq p0 (cdr (assoc 10 els)))
(setq p0 (cdr (assoc 11 els)))
)
và thay thế bằng:
(setq p0 (getpoint "\n Chon diem bat dau"))
Sau đó lưu lại file lisp với tên bạn thích. Load nó vào Cad rồi chạy thử nhé.