Đến nội dung


Hình ảnh
- - - - -

Vẽ ống mềm kiểu ruột gà


  • Please log in to reply
18 replies to this topic

#1 laichauc45

laichauc45

    biết pan

  • Members
  • Pip
  • 8 Bài viết
Điểm đánh giá: 1 (bình thường)

Đã gửi 10 June 2008 - 02:29 PM

mình có 2 file lisp ma khi upload len nó bảo thiếu file dttlhh (.lsp/exe/.arx) cái lisp của mình cần là vẽ 1 đường thẳng là một hình zizac ( bác nào làm ĐHKK) hoạc đọc bản vẽ ĐHKK thì hiểu vì mình khó tả lắm. mong các bác giúp cho.
đây là file upload lên.
http://www.cadviet.com/upfiles/Thanh_1_1.lsp

<a href="http://www.cadviet.com/upfiles/dttlhh.lsp" target="_blank">http://www.cadviet.com/upfiles/dttlhh.lsp</a>
  • 0

#2 ssg

ssg

    biết lệnh adcenter

  • Vip
  • PipPipPipPipPipPipPip
  • 1228 Bài viết
Điểm đánh giá: 1087 (rất tốt)

Đã gửi 10 June 2008 - 05:27 PM

mình có 2 file lisp ma khi upload len nó bảo thiếu file dttlhh (.lsp/exe/.arx) cái lisp của mình cần là vẽ 1 đường thẳng là một hình zizac ( bác nào làm ĐHKK) hoạc đọc bản vẽ ĐHKK thì hiểu vì mình khó tả lắm. mong các bác giúp cho.
đây là file upload lên.

Góp ý:
1) File lisp của bạn có đoạn: (autoload "dttlhh" '("vc1" "vc2" "vc3" "vc4" "vc5" "vc6" "dx") ). Tìm không thấy file dttlhh.lsp thì nó bảo là thiếu, chẳng có gì là lạ!

2) Các file của bạn là những thành phần đơn lẻ của 1 ứng dụng nào đó. Bạn copy không đến đầu đến đũa (chỉ toàn là sub function, không có lệnh), không ai hiểu chúng là cái gì đâu. Bản thân ssg, hiểu về lisp cũng tương đối, nhưng đọc qua một lượt 2 file lsp của bạn vẫn không có một chút khái niệm gì trong đầu!

3) Người dùng CAD thuộc nhiều chuyên ngành khác nhau. Không có chuyên môn đọc càng không hiểu. Khó cũng phải tìm cách diễn đạt để bất kỳ ai cũng có thể hiểu được thì bạn mới có hy vọng được giúp đỡ.

4) Theo mình, tốt nhất bạn sang topic "Viết lisp theo yêu cầu" và nêu cụ thể bạn muốn gì. Lưu ý rằng, nếu ai đó có thể viết lisp theo yêu cầu của bạn, họ sẽ không bao giờ quan tâm đến 2 file lsp nói trên vì chúng chẳng có giá trị gì đối với họ!
  • 0

#3 laichauc45

laichauc45

    biết pan

  • Members
  • Pip
  • 8 Bài viết
Điểm đánh giá: 1 (bình thường)

Đã gửi 12 June 2008 - 04:23 PM

cảm ơn ban SSg đã trả lời. Chính vì mình không biết tí gí về lisp nên mình mới hỏi như thế mong bạn thông cảm.
http://www.cadviet.c...duong_zizac.rar. Đây là cái đường mà mình miêu tả nó được vẽ bằng lệnh polyline, SPLine hoạc lệnh line đều được điểm đầu nó như một hình vuông điểm cuối nó là một đường tròn. và nó có thể thay đổi được hình tròn cuối và hình vuông ở đầu. nhưng hình tròng cuối đúng bằng khoảng cách giữa 2 cạnh của hình vuông.
Mong bạn thông cảm vì hình của nó như thế nên khó diễn tả qua. vậy các bạn có thể giúp mình cái lisp này được không vậy. nếu mà ở giữa có đường tâm thì tốt quá .
Cảm ơn đã quan tâm.
  • 0

#4 ssg

ssg

    biết lệnh adcenter

  • Vip
  • PipPipPipPipPipPipPip
  • 1228 Bài viết
Điểm đánh giá: 1087 (rất tốt)

Đã gửi 13 June 2008 - 07:40 AM

