CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

AutoCAD 2023 开发者帮助

vl-cmdf (AutoLISP)

2024-5-18 18:53| 发布者: admin| 查看: 14| 评论: 0|原作者: admin|来自: AutoCAD

vl-cmdf (AutoLISP)

执行 AutoCAD 命令

支持的平台:Windows 和 Mac OS

签名

(vl-cmdf [arguments ...])
参数

类型:Integer、Real、String、List 或 Ename(实体名称)

AutoCAD 命令及其选项。

函数的参数可以是字符串、实数、整数或点,如所执行命令的提示序列所预期的那样。空字符串 () 等效于在键盘上按 Enter。不带参数的调用等同于按 Esc 键并取消大多数 AutoCAD 命令。vl-cmdf""vl-cmdf

返回值

类型:T

总是返回 。T

言论

该函数与函数类似,但不同之处在于它计算传递给它的参数的方式。该函数在执行 AutoCAD 命令之前评估所有提供的参数,如果在参数评估过程中检测到错误,则不会执行 AutoCAD 命令。相反,该函数将每个参数依次传递给 AutoCAD,因此在检测到错误之前可以部分执行该命令。vl-cmdfcommandcommandvl-cmdfcommand

如果命令调用包括对另一个函数的调用,则在调用执行命令之前执行该调用,而在调用开始执行命令之后执行该调用。vl-cmdfcommand

某些 AutoCAD 命令在通过 调用时可能正常工作,而在通过 调用时失败。该函数主要克服了无法在命令中使用函数的限制。vl-cmdfcommandvl-cmdfgetXXX

注意:如果在 Windows 上的 AutoCAD 中从 Visual LISP 发出问题,则焦点不会更改为 AutoCAD 窗口。如果该命令需要用户输入,您将在“控制台”窗口中看到返回值 (),但 AutoCAD 将等待输入。您必须手动激活 AutoCAD 窗口并响应提示。在执行此操作之前,任何后续命令都将失败。vl-cmdfT

例子

如果在AutoCAD命令提示符下输入以下调用,则更容易看到和之间的差异:commandvl-cmdf

命令:(命令“._line”(getpoint “point?”)'(0 0) “”)

行 指定第一点:点?

指定下一个点或[撤消]:

命令:nil

使用 ,首先执行 LINE 命令;然后调用该函数。commandgetpoint

命令:(vl-cmdf “._line” (getpoint “point?”)'(0 0) “”)

point?line 指定第一个点:

指定下一个点或[撤消]:

命令:T

使用 ,函数首先被调用(注意 “point?” 提示 );然后执行LINE命令。vl-cmdfgetpointgetpoint

以下示例显示了相同的命令,但将无效的点列表参数传递给 LINE 命令。请注意结果有何不同:

命令:(命令“._line”(getpoint “point?”)'(0) “”)

行 指定第一点:点?

指定下一个点或[撤消]:

命令:ERASE nil

选择对象:指定对角:*取消*

0 找到

该函数将每个参数依次传递给 AutoCAD,而不计算参数,因此不会检测到无效的点列表。command

命令:(vl-cmdf “._line” (getpoint “point?”)'(0) “”)

点?应用程序错误:实体/点列表无效。

由于在将命令传递给AutoCAD之前会计算每个参数,因此会检测到无效的点列表,并且不会执行该命令。vl-cmdf


路过

雷人

握手

鲜花

鸡蛋

最新评论

QQ|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1 )

GMT+8, 2024-6-27 15:55

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部