AutoCAD的二次开发主要涉及以下内容:

(1)编写各种用户自定义函数并形成若干LISP、ARX、VLX或ADS文件,以及一些DCL文件。

(2)建立符合自己要求的菜单文件,一般可在AutoCAD原菜单文件内添加自己的内容,然后经交互方式加入到系统

中去。

(3)在系统的ACAD.LSP或类似文件中加入某些内容以便进行各种初始化操作,如在启动时立即装入一些文件等。

(4)通过系统对话框设置某些路径。这些操作在程序开发成功后向其它AutoCAD系统上安装应用,特别是需要大批

安装时,需要进行很多文件检索、内容增删、子目录创建、文件拷贝、系统设置等繁琐工作,如能令上述工作全部

自动进行,使整个二次开发程序在无人干预的情况下嵌入系统,将大大提高工作效率。

AutoCAD荣登全球绘图软件的龙头宝座,主要是因为它具有开放的体系结构。它允许用户和开发者采用高级编

程语言对其进行扩充和修改,即二次开发,能最大限度地满足用户的特殊要求。AutoCAD第一版于1982年11月由AutoDESK公司推出,其二次开发语言及工具也在不断地涌现

1 AutoLISP

AutoLISP的全名是LIST Processing Language,她出现于1985年推出的AutoCAD R2.18中,是一种嵌入在AutoCAD

内部的编程语言,是LISP原版的一个子集,她一直是低版本AutoCAD的首选编程语言。它是一种表处理语言,是被

解释执行的,任何一个语句键入后就能马上执行,它对于交互式的程序开发非常方便。其缺点是继承了LISP语言的

编程规则而导致繁多的括号。

3 ADS

ADS的全名是AutoCAD Development System,它是AutoCAD的C语言开发系统,ADS本质上是一组可以用C语言

编写AutoCAD应用程序的头文件和目标库,它直接利用用户熟悉的各种流行的C语言编译器,将应用程序编译成可

执行的文件在AutoCAD环境下运行,这种可以在AutoCAD环境中直接运行的可执行文件叫做ADS应用程序。ADS

由于其速度快,又采用结构化的编程体系,因而很适合于高强度的数据处理,如二次开发的机械设计CAD、工程

分析CAD、建筑结构CAD、土木工程CAD、化学工程CAD、电气工程CAD等。

4 ObjectARX

ObjectARX是一种崭新的开发AutoCAD应用程序的工具,她以C++为编程语言,采用先进的面向对象的编程原理,

提供可与AutoCAD直接交互的开发环境,能使用户方便快捷地开发出高效简洁的Auto CAD应用程序。ObjectARX

并没有包含在AutoCAD中,可在AutoDESK公司网站中去下载,其最新版本是ObjectARX for AutoCAD 2000,

它能够对AutoCAD的所有事务进行完整的、先进的、面向对象的设计与开发,并且开发的应用程序速度更快、

集成度更高、稳定性更强。ObjectARX从本质上讲,是一种特定的C++编程环境,她包括一组动态链接库(DLL)

,这些库与AutoCAD在同一地址空间运行并能直接利用AutoCAD核心数据结构和代码,库中包含一组通用工具,

使得二次开发者可以充分利用AutoCAD的开放结构,直接访问AutoCAD数据库结构、图形系统以及CAD几何造

型核心,以便能在运行期间实时扩展AutoCAD的功能,创建能全面享受AutoCAD固有命令的新命令。ObjectARX

的核心是两组关键的API,即AcDb(Auto CAD数据库)和AcEd(Auto CAD编译器),另外还有其它的一些重要库组

件,如AcRX(Auto CAD实时扩展)、AcGi(Auto CAD图形接口)、AcGe(Auto CAD几何库)、ADSRX(Auto CAD开

发系统实时扩展)。ObjectARX 还可以按需要加载应用程序;使用ObjectARX进行应用开发还可以在同一水平上

与Windows系统集成,并与其它Windows应用程序实现交互操作。

5 VisualLISP

VisualLISP已经被完整地集成到AutoCAD 2000中,她为开发者提供了崭新的、增强的集成开发环境,一改过去

在AutoCAD中内嵌AtuoLISP运行引擎的机制,这样开发者可以直接使用AutoCAD中的对象和反应器,进行更底

层的开发。用它开发AutoLISP程序的时间被大大地缩短,原始代码能被保密,以防盗版和被更改;能帮助大家

使用ActiveX对象及其事件;使用了流行的有色代码编辑器和完善的调试工具,使大家很容易创建和分析LISP

程序的运行情况。在VisualLISP中新增了一些函数:如基于AutoLISP的ActiveX/COM自动化操作接口;用于执

行基于Auto CAD内部事件的LISP程序的对象反应器;新增了能够对操作系统文件进行操作的函数。

6 VBA

VBA 即Mcrosoft office中的Visual Basic for Applications。VBA为开发者提供了一种新的选择,也为用户访问

AutoCAD 2000中丰富的技术框架打开一条新的通道。VBA和AutoCAD中强大的ActiveX自动化对象模型的结合

,代表了一种新型的定制AutoCAD的模式构架。通过VBA,我们可以操作AutoCAD,控制ActiveX和其它一些

应用程序,使之相互之间发生互易活动。

转载:作者:thunder186

http://www.cncad.net/forum.php?mod=viewthread&tid=177136

AutoCAD, 简介, 开发

