日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

lisp捕捉垂足_定位-'Cal计算器

發布時間:2023/11/30 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 lisp捕捉垂足_定位-'Cal计算器 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

命令'CAL,右鍵菜單選擇“快速計算器”或CTRL+8都可以打開計算器。

使用 CAL 命令,用戶可以:

一.)獲取點

1.使用光標獲取點

用 cur 函數。程序會提示用戶指定點并使用當前的 UCS 點的坐標值。cur 函數用于設置系統變量 lastpoint的值。

2.獲取交點

ille?ill(p1,p2,p3,p4) 確定兩條直線 (p1、p2) 和 (p3、p4) 的交點。所有點都被認為是三維點。

ilp(p1,p2,p3,p4,p5) 確定直線(通過 p1、p2)和平面(通過三點 p3、p4、p5)的交點。

3.計算直線上的點

①. 在兩實體間確定中點表達式(end+end)/2。也可用mtp成m2p,需捕捉中點所在的兩個點來確定中點。

快捷函數mee?(end,end)/2兩端點的中點。

②.確定一條直線上的任意等分等距點

快捷函數pltee(t)?plt(P1,P2,t)由兩端點確定的直線上某一參數化位置的點。(divide定數等分確定多點。)

參數 t 定義點在直線上的參數化位置。

如果 t=0,則所求點為 p1

如果 t=0.5,則所求點是 p1 和 p2 的中點

如果 t=1,則所求點為 p2

快捷函數pldee(d)?pld(P1,P2,dist)由兩端點確定的直線上某一距離處的點。(measure定距等分確定多點)

參數 dist 定義該點到點 p1 的距離。

4.獲取上一個指定點?

在表達式中使用“@+”字符可獲得上一個點的坐標,如下例所示:

命令: line

指定第一個點: 'cal

>> 表達式: cen+[0,1]

>> 選擇圖元用于 CEN 捕捉: 選擇圓或圓弧

指定下一點或 [閉合(C)/放棄(U)]: 'cal

>> 表達式:@ +3*vec1(cen,cen)

直線的第一點自第一個選定圓的圓心在 Y 軸方向上偏移一個單位。直線的第二點距第一點三個單位。直線的方向是從第一個選定圓的圓心指向第二個選定圓的圓心。

二.)變量variable

如果在 CAL 命令中輸入的 AutoLISP 變量名稱中包含具有特殊含義的字符(例如 +、-、* 或 /),請用單引號 (') 將變量名稱括起來,例如:'number-of-holes'

1.將對象捕捉作為表達式中的變量

①.使用相對坐標來確定點

end+[2,3]作點和點的相加運算,在端點上加一個相對坐標偏移。

這樣的點也可以用跟蹤track(tk)的捕捉方式來獲取。需確定第一追蹤點,相當于上面的end。

2、給 AutoLISP 變量賦值

要給 AutoLISP 變量賦值,

變量名=表達式

3.在計算中使用系統變量

語法為:getvar( variable_name )

下例使用 getvar 獲得當前視口中視圖的圓心。getvar(viewctr)

使用這種方法還可以訪問用戶系統變量 USERI1-5 和 USERR1-5。例如,要檢索存儲在 USERR2 中的值,可輸入以下內容:  getvar(userr2)

三.)矢量vector

1.過濾矢量中的 X、Y 和 Z 分量

xyof(P1) 點的x和y分量;z分量設定為0.0

xzof(P1) 點的x和z分量;y分量設定為0.0

yzof(P1) 點的y和z分量;x分量設定為0.0

xof(P1) 點的x分量;y和z分量設定為0.0

yof(P1) 點的y分量;x和z分量設定為0.0

zof(P1) 點的z分量;x和y分量設定為0.0

rxof(P1) 點的x的分量

ryof(P1) 點的y的分量

rzof(P1) 點的z的分量

2.計算兩點的矢量

快捷函數vee?vec(p1,p2)計算從點 p1 到點 p2 的矢量平移。

快捷函數vee1?vec1(p1,p2)計算從點 p1 到點 p2 的單位矢量方向。

L*vec1(P1,P2)確定長度L在從點P1到點P2方向上的矢量。

a+[5<20]確定從點a以20度角偏移5個單位后得到的點b。注意:[5<20]是以極坐標表示的矢量。

a+v確定從點a平移矢量v后得到的點b。

3.計算法向矢量:矢量定義法線的方向而不是空間中的位置。可將法向矢量加到一個點上以獲得另一個點。(即與直線或平面垂直的矢量)

nor

確定選定的圓、圓弧或多段線圓弧段的三維單位法向矢量。此法向矢量是選定對象的對象坐標系 (OCS) 的 Z 軸。

nor(v)

確定矢量 v 的二維單位法向矢量。這兩個矢量都被認為是二維的,且投影在當前 UCS 的 XY 平面上。得出的法向矢量的方向指向原矢量 v 的左邊。

