當前位置:首頁 » 視頻軟體 » cad緩和曲線怎樣拉伸
擴展閱讀
圖片編輯姓名怎樣放大 2024-12-25 22:43:18

cad緩和曲線怎樣拉伸

發布時間: 2022-01-13 15:13:55

『壹』 CAD如何畫緩和曲線

用pl線,畫很多點之後,用pe(編輯pl線)中的擬合,將折線擬合成曲線~

『貳』 cad緩和曲線怎麼畫

用樣條曲線畫,緩和曲線的起點,終點,起點切線方向,終點切線方向,就可以了。
樣條曲線特性不顯示長度,拉伸能顯示長度。

『叄』 CAD中如何繪制緩和曲線

先用樣條線畫,再用三點圓弧,你試試!!

『肆』 如何用CAD畫緩和曲線

不知道你用的是否是autodesk的cad,如果是,直接選取快捷鍵,按照提示做就行了,每種圖元都會有幾種方式完成

『伍』 CAD畫緩和曲線怎麼畫啊

轉帖:《在AutoCAD中緩和曲線的幾種畫法》,參考一下。
網址:http://www.cadzj.com/n/30048.html

『陸』 請教cad高手,如何經過樣條曲線、緩和曲線已知點精確畫切線

cad有捕捉功能,你可以把捕捉點設為切點,然後把游標移到曲線上就能繪制出切線了

『柒』 cad怎麼畫緩和曲線

1.現做一個CAD腳本,會的人跳過(用Windows 文本 另存為「.scr」文件)
2.腳本編輯輸入「SPLINE+空格鍵+Y坐標+,+X坐標+空格鍵+Y坐標+,+X坐標……」 以此類推!點輸的越密,線條越平滑。也可以用EXCEL算出各個點的坐標後粘貼進去,然後按照「SPLINE+空格鍵+Y坐標+,+X坐標+空格鍵+Y坐標+,+X坐標……」格式編輯。
3.進入CAD,運行腳本,就行了!
注意:你可能輸入了100個點,而出現的確只有幾個點,這個很正常,你把圖像刪除了,多運行幾次就行,一般不超過4次。

『捌』 用在cad中怎麼繪制緩和曲線

方法一:

1、在CAD中畫出切線長

2、運行程序: 在命令行中輸入hh回車

3、選擇兩條切線,然後輸入曲線半徑如:2204.5回車

4、輸入緩和曲線長,如270,繪圖完成!


方法二:

用宏,網上有CAD畫緩和曲線的宏代碼。

用法:CAD工具→宏→載入工程→選擇宏代碼文件;工具→宏→宏→選擇剛載入的宏→運行,按提示就可以了。

『玖』 在autoCAD中怎麼畫緩和曲線

您好,您這樣:
一、在CAD中畫出切線長
二、運行程序: 在命令行中輸入hh回車
三、選擇兩條切線,然後輸入曲線半徑如:2204.5回車
四、輸入緩和曲線長,如270,繪圖完成!如圖