Thì ra là cái ống mềm. Là nhà kỹ thuật, bạn hãy tập diễn đạt mọi vấn đề theo phong cách kỹ thuật: ngắn gọn, rõ ràng, kèm theo ví dụ minh hoạ. Chẳng hạn: tôi muốn có chương trình vẽ cái ống nối mềm (thuật ngữ là flexible tube, dân gian có khi gọi là ống ruột gà). Cái này dùng khá phổ biến trong kỹ thuật lẫn đời sống, không riêng gì ngành Điều hoà không khí của bạn. Ví dụ: dùng cho chỗ nối ống cho phép co giãn được của tất cả các hệ thống dẫn khí, nước, hơi nước, dầu...; ống lồng dây điện, ống dẫn nước ra vòi hoa sen... Nếu bạn diễn đạt như vậy thì chắc ai cũng hiểu!
Sơ bộ như vậy, nhưng yêu cầu lập trình phải chi tiết hơn. Bạn đưa ví dụ bằng file dwg là đúng bài rồi, tự thân nó nói lên nhiều điều không cần giải thích. Tuy nhiên, cần phải cụ thể hơn nữa. Nếu không, viết chương trình mất công mà kết quả có khi không đúng ý bạn. Xin nhắc lại, quan điểm của mình cũng như anh Hoành: không ngại lập trình nhưng rất ngại phải sửa đi sửa lại!
Tạm thời, bạn thử đoạn chương trình sau, tên lệnh RG, chỉ áp dụng cho đoạn thẳng. Bạn xem kết quả có đúng ý không. Nếu OK, sẽ có chương trình cho các đoạn ống với hình dạng bất kỳ (đường tâm là line, pline, spline, arc, circle):

;;;--------------------------------------------------------
(defun ToaDoRG()
(setq
p1 (polar p01 (- a (/ pi 2)) (/ D 2))
p2 (polar p1 a S)
p3 (polar p01 (+ a (/ pi 2)) (/ D 2))
p4 (polar p3 a S)
p01 (polar p01 a S)
)
)
;;;--------------------------------------------------------
(defun C:RG( / D p01 p02 p1 p2 p3 p4 L a n S oldos) ;;;Ve ong ruot ga
(setq
D (getreal "\nDuong kinh ong:")
p01 (getpoint "\nDiem dau:")
p02 (getpoint p01 "\nDiem cuoi:")
L (distance p01 p02)
a (angle p01 p02)
n (fix (/ (* 4 L) D))
S (/ L n)
oldos (getvar "osmode")
)
(setvar "osmode" 0)
(command "line" p01 p02 "")
(command "circle" p02 (/ D 2))
(ToaDoRG)
(command "line" p1 p2 p4 p3 "C")
(repeat (- n 1)
(ToaDoRG)
(command "line" p2 p4 "")
(command "arc" p2 "e" p1 "a" 90)
(command "arc" p3 "e" p4 "a" 90)
)
(command "arc" p2 (polar p02 a S) p4)
(setvar "osmode" oldos)
(princ)
)
;;;--------------------------------------------------------


  • 2

#5 laichauc45

laichauc45

    biết pan

  • Members
  • Pip
  • 8 Bài viết
Điểm đánh giá: 1 (bình thường)

Đã gửi 13 June 2008 - 10:19 AM

cảm ơn ban. Thật ra thì mình cũng biết là nó ap dụng rất là nhiều nhưng để diễn đạn nó rất là khó vì như điện ban không bao giờ vẽ ống ruột ga lên bản vẽ cả và các ngàng khác nữa họ có vẽ nhưng rất ít ( cùng lắm chỉ thể hiện trên bản vẽ chi tiết thôi ) nên không cần đến lsp như thế cả. con lệnh của bạn là đúng theo yêu cầu của mình rồi cảm ơn bạn. nhưng mình thấy nó là tập hợp của các line nên như thế bản vẽ rất nặng. bạn có thể tạo thành đường spline và đường tâm của nó là một mầu khác 8 hoạc 9 ấy và nó là nét tâm được không vậy.
Cảm ơn bạn nhiều
  • 0

#6 ssg

ssg

    biết lệnh adcenter

  • Vip
  • PipPipPipPipPipPipPip
  • 1228 Bài viết
Điểm đánh giá: 1087 (rất tốt)

Đã gửi 16 June 2008 - 08:24 AM

