我想看一级黄色大片_久久亚洲国产精品一区二区_久久精品免视看国产明星_91久久青青青国产免费

您的位置:網(wǎng)站首頁 > CAD新聞

在cad中求不規(guī)則圖形的形心

時間:2009-05-27 07:44:45 來源:
一個是可以求某一圖層上封閉實(shí)體的形心,程序根據(jù)你輸入的圖層自動選擇該層上所有實(shí)體,
;;;再根據(jù)你點(diǎn)取的點(diǎn)求取點(diǎn)所在周邊封閉實(shí)體的形心并顯示在“point”圖層上,如下:
(defun ez (/ f xxx xxy xxx1 xxy1 xxx2 xxy2 cep oldom oldcm oldbm oldfd oldlp oldla pt en ptlist ss la enpt)
(prompt "形心求解器修改版 0.2 2004年6月26日")
(command "undo" "group")
(setq oldla (getar "CLAYER"))
(setq oldcm (getar "CMDECHO"))
(setq oldfd (getar "FILEDIA"))
(setq oldlp (getar "LUPREC"))
(setq oldom (getar "OSMODE"))
(setq oldbm (getar "BLIPMODE"))
(setq oldpm (getar "PDMODE"))
(setar "CMDECHO" 0)
(setar "FILEDIA" 0)
(setar "LUPREC" 8)
(setar "OSMODE" 0)
(setar "BLIPMODE" 1)

(if (not laname) (setq laname "c-h"))
(setq la (getstring (strcat "n請輸欲求形心的實(shí)體所在圖層名<" laname "或當(dāng)前層>:")))
(if (= la "") (setq la laname) (setq laname la))
(if (tblsearch "LAYER" la)
(setq ss (ssget "X" (list (cons 8 la))))
(setq ss (ssget "X"))
)
(while
(setq pt (getpoint "n請點(diǎn)取欲求形心的封閉實(shí)體內(nèi)部點(diǎn):"))
(setq ptlist (append ptlist (list pt)))
)
(if ss
(progn
(if ptlist
(progn
(foreach pt ptlist
(command "-boundary" "a" "o" "r" "b" "n" ss "" "" pt "")
(setq en (entget (entlast)))
(if (equal (assoc 0 en) '(0 . "REGION"))
(progn
(command "massprop" "l" "" "y" "c:/ZZX.mpr")
(command "_erase" "l" "")
(setq f (open "c:/ZZX.mpr" "r"))
(read-line f)
(read-line f)
(read-line f)
(read-line f)
(read-line f)
(read-line f)
(read-line f)
(setq xxx (read-line f))
(setq xxy (read-line f))
(close f)
(setq xxx1 (substr xxx 25 20))
(setq xxy1 (substr xxy 25 20))
(setq xxx2 (atof xxx1))
(setq xxy2 (atof xxy1))
(setq cep (list xxx2 xxy2 0))
(setq enpt (entmake (list (cons 0 "point")(cons 8 "point") (cons 10 cep))))
);;;end progn
(prompt "n沒有選到符合求形心條件的東東,退出!")
);;;end if
);;;end foreach
(if enpt
(progn
(command "-layer" "on" "point" "")
(if (/= (getar "pdmode") 3) (setar "pdmode" 3))
(command "_redraw")
(princ)
(prompt "nn 多義線的形心已用點(diǎn)顯示在point圖層,如果有必要請定義過點(diǎn)的形式以顯示得更好")
);;;end progn
);;;end if
);;;end progn
(prompt "n 沒有選到任何點(diǎn),退出!")
);;;end if ptlist
);;;end progn
(prompt "n沒有選到符合求形心條件的東東,退出!")
);;;end if ss
(setar "FILEDIA" oldfd)
(setar "LUPREC" oldlp)
(setar "CMDECHO" oldcm)
(setar "OSMODE" oldom)
(setar "CLAYER" oldla)
(setar "BLIPMODE" oldbm)
(setar "PDMODE" oldpm)
(command "undo" "end")
(princ)
);;;end defun


使用了一下,感覺不錯
在材料力學(xué)中應(yīng)該有較大用處