lisp 暖通设计_LISP 语言在CAD 道路设计中的各种应用
第三章
LISP
语言在
CAD
道路设计中的各种应用
3.1
绘制平面任意函数曲线的
AutoLISP
程序设计
在各个工程设计领域中,
经常要绘制一些曲线,
特别是平面曲线,
如水工结构的溢流曲
线、机械设计的齿轮渐开曲线等。在
AutoCAD
绘图软件中,可以将曲线上的点先计算好,
再用线、多义线、样条曲线等方法绘制,这种方法需要进行大量计算,工作量较大,如果用
EXCEL
软件来辅助计算,可以减轻工作量;另外,可以针对具体的曲线类型,用
AutoCAD
内嵌的
AutoLISP
语言,实现边计算边绘制的功能。用这种方法绘制虽然快捷,但对于不同
的曲线,则需编写同的
AutoLISP
程序,检查无误后才能运行,仍显繁琐。能否用统一的程
序,来实现各种平面函数曲线的绘制,我们尝试利用
AutoCAD
中强大的表达式计算功能来
实现这一目的。
3.1.1
平面函数曲线的类型和绘制方法
平面函数曲线即是有简单函数表达式的曲线类型,可考虑经常遇到的
4
类:
(
1
)直角坐标下形如
y=f(x)
的曲线;
(
2
)直角坐标下的参数方程曲线;
(
3
)极坐标下形如
r=f(θ)
的曲线;
(
4
)极坐标下的参数方程曲线。
其中,只需增加一个平凡方程
x=x,
参数方程(
2
)就可以包括相应的直接表达形式(
1
)
,同
样(
4
)可以包括(
3
)
。同时,极坐标形式可以通过:
x=rcosθ
y=rsinθ
转换为直角坐标表达。因此从本质上说,
4
种类型都可以互相转换,把它们分类的目的是尽
量采用函数的通常表达形式,以便于使用。绘制时,
参照曲线的手工绘制方法,需要给出曲
线上的多个点,
然后将它们连接起来。
若给出的点间隔很小,
直接用折线段相连就可很好模
拟该曲线,
如果间隔较大,可以用样条曲线连接,
使之比较光滑。
假设我们计算出足够多的
点,简单用折线连接即可,为使该曲线成为一个整体,可用多义线的方式连接。
关键的问题是,
如何计算出曲线上点的坐标。
由于曲线的函数表达式各种各样,
不可能
用统一的式子来表示。
可以考虑从外部输入表达式,
然后针对该表达式进行计算,
给出相应
结果,就能够解决点坐标的计算问题。但这个功能的实现比较困难,幸好
AutoCAD
为我们
提供了
CAL
命令,可以对任意的表达式进行计算。该命令由函数库文件
geomcal.arx
提供,
支持科学
/
工程计算器上的大多数标准函数,如三角函数、指数、对数等。若表达式中有变
量,而该变量在程序中已设定了值,则按该值进行计算。由于该函数不是
LISP
内部函数,
为使之可用,需要用
ARXLOAD
命令载入文件
geomcal.arx
,或者在命令行先输入
CAL
命
令,由系统自动载入,这样,程序中就可以使用该函数了。总的程序定义为
c:curve()
,以便
在
AutoCAD
命令行中与通常的命令一样使用。程序的总调用部分为:
(arxload "geomcal.arx")
;载入提供表达式计算功能的
ARX
文件
(vl- arx- import 'c:cal)
;让命令
c:cal
能够使用
(princ "(1)
直角坐标下曲线
y=f(x).\n")
(princ "(2)
直角坐标下参数曲线
x=f(i),y=g(i).\n")
(princ "(3)
极坐标下曲线
r=f(theta).\n")
(princ "(4)
极坐标下参数曲线
theta=f(i),r=g(i).\n")
(setq ichoice (getint "
选择绘制曲线类型:
"))
;选择曲线类型
(if (= ichoice 1) (curve1))
;调用曲线绘制类型
1
(if (= ichoice 2) (curve2))
;调用曲线绘制类型
2
lisp 暖通设计_LISP 语言在CAD 道路设计中的各种应用相关推荐
- lisp语言画地物符号_LISP语言在CAD工程制图中的应用_谢威
科技信息 一 . 引言 LISP ( List Processor ) 程序语言是由 Autodesk 公司开发的一种程序 语言 . AutoCAD 软件包中包含大多数用于产生图形 . 处理图形的命令 ...
- lisp语言绘制路灯_LISP语言在AD道路设计方案中各种应用
第三章 LISP 语言在 CAD 道路设计中地各种应用 3.1 绘制平面任意函数曲线地 AutoLISP 程序设计 在各个工程设计领域中 , 经常要绘制一些曲线 , 特别是平面曲线 , 如水工结构地溢 ...
- lisp用entmake生产圆柱体_使用lisp语言实现在平面图中自动画出桥梁的墩柱标识.doc...
使用lisp语言实现在平面图中自动画出桥梁的墩柱标识.doc 还剩 5页未读, 继续阅读 下载文档到电脑,马上远离加班熬夜! 亲,喜欢就下载吧,价低环保! 内容要点: 使用 LISP 语言实现在平面图 ...
- lisp语言怎么获取简码_Lisp语言到底神奇在哪里?
前言 在浏览各种技术文章的过程中,经常会看到Lisp这门程序语言. 不过,我一直都不是很在意. 我热爱编程,我的目标是"有能力完成一款游戏的所有程序开发工作". 在我追求这个目标而 ...
- kass中lisp文件_Lisp之文件操作
Lisp之文件系统 学习一门语言,除了基本的控制操作外,文件系统API也是很重要的,最近学习了LISP的文件系统API ,和大家分享下心得. open open是很简单的接口,如下所示: (open ...
- 中望CAD调用lisp在哪_CAD应用技巧:中望CAD中加载LISP程序
CAD的出现,给我们的绘图工作带来了很大的便利,而随着工作的不断细化,广大设计师对CAD的要求也在不断的增强,有些工作中需要的功能,在CAD软件中并没有提供,在这样的背景下,直接导致了LISP程序的产 ...
- lisp获取图名_如何用autolisp获取cad图形文件中直线和多义线的图层名
如何用autolisp获取cad图形文件中直线和多义线的图层名? 用(cdr(assoc 8 (entget (car (entsel)))))就可以得到直线和其他实体的图层名. 想要的程序是:点取 ...
- lisp获取图名_amp;#65279;如何用autolisp获取cad图形文件中直线和多义线的图层名 - 易采站长站...
如何用autolisp获取cad图形文件中直线和多义线的图层名? 用(cdr(assoc 8 (entget (car (entsel)))))就可以得到直线和其他实体的图层名. 想要的程序是:点取 ...
- cad高程如何提取到cass软件_从CAD平面图中提取坐标生成数据表
功能:在CAD中提取点的三维坐标(提取当前坐标系中坐标)直接生成Excel表,并在CAD图中生成坐标数据表,加了标点号和输出的选项. 如何安装: 1,在CAD平面图中→工具→宏→加载工程→加载下载 ...
最新文章
- 4kyu Sums of Perfect Squares
- 你的 GitHub 代码已打包运往北极,传给 1000 年后人类
- Android 引用第三方开源库,出现冲突 Manifest merger failed : Attribute application@icon value=...
- srwebsocket 服务器过段时间会关闭_Minecraft 开启服务器后必须做的一些事情
- Most Unstable Array CodeForces - 1353A(数学+贪心+建设性算法)
- Grid game CodeForces - 1104C 放格子|思维|找规律
- CloudCC:2017年下半年企业移动CRM市场风向窥测
- springboot配置文件加载顺序_「SpringBoot系列」配置文件加载优先级解析
- VMware下安装ubuntu,桥接上网配置静态IP
- struts2自己定义拦截器
- UIActivityIndicatorView活动指示器(菊花)
- excel格宽度转html像素,使列表框的列宽自动适应内容的宽度?(已有思路但需解决转换成像素问题)...
- Influx Sql系列教程三:measurement 表
- 学生用计算机怎么调,电脑怎么设置学生模式
- keep-alive和activated的使用
- 主机序、网络序的理解
- oracle查看锁定任务
- 使用百度翻译api制作自己的字典
- 【Codecs系列】HEVC-SCC(七):调色板PM模式分析
- 2020数据架构师面试题库
热门文章
- try{}里有一个return语句,那么紧跟在这个try后的finally{}里的代码会不会被执行,是在return前还是后
- 树莓派(七):调取IP摄像头
- java使用poi操作ppt(导入,导出,读取,添加,拼接,替换文本,页面排序)
- 制作Centos7模板机
- 基于JAVA的农产品销售管理系统【数据库设计、源码、开题报告】
- 深度学习与TensorFlow实战(十)卷积神经网络—VGG(16)神经网络
- 中央处理器——微程序
- OrCAD Capture CIS 17.2导入Altium Designer原理图
- RMM Level -- 对于REST的层级划分模型
- VRCHAT模型上传常见问题汇总