快捷函數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是垂線的長度,根據提示捕捉垂點nod點和直線的兩個端點獲取垂直方向nee(改變光標捕捉直線端點的順序,可在直線的另一側畫垂線。)

例②作和一斜線相切的圓;

cur+3*nee (cur表示用光標在屏幕上拾取一個點作為圓和直線的切點,nee函數用來計算斜線的兩端點矢量的法線,也可以簡單理解為方向,(改變光標捕捉斜線端點的順序,也可在直線的另一側畫圓。)3是圓的半徑,輸入圓半徑長度3則正相切)

例③.過圓和一直線的交點int作圓的切線

int+3*nor(cen,int)

畫線命令點交點確定切線第一個點,確定第二個切線點時輸入'cal,輸入 int+3*nor(cen,int)(nor是計算圓心與交點兩個點的法線(垂直)方向。(改變光標捕捉直線端點的順序,也可在直線的另一側畫切線。)根據提示點交點,圓形,交點即可作出長度為3的切線。

4.計算矢量的長度

abs(v)計算矢量 v 的長度,結果為非負實數。在球坐標(距離

四.)其他

⑴設定英尺和英寸的格式:

英尺'-英寸"、英尺' 英寸" 或英尺'英寸"

可以用短劃線或空格將英尺、英寸和分數部分的英寸隔開,也可以不隔開。

警告使用英制單位時,CAL 將減號或破折號 (-) 當作單位分隔符而不是減法運算符。要指定減法運算,應在減號前面或后面至少添加一個空格。例如,要從 5' 中減去 9”,輸入 5' -9” 而不是 5'-9”。

⑵設定角度的格式:

角度的默認單位是十進制度數。請按以下格式輸入角度: d ' ”

當輸入的角度小于 1 度時(只有分和秒),必須輸入 0d。可以省略零分和零秒。

要按弧度輸入角度,請在輸入的數字后面加上 r。

要按百分度輸入角度,請在輸入的數字后面加上 g。

以下是各種角度輸入法的樣例:

5d10'20"

0d10'20"

124.6r

14g

以任何格式輸入的角度都會轉換成十進制角度。

Pi 弧度等于 180 度,100g 等于 90 度。

⑶計算距離

dee?dist(p1,p2)確定點 p1 和 p2 之間的距離。此函數相當于矢量表達式 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)

⑷獲取半徑

快捷函數rad 可以確定圓、圓弧或二維多段線圓弧對象的半徑。

⑸獲取角度

ang 函數可以確定兩條直線之間的夾角。角度按逆時針方向測量,二維情況下相對于 X 軸測量,三 維情況下則相對于用戶指定的軸測量。

ang(v)

確定 X 軸和矢量 v 之間的角度。矢量 v 被認為是二維的,且投影在當前 UCS的 XY 平面上。

ang(p1,p2)

確定 X 軸和直線(通過 p1、p2,方向為從 p1 到 p2)的夾角。該點被認為是二維的,且投影在當前 UCS 的 XY 平面上。

ang(apex,p1,p2)

確定直線 (apex,p1) 和 (apex,p2) 的夾角。該點被認為是二維的,且投影在當前 UCS 的 XY 平面上。apex是頂點。

ang(apex,p1,p2,p)

確定直線 (apex,p1) 和 (apex,p2) 的夾角。直線被認為是三維的。最后一個參數(點 p)用來定義角度的方向。此角度以頂點到點 p 的直線為軸按逆時針方向測量。

⑹繞坐標軸旋轉點

rot 函數繞坐標軸旋轉點并返回旋轉得到的點。

rot(p,origin,ang)以經過原點的 Z 軸為軸,旋轉點 p,旋轉角度為 ang 。

rot(p,AxP1,AxP2,ang)以經過點 AxP1 和點 AxP2 的直線為軸旋轉點 p,轉角為 ang軸的方向為從第一個點到第二個點。

⑺在 UCS 和 WCS 之間轉換點

通常程序假定所有坐標都是相對于當前 UCS 的。可以使用下列函數在 UCS 和 WCS 之間轉換點的坐標值。

w2u(p1)

將以 WCS 表示的點 p1 轉換到當前 UCS 中。

u2w(p1)

將以當前 UCS 表示的點 p1 轉換到 WCS 中。

可使用 w2u 查找用當前的 UCS 表示的 WCS 的原點:w2u([0,0,0])

⑻轉換測量單位。

關于可轉換的單位列表,請參見 acad.unt 文件(適用于 AutoCAD)或 acadlt.unt 文件(適用于 AutoCAD LT)。

語法為:cvunit ( value, from_unit, to_unit )

下例將值 1 從英尺轉換為厘米:

cvunit(1,inch,cm)

總結

以上是生活随笔為你收集整理的lisp捕捉垂足_定位-'Cal计算器的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。