用Cad画二次抛物线

Cad画二次抛物线如y=ax2+bx+c

第一步 确认cad中有VBA module如果没有请下载visual basic编辑器thisdrawing

第二步 打开cadalt+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 Double

Dim (2) As Double

'设抛物线方程为:y=ax2+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:", "抛物线方程参数")

If a = 0 Then MsgBox "a=0, 不是抛物线": End

b = InputBox("请输入y=a*x*x+b*x+c中对应的b:", "抛物线方程参数")

c = InputBox("请输入y=a*x*x+b*x+c中对应的c:", "抛物线方程参数")

l = InputBox("请输入所要画的抛物线宽度l:", "抛物线宽度")

l = l / 2

'计算x2=2py中的p

p = 1 / Abs(a)

'定义O点

pntO(0) = 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点

pntB(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

'移动剥面线,使顶点在(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).Delete

Else

MsgBox "输入的l太小,不适合剥圆锥"

End If

End Sub

第三步 菜单栏里点击运行命令输入参数abc以及抛物线宽度即可得到

CAD和Excel VBA高手请进 批量获取坐标点数据

一次出差到一个项目工地去,看到他们对着电脑上设计单位给的CAD图在一个点一个点的的找坐标值.方法是用鼠标点上一个点,记下(X,Y)后再输到EXCEL中,怕一个人出错,得两个人来操作. 后来有人发现了一个好办法,说不用笔来记(X,Y)了,直接用复制和粘贴的办法来做,这确实是一大进步呀.我问他们这一晚上能找多少点呀, 回答说做不了多少还老出错. 我说这样吧我给你编一个小程序用吧. 一晚过后第二天他们拿

cad lisp 二次抛物线_用Cad画二次抛物线.doc相关推荐

  1. cad lisp 微盘 程序_使用CAD无法避免的3个坑,你知道怎么绕开吗|AutoCAD断舍离

    使用CAD无法避免的3个坑,你知道怎么绕开吗|AutoCAD断舍离 作者:就说我在开发区 CAD中如何使用做到"断舍离" 导读:CAD使用真是一步一个坎儿,一步一个坑儿,不擦亮眼睛 ...

  2. cad lisp 二次抛物线_用Cad画二次抛物线

    Cad 画二次抛物线如 y=ax2+bx+c 第一步  确认 cad 中有 VBA module  如果没有请下载, 即 CAD 中 "工具" → "宏" ...

  3. cad有没有网页版_在线CAD看图网页版,一样可以快速查看CAD图纸

    CAD制图工作中,如果想要快 速查看CAD图纸,使用方便的CAD看图软件是常用的.CAD看图软件区别于AutoCAD复杂的程序,可以对dwg\dxf格式的CAD图纸进行浏览查看.同时可以完整的显示出图 ...

  4. 二次开发_企业ERP系统二次开发问题的探讨分析

    新朋友点上方蓝字"ERP之家"快速关注 导读:根据笔者多年在企业中实施及推进ERP,概的实战经验,阐述了ERP系统二次开发的必然性和二次发开的成因及存在的风险,提出如何合理地规避二 ...

  5. python画二维温度云图_一种画二维温度场彩色云图的新方法

    一种画二维温度场彩色云图的新方法 刘永军 ; 李宏男 [摘 要] 介绍一种画二维温度场彩色云图的新方法 , 其特点是算法简单 , 结果精确 , 易于编程 . [期刊名称] <图学学报> [ ...

  6. cad lisp 二次抛物线_学习CAD的五个段位,你是青铜还是王者?

    大家学习AutoCAD多久了,从入门到精(fang)通(qi),小编总结了5个段位,大家对号入座. 此时视口内的三维实体并没有任何变化,需要后续使用soldraw才能进行转换. SOLVIEW创建的视 ...

  7. LISP 圆孔标记_【CAD】〖30〗生成圆孔明细表

    [CAD][30]生成圆孔明细表 2018-09-19 [转载]原创为XDSoft AUTOCAD可以这样玩!!! 授人以鱼不如授人以渔!!! ★★如果在ACAD下,你工作中有需要把重复的劳动希望用插 ...

  8. lisp提取长方形坐标_在CAD中,用LISP如何提取三维多段端点坐标?

    答:请查看附件,写的lisp程序,输入tt运行程序,批量选择cad中的点,然后将坐标写入txt文件. 指定保存文件的位置及名称,... 答:(vl-load-com) (setq ptb (vlax- ...

  9. cad批量选择相同块_在CAD中如何快速选择相同或类似的图形、图块

    在CAD中如何快速选择相同或类似的图形.图块 在绘图过程有时需要选择相同或类似的对象进行相同的操作,或通过选择所有同名的图块来统计图块数量或一次性删除此图块.CAD提供了多种选择相同或类似图形和图块的 ...

最新文章

  1. OSChina 周一乱弹 —— 六天颓废一天看剧
  2. C# IP地址与数字之间的互转
  3. 求职必备:如何用产品思维写简历
  4. python的装饰器迭代器与生成器_python3 装饰器、列表生成器、迭代器、内置方法详解等(第四周)...
  5. Hive2.1.0集成Tez
  6. vue移动端过渡动画_Vue.js实现微信过渡动画左右切换效果
  7. c++ 返回数组中最大的值_4个代码块教您如何在C中动态分配2D数组
  8. 为何程序员上班时间总戴个耳机,看完恍然大悟...
  9. 国内linux内核镜像仓库,国内较快的maven仓库镜像
  10. [转载] Python3网络爬虫
  11. Linux下TI omap芯片 MUX 配置分析(以AM335X芯片为例)
  12. mysql8.0新建用户登录_Mysql8.0 创建远程登陆账户
  13. 写给人类的机器学习 2.2 监督学习 II
  14. 20155202 《Java程序设计》实验二(面向对象程序设计)实验报告
  15. 【算法学习】将MSRCR中的模糊处理由FFT修改为时域纯高斯模糊
  16. 数论入门 2021-2-28
  17. 社区发现研究报告——基于信息熵和局部相关性的多标签传播重叠社区发现算法
  18. 使用DTW算法对上证50成分股走势进行聚类分析
  19. 【生活小捣鼓】登录PC端某网站,需要他人(不在身边)手机扫二维码,这时候该怎么办?
  20. 什么是前台、中台、和后台?

热门文章

  1. 【UnblockNeteaseMusic】代理网易云后隐藏NODE代理窗口方法
  2. 19年6月仔细阅读A篇:游戏界声优
  3. 【基础框架-SSM】Maven_进阶
  4. React+阿里云Aliplayer播放器实现rtmp直播(推流时间差,重启播放器,计时观看)
  5. vue项目微信端清理缓存问题解决
  6. 股指期货手续费每日增加吗(手续费计算公式)
  7. ctf 抓捕赵德汉_第三届网络空间安全技术大赛WriteUp(cstc2017)
  8. 2015年网易考拉海淘android面试
  9. SolveigMM Video Splitter绿色中文版
  10. Mybatis + mysql获取元数据时出现问题以及解决