AutoLisp的扩展函数记录

visual+lisp开发人员手册

这里不全…手打出来打累了…有其他需要请去寻找开发人员手册
visual+lisp开发人员手册
(vl-load-com) 加载AutoLISP反应器支持函数和其他 AutoLISP 扩展

表操作函数

(vl-remove 1 '(1 2 3 4)) 返回值:’(2 3 4) ,函数从列表删除指定数
(vl-position 1 '(2 3 1)) 返回值:2 ,函数获得数在列表中位置
(vl-sort '(1 1 2 2 3 3) 返回值:’(1 2 3) ,自动去重
(vl-load-all “a.lsp”) 该函数来将 AutoLISP 文件加载到所有 AutoCAD 图形文档中.(随后在该任务期间打开的任何文档中),(在多文档中测试新函数很有用,但在一般情况下您应该用 acaddoc.lsp 来加载每个 AutoCAD 文档都需要的文件)
(vl-consp list-variable) 判断表是否为nil
(vl-every predicate-function list [more-lists]…) 检查每个元素合并的预测是否为真
(vl-list object [more-objects]…)* 构造并返回表
(vl-list->string char-codes-list) 将与整数表相关联的字符合并到字符串中
(vl-list-length list-or-cons-object) 计算真表的表长度
(vl-member-if predicate-function list) 判断表成员之一的预测是否为真
(vl-member-if-not predicate-function list) 判断表成员之一的预测是否为nil
(vl-position symbol list) 返回指定的表项目的索引
(vl-remove-if predicate-function list) 返回函数测试失败的表的所有元素
(vl-remove-if-not predicate-function list) 返回通过函数测试的表的所有元素
(vl-some predicate-function list [more-lists]…) 检查元素合并的预测是否为nil
(vl-sort list less?-function) 根据给定的比较函数对表中的元素排序
(vl-sort-i list less?-function) 根据给定的比较函数对表中的元素排序,返回元素索引号
(vl-string->list string) 将字符串转换为字符代码表

字符串处理函数

(vl-string-left-trim character-set string) 从字符串的开始位置删除指定的字符串
(vl-string-right-trim characterset string) 从字符串的末尾删除指定的字符串
(vl-string-trim char-set str) 从字符串的开始和末尾删除指定的字符
(vl-string-mismatch str1 str2 [pos1 pos2 ignore-case-p]) 返回两个字符串的最长公共前缀的长度,指定位置的字符
(vl-string-subst new-str pattern string [start-pos]) 用一个字符串替换另一个字符串中的字串
(vl-string-translate source-set dest-set str) 用指定的字符集替换字符串中的字符

符号处理函数

(vl-sysbol-name symbol) 返回包含符号名的字符串
(vl-symbol-value symbol) 返回绑定到符号的当前值
(vl-symbolp object) 标识指定的对象是否使符号

文件处理函数

(vl-directory-files [directory pattern directories]) 列出给定目录中的所有文件
(vl-file-copy “source-filename” “destination-filename” [append?]) 将一个文件的内容复制或添加到另一个文件中
(vl-file-delete “filename”) 删除文件
(vl-file-directory-p “filename”) 判断一个文件名中是否包含目录
(vl-file-rename “old-filename” “newfilename”) 重命名文件
(vl-file-size “filename”) 判断文件的大小,以字节为单位
(vl-file-systime “filename”) 返回指定文件的最后修改时间
(vl-filename-base “filename”) 返回文件名,去掉文件夹路径和扩展名
(vl-filename-directory “filename”) 返回文件的目录路径,去掉文件名和扩展名
(vl-filename-extension “filename”) 返回文件的扩展名,去掉名称的其余部分

处理ActiveX方法返回的错误

(vl-catch-all-apply ‘function list) 函数的值可捕获错误,并使程序继续执行(将参数列表传递给指定的函数,并捕获异常)
(vl-catch-all-error-message error-obj) 从错误对象中返回信息
(vl-catch-all-error-p arg) 判断 vl-catch-all-apply 返回的参数是否是错误对象

查询和命令函数

(vl-cmdf [arguments] …) 在计算 arguments 后执行一个AutoCAD命令

对象处理函数

(vlax-dump-object obj) 列出对象的方法和属性
(vlax-erased-p obj) 判断对象是否被删除

符号表和词典处理函数

(vlax-ldata-delete dict key) 从图形词典中删除LISP数据
(vlax-ldata-get dict key [defaultdata]) 从图形词典中获取LISP数据
(vlax-ldata-list dict) 在图形词典中列出LISP数据
(vlax-ldata-put dict key data) 在图形词典中存储LISP数据
(vlax-ldata-test data) 判断是否可以跨任务边界保存数据

反应器函数

(vl-load-com) 加载AutoLISP反应器支持函数和其他 AutoLISP 扩展
(vlr-acdb-reactor data callbacks) 构造一个"数据库"(全局)反应器对象
(vlr-add obj) 启用被禁用的反应器对象
(vlr-added-p obj) 测试判断反应器对象是否被启用
(vlr-beep-reaction [args]) 产生蜂鸣声
(vlr-current-reaction-name) 如果从反应器回调中调用,则返回当前事件的名称(符号)
(vlr-dataobj) 返回与反应器相关联的应用特定数据
(vlr-data-set obj data) 覆盖与反应器相关联的应用特定数据
(vlr-deepclone-reactor obj data) 构造一个编辑器反应器对象,用于通知深度克隆事件
(vlr-docmanager-reactor obj data) 构造一个反应器对象,用于通知MDI相关的事件
(vlr-dwg-reactor obj data) 构造一个编辑器反应器对象,用于通知图形事件(例如,打开或关闭图形文件)

Windows 注册表函数

(vl-registry-delete reg-key [val-name]) 从Windows 注册表中删除指定的主键/键值
(vl-registry-descendents reg-key [val-names]) 为指定的注册表主键返回一个子键或值名称的列表
(vl-registry-read reg-key [val-name]) 为指定的主键/键值对返回存储在Windows注册表中的数据
(vl-registry-write reg-key [val-name val-data]) 在Windows注册标中创建主键
(vlax-product-key) 返回AutoCAD注册路径

数据转换函数

(vlax-ename->vla-object entname) 将图元转换为VLA对象
(vlax-vla-object->ename obj) 将VLA对象转换为AutoLISP图元

ActiveX对象处理函数

(vlax-dump-object obj) 列出对象的方法和属性

曲线测量函数

(vlax-curve-getArea curve-obj) 返回曲线中的面积
(vlax-curve-getDistAtParam curve-obj param) 返回从曲线的起始端到指定点的曲线段长度
(vlax-curve-getDistAtPoint curve-obj point) 返回从曲线的起始段到指定点的曲线段长度
(vlax-curve-getEndParam curve-obj) 返回曲线端点的参数
(vlax-curve-getEndPoint curve-obj) 返回曲线的端点(在WCS坐标系中)
(vlax-curve-getParamAtDist curve-obj param) 返回沿曲线的起始端到指定参数位置的距离
(vlax-curve-getParamAtPoint curveobj point) 返回某一点的曲线参数
(vlax-curve-getPointAtDist curve-obj dist) 返回沿曲线经过由用户指定距离的点(在WCS坐标系中)
(vlax-curve-getPointAtParam curveobj param) 判断曲线上对应于param参数的点,并返回该点
(vlax-curve-getStartParam curve-obj) 返回曲线上的起始参数
(vlax-curve-getStartPoint curve-obj) 返回曲线的起始点(在WCS坐标系中)
(vlax-curve-isClosed curve-obj) 判断指定的曲线是否闭合(例如,起始点和结束点相同)
(vlax-curve-isPeriodic curve-obj) 判断指定的曲线是否在各个方向上无限延伸,并且有一个周期值dT,即对于任意参数,曲线(u+dT)上的点都等于曲线(u)上的点
(vlax-curve-isPlanar curve-obj) 判断是否有包含某条曲线的平面
(vlax-curve-getClosestPointTo curve-obj givenPnt [extend]) 返回曲线上距指定点最近的点(在WCS坐标系中)
(vlax-curvegetClosestPointToProjection curveobj givenPnt normal [extend]) 返回曲线上距指定点最近的点(在WCS坐标系中)
(vlax-curve-getFirstDeriv curve-obj param) 返回在指定的位置上曲线的第一个衍生(在WCS坐标系中)
(vlax-curve-getSecondDeriv curveobj param) 返回在指定的位置上曲线的第二个衍生(在WCS坐标系中)

  • 4
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值