[讨论] AUTOCAD二次开发简介相关推荐

  1. lisp 梯形展开图_斜截圆柱件钣金展开图的AutoCAD二次开发

    内容介绍 原文档由会员 刘瑞 发布 斜截圆柱件钣金展开图的AutoCAD二次开发 3.8万字符 70页 包括开题报告,论文,设计分析报告,程序代码,lsp及sld文件 摘 要 在国民经济各个部门的建设 ...

  2. autocad型源代码_VB与AUTOCAD二次开发源代码包

    在发个VB与AUTOCAD二次开发源代码包,包括以下内容: 在学校的话,叫计算机辅助设计 第一章 VB开发AotoCAD基础知识 第一节 欢迎进入VB开发AUTOCAD的精彩世界 第二节 VB 开发 ...

  3. 用C语言编程函数求圆台体积,第六篇 AutoCAD二次开发技术.pdf

    第六章 ObjectARX 开发技术 1. AutoCAD二次开发概述 7. MFC对话框 2. ObjectARX简介 8. 搜索图形数据库及获取实体 3. 常用实体类和几何类 数据 4. 创建实体 ...

  4. AutoCAD 二次开发语言的选择

    因为某些功能的原因,一部份VBA的用户最终选择了NET,又因为某些功能的原因,一部份NET的用户最终选择了C++.最终这部份业余用户走上了专业的二次开发之路,而脱离了原来的专业. 来自 一个CAD群叫 ...

  5. AutoCAD二次开发三种添加插件按钮的方法

    在上一篇关于AutoCAD的文章中,我将很多关于CAD的博客相关资源进行了说明,这一篇文章我将介绍如何在AutoCAD中的ribbon中添加相应的按钮.就是下面这种按钮: PS:在开发中我们最好使用中 ...

  6. AutoCAD二次开发三种添加插件按钮的方法之二

    上一篇相关文章主要借助了cuix配置文件来制作插件按钮,但是对于纯码农来说还是喜欢以代码来说话,今天这篇文章就来讲讲纯代码添加按钮. 开发IDE:VS2010 环境:.Net Framework4.0 ...

  7. 陈伯雄lisp_基于AutoLisp的AutoCAD二次开发自动生成系统图

    龙源期刊网 http://www.qikan.com.cn 基于 AutoLisp 的 AutoCAD 二次开发自动 生成系统图 作者:郎建山 金江 来源:<科技视界> 2013 年第 2 ...

  8. CAD自控lisp_基于AutoLisp的AutoCAD二次开发自动生成系统图

    基于 AutoLisp 的 AutoCAD 二次开发自动生成系统图 [摘 要]本文主要阐述了应用 autolisp 语言二次开发 autocad 自动生成系统图的实现方案. [关键词] autocad ...

  9. AutoCAD二次开发基础(三):船体型线绘制

    AutoCAD二次开发系列 文章目录 前言 一.绘制船体横剖线 二.绘制船体纵剖线 三.绘制船体肋骨型线图 前言 用程序生成船体型线图,无疑会提高开发效率. 一.绘制船体横剖线 任务:编制程序,根据水 ...

  10. cass二次开发vba和lisp_基于VBA的AutoCAD二次开发及应用实例

    1引言本文引用地址:http://www.eepw.com.cn/article/190993.htm AutOCAD2005是AutOdesk公司的系列产品,该软件从其使用和设计思路上都秉承了工程制 ...

最新文章

  1. nullnullGet previous business day
  2. php 获取上周日期_php 获取今日、昨日、上周、本月的起始时间戳和结束时间
  3. Asp.net自定义控件开发任我行(附1)-属性一览众山小
  4. Yii2.0 获取当前url和域名
  5. 【android开发】手机应用管理器的实现之实现软件加锁(四)
  6. WPS删除所有的页码
  7. Contest3121 - 2021级新生个人训练赛第26场_问题 F: 乐乐的数字
  8. input 标签中的 Hiden隐藏域
  9. 定制自己的xDoclet标签
  10. Python 利用pandas 获取Excel重复记录
  11. docker-compose Seata+Nacos部署
  12. JZOJ.4377[GDOI2016模拟3.10]习用之语 解题报告
  13. 用php写圣诞祝福页面,2018最美的圣诞节祝福网页【圣诞节祝福语_圣诞节祝福短信】...
  14. ubuntuq桌面与服务器,Ubuntu安装Qbittorrent并开启WEB服务[桌面版/服务器版]
  15. Quartus2之引脚锁定和下载到机箱的实例
  16. 虚拟服务器使用E1000E类型的网卡,可能会 导致故障转移功能通信异常,不稳定...
  17. PCM格式分析(头信息+负载)
  18. 阿里面试题java,学习路线+知识点梳理
  19. powershell_功能扩展模块PSReadline(psReadlinekeyhandler)相关功能函数以及快捷键绑定情况(by official document)
  20. 拜尔模板 bayer pattern

热门文章

  1. 计算机鼠标知识,计算机基础知识:鼠标的使用
  2. android 命令pm 全称 packagemanager,Android.content.pm.PackageManager--(转载)
  3. [运算放大器系列]二、电压转4 - 20MA电流电路分析
  4. FAT文件系统详解(二)
  5. ems 的条形码生成PHP JS,thinkphp5 Barcodegen 生成条形码
  6. 导线测量步骤c语言程序,基于excel表的附合导线计算程序.doc
  7. pl/sql编程语言
  8. Bridge桥的简介-从零开始学RouterOS系列14
  9. Linux-3.10-x86_64 内核配置选项简介
  10. 区块链赋能供应链金融