于AutoLISP程序在数字化成图中对等高线的应用.docVIP

于AutoLISP程序在数字化成图中对等高线的应用.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
于AutoLISP程序在数字化成图中对等高线的应用

于AutoLISP程序在数字化成图中对等高线的应用   摘 要:本文介绍了AutoLISP(以下简称LISP)程序设计语言以及AutoCAD(以下简称CAD)实体联结表的一般概念,阐述了应用AutoLISP程序图解AutoCAD在工程中的应用原理、编制方法和LISP程序的执行步骤,证实这一方法确实是方便、简洁、成果准确且工效高。   关键词:LISP语言 CAD实体联结表 等高线      在进行地形图编辑过程中,图内经常会有很多的等高线,由于作业的水平不同,等高线的质量也是五花八门,这就给编辑等高线带来很大的作业量。在编辑过程中,我们会局部修改它的形状,使其光滑,还会根据等高距进行内插,以及等高线的赋值。这些工序需要花费很大的人工时间。   鉴于以上情况,我们在具体工作中,利用LISP语言方法编辑,省略了很多繁琐的过程,使编绘等高线即方便、又快捷、准确无误、效率极高。   1. LISP程序设计语言简介   Lisp语言最早是在20世纪50年代末由麻省理工学院(MIT)为研究人工智能而开发的。Lisp 语言的强大使它在其它方面诸如编写编辑命令和集成环境等显示其优势。Lisp代表LISt Processing,即表处理,这种编程语言用来处理由括号(即“(”和“)”)构成的列表。   LISP语言具有下列特点:   (1)主要数据结构是表(符号表达式),而不是作为算术运算对象的数。   (2)特性表简单,便于进行表处理。   (3)最主要的控制结构为递归,适于过程描述和问题求解。   (4)LISP程序内外一致,全部数据均以表形式表示。   (5)能够产生更复杂的函数和解释程序。   (6)对大多数事物的约束发生在尽可能晚的时刻。   (7)数据和过程都可以表示成表使得程序可能构成一个过程并执行这个过程。   (8)大多数LISP系统可以交互方式运行,便于开发各类程序,包括交互程序。   LISP数据结构   在基本LISP中,仅有一种数据类型,即表结构。大多数LISP程序设计中,数据是以表或者原子为专门形式。   原子:原子是LISP中最小的符号单位。原子有标识符,诸如I AM A STUDENT,3,XYZ,或者NIL等。它们没有组合部分,各种性质或属性可附加到单个原子上。   一个原子最重要的属性除其名字外是值,这与变量有值同义。一些原子有标准值:原子NIL的值是NIL,T的值是T。任何数字原子,其相应的整数或浮点数是它的值。这里要注意,原子不是类型,任何原子,除常数外,可以给予任意值。   表:一个表递归地定义为括号内零个或n个元素的序列   (元素1 … 元素n)   其中每一个元素是一个原子或是一个表。零或者空表写成(),或者NIL。NIL既是原子又是表。表的固有递归结构非常灵活,便于表示各种信号。   例如:   (4 6 7 9 14 17 20 24 76)一组数   ((-B)+(SQRT((B*B)-(4*A*C))))代数表达式   (I(know((that(gasoline can))explode)))语法分析句子   (YELLOW TABLE)断言   (AND(ON A B)(ON A C)(NOT(TOUCH B C)))合取子句   表的数据结构:LISP表的内部表示是由称为CONS单元的基元构成。每个CONS单元是一个地址,它包括一对指针,每个指针指到一个原子,或者指到另一个CONS单元。   控制结构:LISP是函数式程序语言,LISP的控制结构主要是应用函数指导控制流,其中变元又可以是应用函数。这点与大多数程序设计语言的顺序控制结构不同,在那里分离的句子是一句接一句地执行。在LISP中,语句与表达式没有区别,过程与函数也没有区别。每个函数,不管是否是一个语言原语,或是由用户定义的,都以指向一个表结构的形式返回一个单值。   2.具体程序说明   随着数字地球不断深入人心,要求测绘成果数字化已经普及。由于在地形图的要素中,等高线占有很大的比重,对于它的后期处理,内业编辑这块工作量很大,并且处理起来很复杂,因此根据实际情况编辑此程序。   以下叙述的就是该程序的基本内容:   (defun initialize (/ ss)   (setvar cmdecho 0)   (if (= (getvar plinetype) 2)   (progn   (if (setq ss (ssget x ((0 . polyline))))    (command convertpoly l ss )   )   (if (member 等高线lw.arx (arx))    (arxunload 等高线lw.a

文档评论(0)

bokegood + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档