Chương trình vẽ ống nối mềm. Xem giải thích chi tiết trong code:

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;CHUONG TRINH VE ONG NOI MEM - FLEXIBLE TUBE
;;;Yeu cau: AutoCAD 2000 tro len
;;;Lenh: NM, nhap duong kinh ong va pick chon duong tam
;;;Chap nhan cac loai: line, pline, spline, arc, circle, ellipse
;;;Chuong trinh bat dau ve tu dau mut gan hon so voi diem pick
;;;Tri so duong kinh D cua lan chay truoc duoc tu dong luu lai
;;;Neu khong muon thay doi D, Enter khong can nhap so
;;;Gia tri mac dinh ban dau D = 100
;;;Ket qua ve la 1 duong pline duy nhat
;;;Written by ssg - June 2008 - www.cadviet.com
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(defun C:NM( / D chon e pC pM xM L ps pe n S
p01 x flag p02 a p1 p2 p3 p4 i oldos p03 p5 p6)
(vl-load-com)
(if (not D0) (setq D0 100))
(setq D (getreal (strcat "\nNhap duong kinh ong <" (rtos D0) ">:")))
(if (not D) (setq D D0) (setq D0 D))
(setq
chon (entsel "\nPick chon duong tam:")
e (car chon)
pC (cadr chon)
pM (vlax-curve-getClosestPointTo e pc)
xM (vlax-curve-getDistAtPoint e pM)
L (vlax-curve-getDistAtParam e (vlax-curve-getEndParam e))
ps (vlax-curve-getPointAtDist e 0)
pe (vlax-curve-getPointAtDist e L)
n (fix (/ (* 4 L) D))
S (/ L n)
)
(if (<= xM (/ L 2)) (setq p01 ps x 0 flag 1) (setq p01 pe x L flag -1))
(setq
p02 (vlax-curve-getPointAtDist e (+ x (* S flag)))
a (angle p01 p02)
p1 (polar p01 (- a (/ pi 2)) (/ D 2))
p2 (polar p1 (+ a (/ pi 2)) D)
p3 (polar p1 a S)
p4 (polar p2 a S)
i 2
oldos (getvar "osmode")
)
(setvar "osmode" 0)
(command "pline" p3 p4 p2 p1 p3)
(repeat (- n 1)
(setq
p03 (vlax-curve-getPointAtDist e (+ x (* i S flag)))
a (angle p02 p03)
p5 (polar p03 (- a (/ pi 2)) (/ D 2))
p6 (polar p5 (+ a (/ pi 2)) D)
)
(if (= i 2) (command "a"))
(command "a" -90 p5 "L" p6 "a" "a" -90 p4 "L" p3 "a" "a" -90 p5)
(setq p02 p03 p3 p5 p4 p6 i (1+ i))
)
(command "a" 90 p6 "a" 180 p5 "a" 180 p6 "")
(setvar "osmode" oldos)
(princ)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

  • 5

#7 laichauc45

laichauc45

    biết pan

  • Members
  • Pip
  • 8 Bài viết
Điểm đánh giá: 1 (bình thường)

Đã gửi 16 June 2008 - 09:05 AM

cảm ơn bạn rất nhiều
  • 0

#8 xuanhoa1602

xuanhoa1602

    Chưa sử dụng CAD

  • Members
  • Pip
  • 1 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 16 April 2009 - 09:04 PM

cảm ơn bạn rất nhiều

Chào các bạn.
trước tiên tôi cảm ơn các bạn về trang wed cadviet .com.vn
Hai lisp mà tôi douwn về không sử dụng được
vì máy báo lổi, Mong các bạn chỉ giúp cho.
Xin trân trọng cảm ơn các bạn.
cái này tôi rất cần.
  • 0

#9 haanh

haanh

    biết lệnh adcenter

  • Members
  • PipPipPipPipPipPipPip
  • 2876 Bài viết
Điểm đánh giá: 1555 (rất tốt)

Đã gửi 16 April 2009 - 10:53 PM

Chào các bạn.
trước tiên tôi cảm ơn các bạn về trang wed cadviet .com.vn
Hai lisp mà tôi douwn về không sử dụng được
vì máy báo lổi, Mong các bạn chỉ giúp cho.
Xin trân trọng cảm ơn các bạn.
cái này tôi rất cần.


cho iem hỏi ống ruột gà có phải là ống loằng ngòa loằng ngoằng như ống nhựa mềm của máy bơm nước vẽ bằng lệnh spline ko????
  • 0

“Sống trong đời sống cần có một tấm lòng / Để làm gì em biết không ? / Để gió cuốn đi, để gió cuốn đi...”


#10 phamthanhbinh

phamthanhbinh

    biết lệnh adcenter

  • Moderator
  • PipPipPipPipPipPipPip
  • 6009 Bài viết
Điểm đánh giá: 3113 (tuyệt vời)

Đã gửi 17 April 2009 - 10:52 AM

cho iem hỏi ống ruột gà có phải là ống loằng ngòa loằng ngoằng như ống nhựa mềm của máy bơm nước vẽ bằng lệnh spline ko????

Chào bác haanh,
Chí phải, chí phải bác ạ. Nhưng mà cũng có lắm kiểu ruột gà lắm bác ạ, có loại có gân, có loại không, .....
  • 0
Chúc các quý Anh trên diễn đàn luôn khỏe, đẻ thêm được nhiều thứ để mót.

#11 haanh

haanh

    biết lệnh adcenter

  • Members
  • PipPipPipPipPipPipPip
  • 2876 Bài viết
Điểm đánh giá: 1555 (rất tốt)

Đã gửi 17 April 2009 - 01:01 PM

Chào bác haanh,
Chí phải, chí phải bác ạ. Nhưng mà cũng có lắm kiểu ruột gà lắm bác ạ, có loại có gân, có loại không, .....


Em thấy nhiều người hay gọi lò xo là ống xoắn ruột gà, nên mới hỏi bác. Em thử vẽ đường loằng ngoằng trên CAD 2007

Vẽ đường loằng ngoằng bằng lệnh Spline , vẽ vòng tròn ống bằng lệnh Circle nhưng nó ko cho Extrude theo đường dẫn Spline.

Cho em hỏi các bác có cách nào biến được Spline thành polyline ko?
  • 0

“Sống trong đời sống cần có một tấm lòng / Để làm gì em biết không ? / Để gió cuốn đi, để gió cuốn đi...”


#12 Phiphi-

Phiphi-

    biết lệnh minsert

  • Members
  • PipPipPipPipPipPip
  • 434 Bài viết
Điểm đánh giá: 175 (tàm tạm)

Đã gửi 17 April 2009 - 05:34 PM

...
Cho em hỏi các bác có cách nào biến được Spline thành polyline ko?

+ Lệnh S2P trong s2p.lsp dùng để đổi Spine ra Polyline.
Lisp có trong bài #8: http://www.cadviet.c...?showtopic=9019
  • 1

#13 huong259

huong259

    biết lệnh refedit

  • Members
  • PipPipPipPipPipPipPip
  • 596 Bài viết
Điểm đánh giá: 350 (khá)

Đã gửi 18 April 2009 - 03:37 PM

+ Lệnh S2P trong s2p.lsp dùng để đổi Spine ra Polyline.
Lisp có trong bài #8: http://www.cadviet.c...?showtopic=9019

Cho em hỏi dùng lisp có nối liền được các đường line, spline, arc thành một khối như đường poline ko ạ, em chưa sử dụng lisp xin được chỉ giáo em cảm ơn trước!
  • 0

#14 Phiphi-

Phiphi-

    biết lệnh minsert

  • Members
  • PipPipPipPipPipPip
  • 434 Bài viết
Điểm đánh giá: 175 (tàm tạm)

Đã gửi 20 April 2009 - 01:41 PM

Cho em hỏi dùng lisp có nối liền được các đường line, spline, arc thành một khối như đường poline ko ạ, em chưa sử dụng lisp xin được chỉ giáo em cảm ơn trước!

Dùng lệnh C2P để chuyển Spline thành Pline.
Lệnh NN để join các Line, Pline, Arc.. thành "một khối"
Các Lisp này có post trong topic trên bạn ạ.
  • 1

#15 aarthas

aarthas

    biết pan

  • Members
  • Pip
  • 8 Bài viết
Điểm đánh giá: 2 (bình thường)

Đã gửi 03 May 2012 - 10:50 AM

Nếu bạn làm ngành ĐHKK thì bạn vào blog cơ điện lạnh

http://www.hvacvn.co...ng-autocad.html

tải lisp để vẽ ống gió mềm (lisp NAM) và hướng dẫn sử dụng về vẽ rất hay.
  • 1

#16 Mêlisp

Mêlisp

    Chưa sử dụng CAD

  • Members
  • Pip
  • 1 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 18 May 2015 - 10:12 PM

Chương trình vẽ ống nối mềm. Xem giải thích chi tiết trong code:

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;CHUONG TRINH VE ONG NOI MEM - FLEXIBLE TUBE
;;;Yeu cau: AutoCAD 2000 tro len
;;;Lenh: NM, nhap duong kinh ong va pick chon duong tam
;;;Chap nhan cac loai: line, pline, spline, arc, circle, ellipse
;;;Chuong trinh bat dau ve tu dau mut gan hon so voi diem pick
;;;Tri so duong kinh D cua lan chay truoc duoc tu dong luu lai
;;;Neu khong muon thay doi D, Enter khong can nhap so
;;;Gia tri mac dinh ban dau D = 100
;;;Ket qua ve la 1 duong pline duy nhat
;;;Written by ssg - June 2008 - www.cadviet.com
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(defun C:NM( / D chon e pC pM xM L ps pe n S
p01 x flag p02 a p1 p2 p3 p4 i oldos p03 p5 p6)
(vl-load-com)
(if (not D0) (setq D0 100))
(setq D (getreal (strcat "\nNhap duong kinh ong <" (rtos D0) ">:")))
(if (not D) (setq D D0) (setq D0 D))
(setq
chon (entsel "\nPick chon duong tam:")
e (car chon)
pC (cadr chon)
pM (vlax-curve-getClosestPointTo e pc)
xM (vlax-curve-getDistAtPoint e pM)
L (vlax-curve-getDistAtParam e (vlax-curve-getEndParam e))
ps (vlax-curve-getPointAtDist e 0)
pe (vlax-curve-getPointAtDist e L)
n (fix (/ (* 4 L) D))
S (/ L n)
)
(if (<= xM (/ L 2)) (setq p01 ps x 0 flag 1) (setq p01 pe x L flag -1))
(setq
p02 (vlax-curve-getPointAtDist e (+ x (* S flag)))
a (angle p01 p02)
p1 (polar p01 (- a (/ pi 2)) (/ D 2))
p2 (polar p1 (+ a (/ pi 2)) D)
p3 (polar p1 a S)
p4 (polar p2 a S)
i 2
oldos (getvar "osmode")
)
(setvar "osmode" 0)
(command "pline" p3 p4 p2 p1 p3)
(repeat (- n 1)
(setq
p03 (vlax-curve-getPointAtDist e (+ x (* i S flag)))
a (angle p02 p03)
p5 (polar p03 (- a (/ pi 2)) (/ D 2))
p6 (polar p5 (+ a (/ pi 2)) D)
)
(if (= i 2) (command "a"))
(command "a" -90 p5 "L" p6 "a" "a" -90 p4 "L" p3 "a" "a" -90 p5)
(setq p02 p03 p3 p5 p4 p6 i (1+ i))
)
(command "a" 90 p6 "a" 180 p5 "a" 180 p6 "")
(setvar "osmode" oldos)
(princ)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

Đăng ký ngay 1 Account để cảm ơn bác, nhưng hơi tiếc chút là mình đang vẽ ống xoắn HDPE rãnh ống sít nhau quá.


  • 0

#17 hoan2182

hoan2182

    biết lệnh adcenter

  • Members
  • PipPipPipPipPipPipPip
  • 2646 Bài viết
Điểm đánh giá: 832 (rất tốt)

Đã gửi 19 May 2015 - 05:17 PM

Em thấy nhiều người hay gọi lò xo là ống xoắn ruột gà, nên mới hỏi bác. Em thử vẽ đường loằng ngoằng trên CAD 2007

Vẽ đường loằng ngoằng bằng lệnh Spline , vẽ vòng tròn ống bằng lệnh Circle nhưng nó ko cho Extrude theo đường dẫn Spline.

Cho em hỏi các bác có cách nào biến được Spline thành polyline ko?

 

Nếu em nhớ không nhầm thì từ AutoCAD2007 đã có lệnh Sweep vẽ được đường ống theo đường dẫn theo đường Spline

Và AutoCAD đời cao có thể Extrude theo đường dẫn Spline. :) :) :)


  • 0

Gió đưa cây cải về trời

Rau răm ở lại chịu lời đắng cay...


#18 snowman.hms

snowman.hms

    biết vẽ ellipse

  • Members
  • PipPip
  • 55 Bài viết
Điểm đánh giá: 26 (tàm tạm)

Đã gửi 27 May 2015 - 11:00 PM

http://www.theswamp....23699#msg523699


  • 0

#19 nguytini

nguytini

    biết vẽ rectang

  • Members
  • PipPip
  • 81 Bài viết
Điểm đánh giá: -4 (bình thường)

Đã gửi 28 May 2015 - 09:01 AM

Sao bạn không sử dụng lisp nam vẽ nhỉ


  • 0

NGỤY HOÀNG ĐÀN

EMAIL: HOANGDAN52NL@GMAIL.COM