图元变形lisp源码_AutoLISP入门6---图元资料的取得与活用技巧(一).pdf
單元六:?圖元資料的取得與活用技巧(一)
一.圖元資料串列的重要性:
您可知您所繪制的每一個AutoCAD元體 (如
LINE?、?CIRCLE?、?ARC?、?TEXT?、?BLOCK?、?POLYLINE?、?DIMENSION...)
均有其專屬的資料串列!!!
沒錯以LIST指令即可查詢出來,顯示于螢幕上
但是該如何透過AutoLISP功能去選取、取得、修改、更新資料呢???該如何去有效
活用呢???
別急就是本單元的學習重點!!!
請注意本章節非常重要,務必要求透徹了解!!!
二、重要圖元資料應用相關的功能函數介紹:
(entsel [提示])請求選取一個圖元,回應包含圖元名稱及選點座標的串列
(car串列)傳回:串列中的第一個元素,通常用來求x座標
(cadr串列)傳回:串列中的第二個元素,通常用來求y座標
(caddr串列)傳回:串列中的第三個元素,通常用來求z座標
(cdr串列)傳回:除去第一個元素后的串列
(entlast)?:取出圖形資料中的最后一個圖元
(entget圖元名稱[應用程式串列])?:取得圖元名稱的資料聯合串列
(assoc關鍵元素聯合串列)?:依關鍵元素找尋聯合串列中關系資料
(cons新元素串列)傳回:將新元素結合到串列,常用于產生 『點對串列』
(subst新項舊項串列)傳回:替換新舊串列后的串列
(entmod圖元串列)依更新的資料串列更新螢幕上元體
(list元素元素…?)傳回:將元素結合成一串列
三、圖元資料聯合串列取得技巧與群碼分析:
1.基礎準備動作:?請開一張新圖,并建立二個新層STR、TXT,顏色分別為紅色(red)、綠
色(green)
首先在?STR?層畫一條線
指令:?LINE
起點:?15,10
下一點:?50,40
下一點:? (?按? [Enter]?結束?)
在?STR?層畫一個圓
指令:?CIRCLE
CIRCLE三點(3P)/二點(2P)/相切,相切,半徑 (T)/
>:?60,15
直徑 (D)/:?12.5
在?TXT?層寫幾個字?AutoCAD
指令:?DTEXT
對正(J)/字型(S)/:? (選取文字的位置點)
高度<2.5000>:?8
旋轉角度<0>:?0
文字:?AutoCAD
文字:? (按[Enter]結束)
圖示:
2.?在?AutoCAD?的?Command:?下練習取得圖元資料串列
練習函數?entsel?、?car?、?cdr?、?entget
指令: (setq en1 (entsel))
選取物件:? (選取圓)
傳回一串列:? ( (67.604 24.5166 0.0))
其中?< 圖元名稱
(67.604 24.5166 0.0)?< 選點座標
指令: (car en1)
傳回: ?< 串列的第一個元素
指令: (cadr en1)
傳回: (67.604 24.5166 0.0)?< 串列的第二個元素
指令: (setq en1_data (entget (car en1)))
傳回 『?圓的聯合資料串列?』:
((-1 . ) (0 . "C
總結
以上是生活随笔為你收集整理的图元变形lisp源码_AutoLISP入门6---图元资料的取得与活用技巧(一).pdf的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python os模块安装_二十七、深入
- 下一篇: diskgenius扩容c盘重启电脑卡住