第三章

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

0

y=rsi n

0

转换为直角坐标表达

.

因此从本质上说

,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")

(setqichoice(getint"

选择绘制曲线类型:

"))

;选择曲线类型

(if(=ichoice1)(curve1))

;调用曲线绘制类型

1

(if(=ichoice2)(curve2))

;调用曲线绘制类型

2

lisp语言绘制路灯_LISP语言在AD道路设计方案中各种应用相关推荐

  1. lisp绘制法兰_lisp语言画键槽_用LISP语言自定义AutoCAD命令

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 用LISP语言自定义AutoCAD命令 AutoLISP语言作为AutoCAD的二次开发工具,虽然在功能.运行速度和保密性等方面比起ARX等工具要逊色一些 ...

  2. lisp语言画键槽_lisp语言画键槽_用LISP语言自定义AutoCAD命令

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 用LISP语言自定义AutoCAD命令 AutoLISP语言作为AutoCAD的二次开发工具,虽然在功能.运行速度和保密性等方面比起ARX等工具要逊色一些 ...

  3. lisp语言绘制路灯_基于AutoLISP的路灯桩号自动标注程序设计

    基于 AutoLISP 的路灯桩号自动标注程序设计 于涛 ; 张泳 ; 肖亮 [期刊名称] <自动化博览> [年 ( 卷 ), 期] 2015(000)011 [摘要] 推导出路灯桩号自动 ...

  4. lisp标注界址点号_LISP语言在宗地界址点成果表的应用

    LISP 语言在宗地界址点成果表的应用 邹富生 [摘 要] 摘要:在农村土地确权发证的项目中,要求每一个社制作社宗地界址 成果表,在工作中利用 AUTOCAD 的内部编程语言 AUTOLISP 开发实 ...

  5. lisp程序绘制大树_LISP – 树

    可以从cons单元构建树的数据结构,如清单列表. 为了实现树形结构,则必须设计功能,将遍历cons 单元,在特定的顺序,例如,前序,顺序和后序的二进制树. 树列表的列表 让我们考虑由cons单元的树状 ...

  6. LISP 冻结excel窗格_LISP实现EXCEL导入AUTOCAD表格中单元格值属性的修改-第一阶段

    写在最前面: 我希望我的这些记录会在将来给同样琢磨这些内容苦于无同道者的朋友们一些帮助. 大方向上总有很多人同行,细分的需求或方向缺越来越少.当网上搜索到的资料无法回答的我问题的时候,可能是我没有接触 ...

  7. R语言——绘制直方图

    R语言--绘制直方图 R语言安装 Rstidio安装 开始绘制直方图 安装ggplot2包 准备数据 读取绘图数据 调用包 开始绘图 完毕 最近做项目,需要对实验数据绘制直方图,excel绘制之后发现 ...

  8. lisp 非对称缓和曲线_利用AutoLISP语言绘制带缓和曲线的铁路曲线平面图

    利用 AutoLISP 语言绘制带缓和曲线的铁路曲线平面图 [ 摘要 ] 通过 AutoLISP 编程方法的剖析 , 探讨了基于 Visual LISP(VLISP) 编程软件环境下 , 利用 Aut ...

  9. lisp语言是最好的语言_Lisp可能不是数据科学的最佳语言,但是我们仍然可以从中学到什么呢?...

    lisp语言是最好的语言 This article is in response to Emmet Boudreau's article 'Should We be Using Lisp for Da ...

最新文章

  1. BZOJ1202: [HNOI2005]狡猾的商人
  2. 淘宝精品案例JS、jQuery
  3. mysql cluster 视频_mysql cluster 部署实战
  4. 官宣!张小龙史上最长演讲 4小时3万字完整版回应微信的一切
  5. 不容按钮、下拉框 执行同一个函数或者同一种函数的用法
  6. 【转自小峰博客】协调器的启动【自动模式】
  7. 数据安全:通过Oracle的基本函数实现简单加密脱敏函数
  8. 去年每天入账25个亿,没错,我就是佩奇
  9. 【心电信号】基于matlab GUI自适应滤波+平滑滤波+小波滤波心电信号处理【含Matlab源码 1809期】
  10. 04.SQLServer性能优化之---读写分离数据同步
  11. linux qgis编译安装,QGIS安装
  12. 华为手机玩王者荣耀的时候微信消息通知不弹窗提示,打王者的时候微信不弹窗提示消息,(P30)【解决办法】
  13. 根据卡号返回银行信息
  14. 京东白条数据架构进化之路:要在数据的不确定性中探索架构的稳定性
  15. Dapr for dotnet | 密钥管理 - Secret Management
  16. 不用爬虫,也能写一个聚合搜索引擎
  17. 南京大学计算机考研难度分析,2020考研难度高的院校分析之【南京大学】
  18. 解决Error java 错误 不支持发行版本
  19. ElementUI 文本内容不能自动换行,内容超出显示(遇到中文、空格才会换行)
  20. H5 IOS浏览器长按没有保存图片

热门文章

  1. html 使用iframe引入视频但无法全屏播放,问题解决
  2. 写二语习得学年论文感想
  3. 和传统服务器对比,云计算主要有哪些优势?
  4. 房地产行业,怎样获取更多的客户,线上获客渠道有哪些?
  5. 中国天气网api接口
  6. python已知两条直角边求斜边_Python实现已知三角形两直角边,求斜边--思路,伪代码,优化...
  7. WiFi 6是不是真的很“6”?一文解决你对WiFi 6的所有疑惑
  8. GPT模型介绍并且使用pytorch实现一个小型GPT中文闲聊系统
  9. CAD图纸转换TIFF格式时修改背景颜色
  10. 关于GDPR,你需要了解的的5件事