lisp捕捉垂足_定位-'Cal计算器
命令'CAL,右鍵菜單選擇“快速計算器”或CTRL+8都可以打開計算器。
使用 CAL 命令,用戶可以:
一.)獲取點
1.使用光標(biāo)獲取點
用 cur 函數(shù)。程序會提示用戶指定點并使用當(dāng)前的 UCS 點的坐標(biāo)值。cur 函數(shù)用于設(shè)置系統(tǒng)變量 lastpoint的值。
2.獲取交點
ille?ill(p1,p2,p3,p4) 確定兩條直線 (p1、p2) 和 (p3、p4) 的交點。所有點都被認(rèn)為是三維點。
ilp(p1,p2,p3,p4,p5) 確定直線(通過 p1、p2)和平面(通過三點 p3、p4、p5)的交點。
3.計算直線上的點
①. 在兩實體間確定中點表達(dá)式(end+end)/2。也可用mtp成m2p,需捕捉中點所在的兩個點來確定中點。
快捷函數(shù)mee?(end,end)/2兩端點的中點。
②.確定一條直線上的任意等分等距點
快捷函數(shù)pltee(t)?plt(P1,P2,t)由兩端點確定的直線上某一參數(shù)化位置的點。(divide定數(shù)等分確定多點。)
參數(shù) t 定義點在直線上的參數(shù)化位置。
如果 t=0,則所求點為 p1
如果 t=0.5,則所求點是 p1 和 p2 的中點
如果 t=1,則所求點為 p2
快捷函數(shù)pldee(d)?pld(P1,P2,dist)由兩端點確定的直線上某一距離處的點。(measure定距等分確定多點)
參數(shù) dist 定義該點到點 p1 的距離。
4.獲取上一個指定點?
在表達(dá)式中使用“@+”字符可獲得上一個點的坐標(biāo),如下例所示:
命令: line
指定第一個點: 'cal
>> 表達(dá)式: cen+[0,1]
>> 選擇圖元用于 CEN 捕捉: 選擇圓或圓弧
指定下一點或 [閉合(C)/放棄(U)]: 'cal
>> 表達(dá)式:@ +3*vec1(cen,cen)
直線的第一點自第一個選定圓的圓心在 Y 軸方向上偏移一個單位。直線的第二點距第一點三個單位。直線的方向是從第一個選定圓的圓心指向第二個選定圓的圓心。
二.)變量variable
如果在 CAL 命令中輸入的 AutoLISP 變量名稱中包含具有特殊含義的字符(例如 +、-、* 或 /),請用單引號 (') 將變量名稱括起來,例如:'number-of-holes'
1.將對象捕捉作為表達(dá)式中的變量
①.使用相對坐標(biāo)來確定點
end+[2,3]作點和點的相加運算,在端點上加一個相對坐標(biāo)偏移。
這樣的點也可以用跟蹤track(tk)的捕捉方式來獲取。需確定第一追蹤點,相當(dāng)于上面的end。
2、給 AutoLISP 變量賦值
要給 AutoLISP 變量賦值,
變量名=表達(dá)式
3.在計算中使用系統(tǒng)變量
語法為:getvar( variable_name )
下例使用 getvar 獲得當(dāng)前視口中視圖的圓心。getvar(viewctr)
使用這種方法還可以訪問用戶系統(tǒng)變量 USERI1-5 和 USERR1-5。例如,要檢索存儲在 USERR2 中的值,可輸入以下內(nèi)容: getvar(userr2)
三.)矢量vector
1.過濾矢量中的 X、Y 和 Z 分量
xyof(P1) 點的x和y分量;z分量設(shè)定為0.0
xzof(P1) 點的x和z分量;y分量設(shè)定為0.0
yzof(P1) 點的y和z分量;x分量設(shè)定為0.0
xof(P1) 點的x分量;y和z分量設(shè)定為0.0
yof(P1) 點的y分量;x和z分量設(shè)定為0.0
zof(P1) 點的z分量;x和y分量設(shè)定為0.0
rxof(P1) 點的x的分量
ryof(P1) 點的y的分量
rzof(P1) 點的z的分量
2.計算兩點的矢量
快捷函數(shù)vee?vec(p1,p2)計算從點 p1 到點 p2 的矢量平移。
快捷函數(shù)vee1?vec1(p1,p2)計算從點 p1 到點 p2 的單位矢量方向。
L*vec1(P1,P2)確定長度L在從點P1到點P2方向上的矢量。
a+[5<20]確定從點a以20度角偏移5個單位后得到的點b。注意:[5<20]是以極坐標(biāo)表示的矢量。
a+v確定從點a平移矢量v后得到的點b。
3.計算法向矢量:矢量定義法線的方向而不是空間中的位置。可將法向矢量加到一個點上以獲得另一個點。(即與直線或平面垂直的矢量)
nor
確定選定的圓、圓弧或多段線圓弧段的三維單位法向矢量。此法向矢量是選定對象的對象坐標(biāo)系 (OCS) 的 Z 軸。
nor(v)
確定矢量 v 的二維單位法向矢量。這兩個矢量都被認(rèn)為是二維的,且投影在當(dāng)前 UCS 的 XY 平面上。得出的法向矢量的方向指向原矢量 v 的左邊。
快捷函數(shù)nee?nor(P1,P2)
確定直線 p1,p2 的二維單位(xy平面)法向矢量。該直線的方向為從 p1 指向 p2。得出的法向矢量的方向為指向原直線 (p1、p2) 的左邊。
nor(p1,p2,p3)
確定平面(由 p1、p2 和 p3 三點定義)的三維單位法向矢量。法向矢量的方向與給定三點的逆時針方向垂直。
例①過一條斜線上的已知nod點作斜線的垂線,也可用遞延垂足作垂線。
畫線命令在斜線上確定垂線的第一個點即nod垂足,確定垂線第二點時輸入'cal,輸nod+5*nee (5是垂線的長度,根據(jù)提示捕捉垂點nod點和直線的兩個端點獲取垂直方向nee(改變光標(biāo)捕捉直線端點的順序,可在直線的另一側(cè)畫垂線。)
例②作和一斜線相切的圓;
cur+3*nee (cur表示用光標(biāo)在屏幕上拾取一個點作為圓和直線的切點,nee函數(shù)用來計算斜線的兩端點矢量的法線,也可以簡單理解為方向,(改變光標(biāo)捕捉斜線端點的順序,也可在直線的另一側(cè)畫圓。)3是圓的半徑,輸入圓半徑長度3則正相切)
例③.過圓和一直線的交點int作圓的切線
int+3*nor(cen,int)
畫線命令點交點確定切線第一個點,確定第二個切線點時輸入'cal,輸入 int+3*nor(cen,int)(nor是計算圓心與交點兩個點的法線(垂直)方向。(改變光標(biāo)捕捉直線端點的順序,也可在直線的另一側(cè)畫切線。)根據(jù)提示點交點,圓形,交點即可作出長度為3的切線。
4.計算矢量的長度
abs(v)計算矢量 v 的長度,結(jié)果為非負(fù)實數(shù)。在球坐標(biāo)(距離
四.)其他
⑴設(shè)定英尺和英寸的格式:
英尺'-英寸"、英尺' 英寸" 或英尺'英寸"
可以用短劃線或空格將英尺、英寸和分?jǐn)?shù)部分的英寸隔開,也可以不隔開。
警告使用英制單位時,CAL 將減號或破折號 (-) 當(dāng)作單位分隔符而不是減法運算符。要指定減法運算,應(yīng)在減號前面或后面至少添加一個空格。例如,要從 5' 中減去 9”,輸入 5' -9” 而不是 5'-9”。
⑵設(shè)定角度的格式:
角度的默認(rèn)單位是十進(jìn)制度數(shù)。請按以下格式輸入角度: d ' ”
當(dāng)輸入的角度小于 1 度時(只有分和秒),必須輸入 0d。可以省略零分和零秒。
要按弧度輸入角度,請在輸入的數(shù)字后面加上 r。
要按百分度輸入角度,請在輸入的數(shù)字后面加上 g。
以下是各種角度輸入法的樣例:
5d10'20"
0d10'20"
124.6r
14g
以任何格式輸入的角度都會轉(zhuǎn)換成十進(jìn)制角度。
Pi 弧度等于 180 度,100g 等于 90 度。
⑶計算距離
dee?dist(p1,p2)確定點 p1 和 p2 之間的距離。此函數(shù)相當(dāng)于矢量表達(dá)式 abs( p1 - p2 )。
dpl(p,p1,p2)確定點 p 到直線(通過點 p1 和 p2)的最短距離。
dpp(p,p1,p2,p3)確定點 p 到平面(由三點 p1、p2、p3 定義)的距離。
下例返回兩個選定對象的中心之間距離的一半:dist(cen,cen)/2
下例確定了點 [3,2,4] 與由三個選定端點定義的平面之間的距離:
dpp([3,2,4],end, end, end)
⑷獲取半徑
快捷函數(shù)rad 可以確定圓、圓弧或二維多段線圓弧對象的半徑。
⑸獲取角度
ang 函數(shù)可以確定兩條直線之間的夾角。角度按逆時針方向測量,二維情況下相對于 X 軸測量,三 維情況下則相對于用戶指定的軸測量。
ang(v)
確定 X 軸和矢量 v 之間的角度。矢量 v 被認(rèn)為是二維的,且投影在當(dāng)前 UCS的 XY 平面上。
ang(p1,p2)
確定 X 軸和直線(通過 p1、p2,方向為從 p1 到 p2)的夾角。該點被認(rèn)為是二維的,且投影在當(dāng)前 UCS 的 XY 平面上。
ang(apex,p1,p2)
確定直線 (apex,p1) 和 (apex,p2) 的夾角。該點被認(rèn)為是二維的,且投影在當(dāng)前 UCS 的 XY 平面上。apex是頂點。
ang(apex,p1,p2,p)
確定直線 (apex,p1) 和 (apex,p2) 的夾角。直線被認(rèn)為是三維的。最后一個參數(shù)(點 p)用來定義角度的方向。此角度以頂點到點 p 的直線為軸按逆時針方向測量。
⑹繞坐標(biāo)軸旋轉(zhuǎn)點
rot 函數(shù)繞坐標(biāo)軸旋轉(zhuǎn)點并返回旋轉(zhuǎn)得到的點。
rot(p,origin,ang)以經(jīng)過原點的 Z 軸為軸,旋轉(zhuǎn)點 p,旋轉(zhuǎn)角度為 ang 。
rot(p,AxP1,AxP2,ang)以經(jīng)過點 AxP1 和點 AxP2 的直線為軸旋轉(zhuǎn)點 p,轉(zhuǎn)角為 ang軸的方向為從第一個點到第二個點。
⑺在 UCS 和 WCS 之間轉(zhuǎn)換點
通常程序假定所有坐標(biāo)都是相對于當(dāng)前 UCS 的。可以使用下列函數(shù)在 UCS 和 WCS 之間轉(zhuǎn)換點的坐標(biāo)值。
w2u(p1)
將以 WCS 表示的點 p1 轉(zhuǎn)換到當(dāng)前 UCS 中。
u2w(p1)
將以當(dāng)前 UCS 表示的點 p1 轉(zhuǎn)換到 WCS 中。
可使用 w2u 查找用當(dāng)前的 UCS 表示的 WCS 的原點:w2u([0,0,0])
⑻轉(zhuǎn)換測量單位。
關(guān)于可轉(zhuǎn)換的單位列表,請參見 acad.unt 文件(適用于 AutoCAD)或 acadlt.unt 文件(適用于 AutoCAD LT)。
語法為:cvunit ( value, from_unit, to_unit )
下例將值 1 從英尺轉(zhuǎn)換為厘米:
cvunit(1,inch,cm)
總結(jié)
以上是生活随笔為你收集整理的lisp捕捉垂足_定位-'Cal计算器的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 成都大熊猫基地老人票怎么买
- 下一篇: CF手游M4A1死神怎么获得