



下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、精選優(yōu)質文檔-傾情為你奉上Cad畫二次拋物線如y=ax2+bx+c 第一步 確認cad中有VBA module如果沒有請下載,即CAD中“工具”“宏”“visual basic編輯器”,點thisdrawing第二步 打開cadalt+F11打開VBA窗口添加模塊復制以下 Sub pwx() '定義幾個點 Dim pntO(2) As Double Dim pntA(2) As Double Dim pntB(2) As Double Dim pntC(2) As Double Dim pntD(2) As DoubleDim pntE(2) As Double '設拋物線方程
2、為:y=ax²+bx+c Dim a As Double Dim b As Double Dim c As Double '設拋物線的寬度為l Dim l As Double Dim p As Double Dim Co As Acad3DSolid Dim Se AsAcadRegion Dim Pa As Acad3DFace Dim PntAsAcadPoint Dim Sp() As AcadObject a = InputBox("請輸入y=a*x*x+b*x+c中對應的a:", "拋物線方程參數(shù)") If a = 0 The
3、n MsgBox "a=0, 不是拋物線": End b = InputBox("請輸入y=a*x*x+b*x+c中對應的b:", "拋物線方程參數(shù)") c = InputBox("請輸入y=a*x*x+b*x+c中對應的c:", "拋物線方程參數(shù)") l = InputBox("請輸入所要畫的拋物線寬度l:", "拋物線寬度") l = l / 2 '計算x²=2py中的p p = 1 / Abs(a) '定義O點 pntO(0
4、) = 0 pntO(1) = 0 pntO(2) = 0 '定義A點 pntA(0) = 0 pntA(1) = 0 pntA(2) = l * Sqr(3) / 2 '畫圓錐 Set Co = ThisDrawing.ModelSpace.AddCone(pntO, l, l * Sqr(3) '移動圓錐,使底部圓在xy平面上 Co.MovepntO, pntA If l > p / 2 Then '定義A點 pntA(0) = 0 pntA(1) = p / 2 pntA(2) = (l - p / 2) * Sqr(3) '定義B點 pnt
5、B(0) = 0 pntB(1) = -l + p pntB(2) = 0 '定義C點 pntC(0) = 1 pntC(1) = -l + p pntC(2) = 0 '畫剝面線 Set Se = Co.SectionSolid(pntA, pntB, pntC) '剝面線旋轉到xy平面 Se.Rotate3D pntB, pntC, -60 * 4 * Atn(1) / 180'定義D點 pntD(0) = 0 pntD(1) = -l pntD(2) = 0 '定義E點 pntE(0) = 1 pntE(1) = 0 pntE(2) = 0
6、9;移動剝面線,使頂點在(0,0,0)位置 Se.MovepntO, pntD '當a>0時,翻轉曲線 If a > 0 Then Se.Rotate3D pntO, pntE, 180 * 4 * Atn(1) / 180 '重新設E點 pntE(0) = -b / (2 * a) pntE(1) = (4 * a * c - b 2) / (4 * a) pntE(2) = 0 '移拋物線 Se.MovepntO, pntE '炸開剝面線 Sp = Se.Explode '刪除輔助內容 Co.Delete Se.Delete Sp(1).
7、Delete Else MsgBox "輸入的l太小,不適合剝圓錐" End If End Sub 第三步 菜單欄里點擊運行命令輸入?yún)?shù)abc以及拋物線寬度即可得到 一次出差到一個項目工地去,看到他們對著電腦上設計單位給的CAD圖在一個點一個點的的找坐標值.方法是用鼠標點上一個點,記下(X,Y)后再輸?shù)紼XCEL中,怕一個人出錯,得兩個人來操作. 后來有人發(fā)現(xiàn)了一個好辦法,說不用筆來記(X,Y)了,直接用復制和粘貼的辦法來做,這確實是一大進步呀.我問他們這一晚上能找多少點呀, 回答說做不了多少還老出錯. 我說這樣吧我給你編一個小程序用吧. 一晚過后第二天他們拿程序一用都說真
8、是省大勁了,又準又快呀.在CAD中 選 工具-宏-visual basic編輯器, 點thisdrawing 把下面的程序寫進去, 然后點運行即可.Attribute VB_Name = "模塊1"Sub abc()Dim x, y As DoubleDim ReturnPoint As VariantDim i As IntegerDim high As SingleDim Ptext, Fname As StringDim textObj As AcadTextDim pointObj As AcadPointDim layerObj As AcadLayerx = 0
9、: y = 0: i = 1: high = 9Fname = InputBox("選取結束時,請回到第一點!請給出文件名。")If Fname = "" Then Fname = "PointsDate"Fname = "c:abc" & Fname & ".txt"Set layerObj = ThisDrawing.Layers.Add("PointsData")ReturnPoint = ThisDrawing.Utility.GetPointPtex
10、t = i & ":(" & Round(ReturnPoint(0), 2) & "," & Round(ReturnPoint(1), 2) & ")"Set textObj = ThisDrawing.ModelSpace.AddText(Ptext, ReturnPoint, high)Set pointObj = ThisDrawing.ModelSpace.AddPoint(ReturnPoint)pointObj.Layer = "PointsData"textObj.Layer = "PointsData"pointObj.color = acRedOpen Fname For Output As
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 果蔬儲藏保鮮技術考核試卷
- 天然氣輸配系統(tǒng)供氣合同管理與糾紛處理考核試卷
- 植物油加工副產(chǎn)品的化工利用考核試卷
- 洗滌設備的抗菌技術應用考核試卷
- 油茶種植園病蟲害綜合治理考核試卷
- 煉焦焦化廢氣的凈化處理考核試卷
- 休養(yǎng)所養(yǎng)生保健知識傳播與普及效果考核試卷
- 樂器批發(fā)商的品牌市場品牌市場品牌規(guī)劃考核試卷
- 信托公司風險應對措施考核試卷
- 搜索引擎在突發(fā)事件響應中的角色考核試卷
- 2024至2030年中國蛋品加工行業(yè)市場行情監(jiān)測與發(fā)展前景展望分析報告
- 班本課程筷樂出發(fā)
- 中等職業(yè)技術學?!缎履茉雌嚫攀觥氛n程標準
- 班主任基本功大賽育人故事一等獎:我的“第一名”
- 雷軍2024演講破釜沉舟
- 安徽省沿淮教育聯(lián)盟2025屆九年級英語第一學期期末學業(yè)水平測試試題含解析
- CJT151-2016 薄壁不銹鋼鋼管
- 2024年民航安全檢查員(三級)資格理論考試題庫大全-上(單選題部分)
- 2024年支氣管激發(fā)試驗臨床應用中國專家共識(完整版)
- 幼兒園中班語言課件:《小雞看世界》
- FZT 73022-2019 針織保暖內衣
評論
0/150
提交評論