[心得] AutoLisp 弧ARC切段並轉為聚合線Spline
今天畫橋墩時遇到一個問題,變斷面是圓弧ARC路徑擠出,
這樣送到3D Max會一片片的,不夠圓滑。
因為我CAD跟3D MAX不夠熟,
找不到指令可以圓滑化(viewres似乎沒用),
請教學長說要用divide切多段後用pline手動連線--b,
一時受不了就寫了這個不知道有沒有用的小程式:
;_Split an Arc to n segments and join into a spline.
;_Created by Suny 2009.06.06
(DEFUN c:ArcSplit(/ arc ent nsg cen rad an0 an1 pia n ss)
(SETQ arc (CAR (ENTSEL"\nSelect an arc to split:"))
nsg (GETINT "\nHow many segments:")
ent (ENTGET arc)
an0 (CDR (ASSOC 50 ent)) ;beggin angle
an1 (CDR (ASSOC 51 ent)) ;end angle
pia (if(> an0 an1) ;Piece of angle
(/-(- (* 2 pi) (- an0 an1)) nsg) ;beggin angle > end angle
(/(- an1 an0) nsg)) ;end angle > beggin angle
ss (SSADD) n 0)
(REPEAT nsg
(ENTMAKE (LIST (CONS 0 "ARC")(ASSOC 10 ent)(ASSOC 40 ent)
(CONS 50(+ an0(* pia n)))(CONS 51(+ an0(* pia(1+ n))))))
(SSADD (ENTLAST) ss)
(SETQ n (1+ n)))
(ENTDEL arc)
(COMMAND "pedit" "m" ss "" "y" "j" 0.0 "")
)
--
2009.06.21 修正當終點角度(ex:359度)大於起點角度(ex:20度)出錯
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.169.192.153
※ 編輯: suny999 來自: 118.169.201.126 (06/21 19:11)
Cad_Cae 近期熱門文章
PTT數位生活區 即時熱門文章