autocad二次开发autocad二次开发技术基础

autocad二次开发  时间:2021-08-09  阅读:()

请问CAD autolisp二次开发怎么弄啊?帮忙把具体步骤说一下,就是自己创建一个命令的步骤。谢了

;;;灯管T4 (defun C:T4206() ;;;用户输入T4206执行命令(不带任何参数,如果没有此行,加载后立即运行以后的程式) (graphscr) (ar "cmdecho" 0) ;;;命令行显示关闭 (setq P1(getpoint " 请指定灯管(T4 206.5mm 6W)放置位置:")) ;;;设定一个插入点P1,返回点 mand "-INSERT" "D:/YZ_ZCAD/TK/DGT/T4206.dwg" "S" "1" P1 "0") ;;;执行CAD标准命令,前面加“-”(此问题参考CAD命令),为命令行执行命令,不使用对话框 ;;;在程式执行时,不能便用对话框,在命令前加“-”或用变量FILEDIA控制;少数用其它方式控制 (ar "cmdecho" 1) ;;;命令行显示打开 (princ) ;;;结束语 ) ;;;将以上文字放到LISP里面以任何英文名命名保存 ;;;在保e799bee5baa6e59b9ee7ad9431333238656637存以后,在CAD中用AP加载文件, ;;;执行T4206命令执行插入命令,(确;认文件的存在) 我个人认为VBA开发要比LISP更为方便,LISP会一点就好了,不必学太深,LISP对话框开发(DCL)比VBA复杂得多,但要用部分LISP函数用于命令执行VBA的函数.在AutoCAD帮助里面有开发人员帮助,里面很多东西都很详细,那些编书人好多东西也是直接用里面的东西,你不妨去看一下。

autocad二次开发的怎样对AutoCAD进行二次开发

从AutoCAD 2.18开始推出AutoLISP开始到现在,我们所能使用的开发工具主要有:AutoLISP、VisualLISP、VBA、COM外部接口、ObjectARX、ObjectARX.NET等开发方式供用户选择。

下面开始对上述开发方式进行简要介绍: AutoLISP是进行对AutoCAD二次开发最早的API,它是人工智能语言LISP的一个分支.主要用来自动完成重复性任务,进行客户化开发和编制AutoCAD菜单以及通过简单机制为AutoCAD扩充命令,能够有机的和AutoCAD结合在一起,它语法简单容易上手,到目前仍有很多的活跃开发用户。

但是由于它是解释型API而不是面向对象的编程语言,使它的效率低下,由于执行的是源代码文件所以导致保密性能不高很难用它开发大型的应用程序。

在AutoCAD R14.01中,Autodesk公司首次提供了一种新的LISP编程工具:Visual LISP,它是一种面向对象的开发环境,是AutoLISP的扩展和延伸。

在AutoCAD2000中,Visual LISP被集成到了AutoCAD环境之中。

Visual LISP是一种半编译的API。

由于可以被编译所以大大提高了运行效率和安全性。

同时它又与AutoLISP完全兼容,又提供了AutoLISP的所有功能,同时它又能够访问AutoCAD的多文档环境,以及对COM/ActiveX技术的支持和反应器等。

VisualLISP IDE同时提供了完整的编辑环境使得用户可以对代码进行调试跟踪、源码语法检查、括号匹配、函数提示等工具,方便创建和调试LISP程序。

由于VLISP集成于AutoCAD内部,而且随AutoCAD升级而升级所以兼容性比较好,这也是LISP深受广大编程爱好者使用的原因。

但在进行大数据的计算处理方面,Visual LISP不能很好的胜任这项任务,这使得开发大型数据运算的程序仍有一定困难。

ADS(AutoCAD Development System)是Autodesk公司最早在AutoCAD R11中提供的C语言编程环境。

ADS除可使用标准C的函数外,又增加了一组专用于对AutoCAD进行操作的函数。

由于ADS程序具有C语言的一切优点,因而它曾是开发AutoCAD R11、AutoCAD R12应用程序的主要工具。

用C写就的ADS程序,可在所有支持AutoCAD平台上进行源代码移植。

只需使用普通的C语言编译器就可以编译生成ADS模块,与ADS库和标准C库链接后生成可执行文件,装入AutoCAD后即可运行。

但是ADS和AutoLISP一样,内在结构不是面向对象的,用AutoLISP解释器加载和调用,利用IPC与AutoCAD通讯。

ARX(AutoCAD Runtime eXtension)是在ADS基础上发展起来的一种面向对象的C语言编程环境。

由ADS到ARX的变迁就像C到C++的转变。

ARX与老式的ADS及AutoLISP的最大差异在于ARX应用程序是动态链接库,共享AutoCAD地址空间,可以对AutoCAD进行直接函数调用,避免了IPC的系统开销和由此引起的性 能下降。

因此那些频繁与AutoCAD通讯的应用程序在ARX环境下的运行效率明显优于老式ADS或AutoLISP环境。

ARX最早是在AutoCAD R13中提供的,但在AutoCAD R14中,ARX就被ObjectARX所代替。

同时原来的ADS库函数全部被包含在ObjectARX中,将ADS函数合为单一的库就形成了ADSRX。

ADSRX库已纳入到AutoCAD的总体结构中,因此它与其他ObjectARX库一样,能共享AutoCAD地址空间。