記事本格式內容,新建的lisp語言,在CAD中要先載入
;;多義線摹擬緩和曲線。
;;輸入起止直線、半徑、緩和曲線長或設計車速。
;;命令:HH
(defun com_p()
(setq l 0)
(command "ucs" "o" (list (- 0 x1) 0 0))
(command "pline" (list 0 0 0) "w" "0" ""
(repeat 1000
(setq l (+ l (/ Ls 1000))
x (+ (- l (/ (* l l l l l) 40 C C)) (/ (* l l l l l l l l l) 3456 C C C C))
y (* id__ (+ (- (/ (* l l l) 6 C) (/ (* l l l l l l l) 336 C C C)) (/ (* l l l l l l l l l l l) 42240 C C C C C)))
);setq
(command (list x y 0))
);repaet
);command
(setq pt5 (trans (list x y 0) 1 0))
);com_p
(defun ll_v()
(setq V (getreal "\nGive Velocity:")
Ls1 (* V 0.85)
Ls2 (/ (* 0.0357 V V V) R)
Ls (max Ls1 Ls2 (/ R 9))
Ls (* (fix (/ Ls 10)) 10.0)
);setq
(if (> Ls R) (setq Ls R))
(ll_d)
);ll_v
(defun ll_d()
(setq os (getvar "osmode"))
(setvar "osmode" 0)
(setq C (* Ls R)
q (- (+ (- (/ Ls 2) (/ (* Ls Ls Ls) 240 R R)) (/ (* Ls Ls Ls Ls Ls) 34560 R R R R)) (/ (* Ls Ls Ls Ls Ls Ls Ls) 8386560 R R R R R R))
pt1 (cdr (assoc 10 (entget (car p1))))
pt2 (cdr (assoc 11 (entget (car p1))))
pt10(polar pt1 (angle pt1 pt2) (/ (distance pt1 pt2) 2))
pt3 (cdr (assoc 10 (entget (car p2))))
pt4 (cdr (assoc 11 (entget (car p2))))
pt20(polar pt3 (angle pt3 pt4) (/ (distance pt3 pt4) 2))
p (+ (- (/ (* Ls Ls) 24 R) (/ (* Ls Ls Ls Ls) 2688 R R R)) (/ (* Ls Ls Ls Ls Ls Ls) 506880 R R R R R))
jd (inters pt1 pt2 pt3 pt4 nil)
alf1(angle pt10 jd)
alf2(angle pt20 jd)
alf (- (angle jd pt20) alf1)
);setq
(if (or (> alf pi) (and (< alf 0) (> alf (- 0 pi))))
(progn
(setq id__ -1)
(if (> alf pi) (setq alf (- (+ pi pi) alf)) (setq alf (abs alf)))
);progn
(progn
(setq id__ 1)
(if (<= alf (- 0 pi)) (setq alf (+ pi pi alf)))
);progn
);if
(setq x0 (/ (* (+ p R) (sin(/ alf 2.0))) (cos(/ alf 2.0)))
x1 (+ x0 q)
Cl (+ (* alf R) Ls)
E (- (/ (+ R p) (cos(/ alf 2))) R)
);setq
(command "ucs" "o" jd)
(command "ucs" "z" (/ (* 180 alf1) pi))
(com_p) (setq pt6 pt5)
(setq ppt1 (list x1 0 0))
(command "ucs" "")
(command "ucs" "o" jd)
(command "ucs" "z" (/ (* 180 alf2) pi))
(setq id__ (- 0 id__)) (com_p)
(setq ppt2 (list x1 0 0))
(command "ucs" "")
(if (> (abs(distance jd pt1)) (abs(distance jd pt2)))
(setq ptt1 pt1)
(setq ptt1 pt2)
);if
(setq ptt2 (polar jd alf1 (- 0 x1)))
(thh p1 ptt1 10)
(thh p1 ptt2 11)
(if (> (abs(distance jd pt3)) (abs(distance jd pt4)))
(setq ptt3 pt3)
(setq ptt3 pt4)
);if
(setq ptt4 (polar jd alf2 (- 0 x1)))
(thh p2 ptt3 10)
(thh p2 ptt4 11)
(if (= id__ 1) (command "arc" pt5 "e" pt6 "r" R) (command "arc" pt6 "e" pt5 "r" R))
(setq alfd (angf alf))
(setvar "osmode" os)
(command "cmdecho" "1")
(command "text" pause pause "" (strcat "偏角=" alfd))
(command "cmdecho" "0")
(command "text" "" (strcat "半徑=" (rtos R 2 2)))
(command "text" "" (strcat "切線長=" (rtos x1 2 2)))
(command "text" "" (strcat "曲線長=" (rtos Cl 2 2)))
(command "text" "" (strcat "外距=" (rtos E 2 2)))
(command "text" "" (strcat "緩和曲線長=" (rtos Ls 2 2)))
);ll_d

(defun angf (alf)
(setq alff (angtos alf 1 4)
n 1
kk (strlen alff))
(repeat kk
(setq alfn (substr alff n 1))
(if (= alfn "d")
(setq nn n));if
(setq n (+ n 1))
);repeat
(strcat (substr alff 1 (- nn 1)) "%%" (substr alff nn))
);angf
(defun c:hh(/ p1 p2 pt1 pt2 pt3 pt4 pt5 pt6 pt10 pt20 id__ R V Ls E p3
r1 x y l x0 x1 C jd alf alf1 alf2 q p Cl Ls1 Ls2)
(command "ucs" "")
(setq p1 nil p2 nil)
(while (= p1 nil) (setq p1 (entsel "\n拾取第一條直線:")))
(redraw (car p1) 3)
(while (= p2 nil) (setq p2 (entsel "\n拾取第二條直線:")))
(redraw (car p2) 3)
(initget 1)
(setq R (getdist "\n請輸入彎道半徑R: "))
(initget 1 "Ls V")
(setq p3 (getdist "\n輸入緩和曲線長度(Ls)或[設計速度(V)]: "))
(if (= p3 "V") (ll_v) (progn (setq ls p3) (ll_d)))
(princ)
);eline
(defun thh(len pt h)
(setq en_data (entget (car len))
old_data (assoc h en_data)
new_data (cons h pt)
en (subst new_data old_data en_data));setq
(entmod en)
);thh