Kumidan 发表于 2022-7-6 10:44:56

AutoCAD和AutoLISP命令

您好,有没有网站可以让我找到所有Autocad命令和AutoLISP函数及其接受的参数以及每个参数的解释?
 
例如,如果我搜索文本,我想在AutoLISP例程中找到命令和所有可以传递给它的参数,当我编写类似(命令“\u text”…)的东西时

The Buzzard 发表于 2022-7-6 11:14:57

在Acad帮助部分和开发者帮助部分。

Lee Mac 发表于 2022-7-6 11:25:44

我意识到你可能是一个初学者,但无论如何我都会发表我的意见:我个人会尽量避免使用命令语句,并希望通过使用entmake或entmakex等函数(或通过使用应用于VLA块容器对象的等效Visual Lisp方法)来生成AutoCAD实体。
 
命令调用在不同版本之间并不完全兼容,而且与上述替代方案相比速度较慢。
 
如果您希望继续使用命令调用,我将提供一些进一步的建议:1)确保在命令前面加上“_”因此:
 
(command "_.line" <point> <point> ")
 
下划线提供了语言兼容性,dot将确保调用本机命令,而不是使用相同语法的用户重新定义的命令。
 
此外,出于上述原因,请确保在所有菜单选项前加下划线。
 
在回答您最初的问题时,我不知道存在这样的引用(但我承认我避免使用命令函数,除非替代方法涉及数百行代码)。然而,当出现这种情况时,我倾向于手动调用命令,执行所需的任务,同时记录我的操作。
 
我希望我的回答是充分的,如果你有进一步的问题,请不要犹豫。
 
当做
 

Kumidan 发表于 2022-7-6 11:44:08

谢谢
我找到了AutoLISP函数。
相反,对于AutoCAD命令,我在“帮助”部分中找到了完整的列表,但它并没有说明所有命令需要哪些参数,对于某些命令,只是解释了它们的作用。
 
再次谈到我之前写的示例,我在教程中找到了这一行
(命令“_text”“90,40”“2.5”“”“Some text”“”“”)
但是没有解释,我可以想象这些参数是用来做什么的,我也想知道这些参数中哪些是必需的,哪些是可选的。。。
 
回答李,是的,我是autolisp新手

MSasu 发表于 2022-7-6 11:45:20

语法和参数只是命令的名称,分别是他的选项-在提示符下运行命令,并在命令函数调用中再现该对话框。
要解释您的示例:
 
(command "_text"      ;name of the command
      "90,40"      ;insertion point coordinates
      "2.5"          ;height of characters
      ""             ;angle of text entity - accept default
      "Some text"    ;the string that will be added
      ""             ;NOT REQUIRED
      "")            ;NOT REQUIRED
 
 
然而,上述等同于:
 
(command "_text"      ;name of the command
      '(90 40)       ;insertion point coordinates
      2.5            ;height of characters
      0.0            ;angle of text entity - accept default
      "Some text")   ;the string that will be added
 
 
如果需要对文本实体进行一些格式化:
 
(command "_text"      ;name of the command
      "_justify"   ;indicate that a formatting option follow
      "_MC"          ;Middle-Center aligned
      '(90 40)       ;insertion point coordinates
      2.5            ;height of characters
      0.0            ;angle of text entity - accept default
      "Some text")   ;the string that will be added
 
 
当做
页: [1]
查看完整版本: AutoCAD和AutoLISP命令