到了新世纪,传统意义上的ADS开发环境的概念已经不复存在,且ADSRX已成为了ObjectARX的一个子集,因此,ObjectARX是包含了ADS、ARX和ADSRX的一种综合的C/C++开发环境。

ObjectARX的最大特点是引入了面向对象的编程机制,用户可以根据规则定制实体也是ObjectARX的一大亮点。

自AutoCAD R14起,提供了ActiveX Automation形式的API。

ActiveX技术可将各种二进制应用程序组件集成一体。

它可采用多种编程方式例如:VBA构造一种或多种与应用程序独立的宏编程。

提供Automation服务的软件组件通过标准接口能够对外开放它的特定功能。

正是由于AutoCAD拥有ActiveX接口,因此,用户可以容易的用各种AciveX编程语言来定制开发AutoCAD。

AutoCAD包含的VBA能在进程内访问AutoCAD的对象模型。

亦可以通过独立 的VB进行编程,但是VB与ActiveX的接口需要通过IPC驱动AutoCAD,所以作为ActiveX控件的VBA比VB具有明显的性能优势。

特别要强调的是,ActiveX与AutoCAD交互操作很慢,若需要在外部程序中一边运算一边交互操作的重复迭代,将耗费大量时间,如同死机 值得注意的是,从AutoCAD 2010版本开始,VBA不在随AutoCAD一起安装。

如果想要在机器中运行VBA程序必须登录下面的网址进行下载方可运行。

在AutoCAD 2005 版本中Autodesk公司推出了用.NET开发AutoCAD的编程接口。

它的实质是通过Managed C++/CLR技术对VC++的ObjectARX进行封装。

到目前的AutoCAD 2015十年来Autodesk公司已经完成对大部分ObjectARX编程接口的封装。

这种编程方式难度适中,能够访问大部分的编程接口(除了自定义实体);但是,由于AutoCAD的.NET接口是在不断的完善过程中导致了在低版本上不能够使用新增的功能。

autocad二次开发技术基础

我曾经做过AutoCAD二次开发,用vc++6和ObjectARX技术,在某个单位使用,还可以。

但是搞AutoCAD二次开发,竞争很激烈!需要的知识面比较多,首先您必须是一个在那个领域的专业设计者,精通专业设计及设计规范,不然的话,很难开发出实用的CAD程序。

我是在设计院工作的,比较了解这一点。

天正系列CAD软件做的比较成功、实用,在设计院中有好口碑,其中重要的一点就是她由最基层的设计人员来完成。

如市政管线设计软件是由沈阳市政设计研究院的总工完成的。

速云:广州移动/深圳移动/广东联通/香港HKT等VDS,9折优惠,最低月付9元;深圳独立服务器1050元/首月起

速云怎么样?速云,国人商家,提供广州移动、深圳移动、广州茂名联通、香港hkt等VDS和独立服务器。现在暑期限时特惠,力度大。广州移动/深圳移动/广东联通/香港HKT等9折优惠,最低月付9元;暑期特惠,带宽、流量翻倍,深港mplc免费试用!点击进入:速云官方网站地址速云优惠码:全场9折优惠码:summer速云优惠活动:活动期间,所有地区所有配置可享受9折优惠,深圳/广州地区流量计费VDS可选择流量翻...

gcorelabs远东khabarovsk伯力Cloud云服务器测评,告诉你gcorelabs云服务器怎么样

说明一下:gcorelabs的俄罗斯远东机房“伯力”既有“Virtual servers”也有“CLOUD SERVICES”,前者是VPS,后者是云服务器,不是一回事;由于平日大家习惯把VPS和云服务器当做一回事儿,所以这里要特别说明一下。本次测评的是gcorelabs的cloud,也就是云服务器。 官方网站:https://gcorelabs.com 支持:数字加密货币、信用卡、PayPal...

宝塔面板批量设置站点404页面

今天遇到一个网友,他在一个服务器中搭建有十几个网站,但是他之前都是采集站点数据很大,但是现在他删除数据之后希望设置可能有索引的文章给予404跳转页面。虽然他程序有默认的404页面,但是达不到他引流的目的,他希望设置统一的404页面。实际上设置还是很简单的,我们找到他是Nginx还是Apache,直接在引擎配置文件中设置即可。这里有看到他采用的是宝塔面板,直接在他的Nginx中设置。这里我们找到当前...

autocad二次开发为你推荐
配色表颜色配比---多种颜色混合成什么色getsockopt如何判断socket已经断开微信红包图片怎么发微信要红包图片we7we7保存文件是哪个 我要卸载它 但是自己创建的球员想留着aftereffectafter effect (AE)有哪几层,层有哪些属性?作用是什么?实数的定义实数的概念是什么,实数包括0吗?蓝牙开发android 蓝牙开发 ble 难吗蓝牙开发蓝牙技术到底是指什么?数据管理制度数据必须符合以下基本原则有哪些vrrp配置INTERNET协议属性里面的备用配置有什么用?
免费域名 网站虚拟主机空间 上海服务器租用 diahosting pccw 42u标准机柜尺寸 名片模板psd web服务器架设软件 个人域名 me空间社区 hinet 双11秒杀 国外代理服务器软件 世界测速 中国电信测速网 33456 万网空间购买 shopex主机 新睿云 网通服务器 更多